aboutsummaryrefslogtreecommitdiff
path: root/crates/tor-dirmgr
Commit message (Collapse)AuthorAgeFilesLines
...
* Allow clippy::collapsible_if to triggerGabriela Moldovan2026-02-161-0/+1
| | | | | | | | | `clippy::collapsible_if` started triggering after bumping the MSRV to 1.88. Since this triggers from a lot of places, and since there even are a couple of instances where we explicitly allow `clippy::collapsible_ifs`, I've opened #2342 for deciding what to do about it.
* Bump MSRV from 1.86 to 1.89Gabriela Moldovan2026-02-161-1/+1
| | | | | | | As agreed at our last team meeting. See https://gitlab.torproject.org/tpo/core/arti/#minimum-supported-rust-version
* Bump time to 0.3.47Gabriela Moldovan2026-02-161-1/+1
| | | | | | This enables us to un-ignore RUSTSEC-2026-0009. See #2341 for analysis of impact.
* release: Bump `arti-*` and `tor-*` crates to 0.39.0Wesley Aptekar-Cassels2026-02-021-22/+22
| | | | | | | | | | Done via: ``` for crate in $(./maint/list-crates | rg '^(tor|arti-)'); do cargo set-version -p $crate 0.39.0 done ```
* Merge branch 'main' into 'main'gabi-2502026-02-021-1/+1
|\ | | | | | | | | fix(minver): Update paste dependency to be minver compatible See merge request tpo/core/arti!3610
| * fix(minver): Update paste dependency to be minver compatibleSamuel Cobb2026-01-261-1/+1
| |
* | dirmgr: Make `DirMgr::load_once()` synchronousGabriela Moldovan2026-01-271-1/+1
| |
* | dirmgr: Remove unnecessary Arc::clone (fmt)Gabriela Moldovan2026-01-271-2/+1
| |
* | dirmgr: Remove unnecessary Arc::cloneGabriela Moldovan2026-01-272-4/+4
| | | | | | | | | | Now that `load` is no longer `async`, this triggers a lint about the unnecessary clone.
* | dirmgr: Make various functions synchronousGabriela Moldovan2026-01-272-10/+9
| | | | | | | | To fix `clippy::unused_async`.
* | maint/add_warning: Run script to add new warningGabriela Moldovan2026-01-271-0/+1
|/ | | | This adds the lint to all our crates.
* cargo: Upgrade dependencies potentially breakingClara Engler2026-01-141-1/+1
|
* cargo: Update `arti-*` and `tor-*` to `0.38.0`Clara Engler2026-01-121-22/+22
| | | | | | | | | Done using the following: ```bash for crate in $(./maint/list_crates | rg '^(tor|arti-)'); do cargo set-version -p $crate 0.38.0 done ```
* tor-netdoc: authcert: Make key_ids return owned AuthCertKeyIdsIan Jackson2026-01-062-5/+5
| | | | | AuthCert is about to lose its copy of H(KP_auth_sign_rsa) so it needs to return an owned value.
* tor-netdoc: Store n_authorities in usizeClara Engler2025-12-021-2/+1
| | | | | | | Previously, this value was stored in a u16. However, because this number is usually always derived from some sort of list type, such as `Vec`, it makes more sense to use usize for this, as it avoid unnecessary casting and error checking.
* Bump all the unstable tor- and arti- crates to 0.37.0.Gabriela Moldovan2025-12-021-22/+22
| | | | | | | | | Done using: ``` for crate in $(./maint/list_crates | rg '^(tor|arti-)'); do cargo set-version -p $crate 0.37.0 done
* Bump the versions of the non-{arti-,tor-} cratesGabriela Moldovan2025-12-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The non-{arti-,tor-} crates are: ``` ./maint/list_crates | rg -v '^(tor|arti)' oneshot-fused-workaround slotmap-careful test-temp-dir fslock-guard hashx equix caret fs-mistrust safelog retry-error futures-copy ``` We split them in the following categories: * crates with no changes (no version bumps): None ``` maint/changed_crates -v "arti-v$LAST_VERSION" 2>&1 >/dev/null | grep -i "no change" | grep -v '\(tor\|arti\)-' ``` * crates that only have non-functional changes (bump the patch version, but not the dependend-on version): - oneshot-fused-workaround - slotmap-careful - test-temp-dir - fslock-guard - equix - caret - safelog - retry-error * crates where functional changes were made, but no APIs were added or broken: - hashx - fs-mistrust - futures-copy * crates where APIs were broken (bump minor): None The bumps from this commit were created using this script: ``` PATCH_NF=( oneshot-fused-workaround slotmap-careful test-temp-dir fslock-guard equix caret safelog retry-error ) PATCH=" hashx fs-mistrust futures-copy " ./maint/bump_nodep "${PATCH_NF[@]}" for crate in $PATCH; do cargo set-version --bump patch -p $crate; done ```
* dirmgr: Rewrite .is_some()/.unwrap() using let matchGabriela Moldovan2025-12-011-4/+6
| | | | | | | On nightly, clippy now warns against this and recommends using a `match` instead. See https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap
* opentelemetry: Instrument a bunch of functions.Wesley Aptekar-Cassels2025-11-242-2/+10
| | | | | These are all aimed at figuring out in more detail what's going on in #2079 and related issues.
* Fix name of clippy lint to unchecked_time_subtraction (2)Ian Jackson2025-11-0610-11/+11
| | | | Run maint/add_warning
* Drop two use's that seem no longer to be necessaryIan Jackson2025-11-061-1/+1
|
* all: run cargo fmtSteven Engler2025-11-041-1/+1
|
* all: replace all uses of `futures::task::SpawnExt` with `tor_rtcompat::SpawnExt`Steven Engler2025-11-042-4/+4
|
* Remove one stray allow(deprecated)Neel Chauhan2025-11-041-1/+0
|
* Stop using MockSleepProvider in a few cratesNeel Chauhan2025-11-021-3/+2
| | | | Part of #1885.
* maint: bump minor versions of all published cratesSteven Engler2025-10-291-25/+25
| | | | | | | ```bash readarray -t publish < <(cargo metadata --format-version 1 | jq -r '.packages[] | select((.id | startswith("path+file:///")) and (.rust_version != null) and (.publish == null or .publish == true or .publish != [])) | .name') for package in "${publish[@]}"; do echo "$package:"; cargo set-version --bump minor -p "$package"; done ```
* Bump MSRV from 1.85.1 to 1.86Clara Engler2025-10-211-1/+1
|
* Fix new clippy nightly warning about subtracting Durations.Nick Mathewson2025-10-161-1/+3
|
* tor-linkspec: Change HasAddrs::addrs to return an IteratorIan Jackson2025-10-061-1/+1
| | | | | | | | This will let us model the actual structure of routerstatus entries in netdocs more closely. They don't have the addresses in a single list. When this code was written this would have been much more awkward, but now we have RPITIT.
* Merge branch 'release-1.6.0-remove-semver-md' into 'main'Ian Jackson2025-10-061-1/+0
|\ | | | | | | | | release: Remove old semver.md files. See merge request tpo/core/arti!3323
| * release: Remove old semver.md files.Wesley Aptekar-Cassels2025-10-021-1/+0
| |
* | release: Bump versions.Wesley Aptekar-Cassels2025-10-021-25/+25
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because we've updated our MSRV, we must bump the minor version for every package. This was done as follows: cargo set-version -p arti 1.6.0 cargo set-version -p oneshot-fused-workaround 0.4.0 cargo set-version -p slotmap-careful 0.4.0 cargo set-version -p test-temp-dir 0.5.0 cargo set-version -p fslock-guard 0.4.0 cargo set-version -p hashx 0.5.0 cargo set-version -p equix 0.4.0 cargo set-version -p caret 0.7.0 cargo set-version -p fs-mistrust 0.12.0 cargo set-version -p safelog 0.6.0 cargo set-version -p retry-error 0.8.0 xargs -I P <<END cargo set-version -p P 0.35.0 tor-basic-utils tor-error tor-general-addr tor-geoip tor-rtcompat tor-rtmock tor-async-utils tor-config tor-config-path tor-rpc-connect tor-log-ratelim tor-rpcbase tor-memquota tor-units tor-llcrypto tor-bytes tor-protover tor-checkable tor-cert tor-key-forge tor-hscrypto tor-socksproto tor-linkspec tor-cell tor-proto tor-netdoc tor-consdiff tor-netdir tor-relay-selection tor-persist tor-keymgr tor-chanmgr tor-ptmgr tor-dircommon tor-guardmgr tor-circmgr tor-dirclient tor-dirmgr tor-dirserver tor-hsclient tor-hsservice tor-hsrproxy tor-relay-crypto arti-client arti-relay arti-rpcserver arti-ureq arti-rpc-client-core END
* Merge branch 'release-1.6.0-fixup-features' into 'main'wesleyac2025-10-011-0/+1
|\ | | | | | | | | release: Run fixup-features. See merge request tpo/core/arti!3303
| * release: Run fixup-features.Wesley Aptekar-Cassels2025-10-011-0/+1
| |
* | release: Update semver.md files.Wesley Aptekar-Cassels2025-10-011-0/+1
|/
* Remove "doc_auto_cfg" incantation from all crates.Nick Mathewson2025-09-291-1/+1
| | | | This feature has been removed from nightly, in favor of doc_cfg.
* tor-dircommon: Implement proposal 330Clara Engler2025-09-162-24/+20
| | | | | | | This commit implements proposal 330 in the context of `tor-dircommon`, by replacing the single `Authority` structure used in a list context by a single structure called `AuthorityContacts` which contains all v3idents, upload, download, and vote endpoints in one central place.
* Move `FallbackDir` into `tor-dircommon`Clara Engler2025-09-112-2/+2
|
* Merge branch 'dircommon-cfg' into 'main'Clara Engler2025-09-115-440/+31
|\ | | | | | | | | Move `tor-dirmgr` configuration primitives to `tor-dircommon` See merge request tpo/core/arti!3238
| * tor-dircommon: Use amplify and getters for configClara Engler2025-09-094-17/+18
| |
| * tor-dircommon: Make config non_exhaustiveClara Engler2025-09-091-4/+1
| |
| * Move `DirTolerance` into `tor-dircommon`Clara Engler2025-09-092-67/+4
| | | | | | | | | | This commit moves the `DirTolerance` structure from `tor-dirmgr` into `tor-dircommon`.
| * Move `DownloadSchedule` into `tor-dircommon`Clara Engler2025-09-085-281/+5
| | | | | | | | | | This commit moves the `DowenloadSchedule` related types from `tor-dirmgr` into `tor-dircommon`.
| * Move `NetworkStatus` to `tor-dircommon`Clara Engler2025-09-083-77/+9
| | | | | | | | | | | | This commit moves `NetworkStatus` from `tor-dirmgr::config` to `tor-dircommon::config` in order to start the work on a common place for configuration options shared by both directory implementations.
* | Bump MSRV from 1.85 to 1.85.1Nick Mathewson2025-09-091-1/+1
|/ | | | Closes #2107
* tor-dircommon: Update to 0.34.0Clara Engler2025-09-021-1/+1
|
* tor-dircommon: Initial commitClara Engler2025-09-025-143/+5
| | | | | | | | | | | | | | This commit initializes the `tor-dircommon` crate: A crate serving the purpose to form an umbrella for the lowest common denominator primitives found across crates implementing (parts of) the directory specification. For now, the only such primitive is the found within the `authority` module, which has been refactored from `tor-dirmgr` into this crate, alongside additional getter functions due to the lack of `pub(crate)` in this context. In the future, we may move further primitives away from `tor-dirmgr` into `tor-dircommon`.
* Bump the minor version of every published crate except for `arti`.Nick Mathewson2025-08-281-24/+24
| | | | | | | | Per policy, we bump the minor version of every tor-*, arti-* crate on each release. We have updated our MSRV, so we're treating this as a breaking change for our non-(arti/tor)-prefixed crates too.
* misc: cleanup now that `_report!` macros support fieldsSteven Engler2025-08-181-2/+1
|
* Switch Cargo.toml files to edition 2024.Nick Mathewson2025-08-0714-77/+99
| | | | | | | | | | | | | | First, run ``` git grep -l "^edition =" | xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;' ``` Second, manually verify that all Cargo.toml files have changed, and nothing else has changed. Third, run cargo fmt again.