summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | tor-consdiff: Replaced an old MSRV TODO with a link to why it shouldn't be donehashcatHitman2025-04-231-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | - After spending quite a while trying to figure out why the tests kept failing after making the change, I eventually stumbled upon the netdoc syntax specification, which helpfully informs me that newlines MUST be ignored and discarded. Switching to using [`str::split_inclusive`] would either require extra lines to workaround and recreate the current expected behavior or changing the spec and correcting the tests to align with the new expected behavior.
| * | tor-consdiff: standardized MSRV TODOhashcatHitman2025-04-161-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped. For this one in particular, we actually do already meet the MSRV specified, but I want to check on the implementation details to see if this is still desired, since the TODO is 4 years old.
| * | tor-hsservice: standardized MSRV TODOhashcatHitman2025-04-161-1/+1
| | | | | | | | | | | | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped.
| * | tor-memquota: standardized MSRV TODOhashcatHitman2025-04-161-1/+2
| | | | | | | | | | | | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped.
| * | tor-rpc-connect: standardized MSRV TODOhashcatHitman2025-04-161-1/+1
| | | | | | | | | | | | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped.
| * | arti-relay: standardized MSRV TODOhashcatHitman2025-04-161-1/+1
| | | | | | | | | | | | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped.
| * | tor-basic-utils: standardized MSRV TODOshashcatHitman2025-04-162-4/+4
| | | | | | | | | | | | | | | - Part of a series of commits aimed at replacing all MSRV-related TODOs with a standardized format, which should be easier to find when the MSRV is bumped.
| * | tor-netdir: remove lint allow as per TODOhashcatHitman2025-04-161-3/+0
| | | | | | | | | | | | | | | - https://github.com/rust-lang/rust-clippy/issues/11764 was fixed upstream, so this is no longer needed.
* | | Merge branch 'remove-note' into 'main'Ian Jackson2025-04-241-1/+0
|\ \ \ | |_|/ |/| | | | | | | | arti-client: Remove incorrect note about `StateDirectory` usage See merge request tpo/core/arti!2952
| * | arti-client: remove incorrect note about `StateDirectory` usageSteven Engler2025-04-231-1/+0
|/ /
* | Merge branch 'chutney-shadow-flakiness' into 'main'Jim Newsome2025-04-232-5/+35
|\ \ | | | | | | | | | | | | integration-e2e-shadow flakiness debugging and workaround See merge request tpo/core/arti!2950
| * | integration-e2e-shadow: move simulation seed to yamlJim Newsome2025-04-231-3/+3
| | | | | | | | | | | | | | | | | | Since this significantly affects the behavior of the simulation, it's probably worth having it in the yaml. (It can of course still be overridden from the command-line).
| * | integration-e2e-shadow: move unblocked-syscall-latency to yamlJim Newsome2025-04-231-1/+1
| | | | | | | | | | | | | | | | | | Since this significantly affects the behavior of the simulation, it's useful to have it in the yaml for reference or if the simulation is manually rerun from the yaml.
| * | arti-bench: work around shadow writer shutdown bugJim Newsome2025-04-231-1/+11
| | |
| * | integration-e2e-shadow: use a larger max_unapplied_cpu_latencyJim Newsome2025-04-231-0/+20
|/ / | | | | | | | | | | | | | | This should make the simulation results generally more stable with respect to small perturbations, such as adding logging. It also causes a previous "heisenbug" failure in this test to reliably reproduce in every run.
* | Merge branch 'proto_enforce' into 'main'Nick Mathewson2025-04-2239-48/+1666
|\ \ | | | | | | | | | | | | | | | | | | Enforce recommended and required protocol versions in arti-client Closes #1849 and #1923 See merge request tpo/core/arti!2929
| * | Rename recommended_protocols to protocol_statuses.Nick Mathewson2025-04-166-17/+17
| | | | | | | | | | | | | | | This name reflects its purpose better than the original one, since it includes required protocols as well as recommended ones.
| * | netdoc: Require serde feature from tor-protover.Nick Mathewson2025-04-161-1/+1
| | |
| * | arti-client: Document spec of checking date on cached protosNick Mathewson2025-04-161-3/+6
| | | | | | | | | | | | | | | Also move the comment outside the block it documents, to prevent a too-long line.
| * | arti-client: On shutdown for missing proto, print to stderrNick Mathewson2025-04-161-1/+17
| | | | | | | | | | | | Also wait a little so logs can flush.
| * | arti-client README: Document undesirable exit(1) behavior.Nick Mathewson2025-04-161-1/+12
| | |
| * | netdoc: improve documentation for check_protocolsNick Mathewson2025-04-161-1/+7
| | |
| * | protover, *: Add documentation about what "supported" means.Nick Mathewson2025-04-167-6/+32
| | |
| * | protover: Enforce that every unrecognized protocol entry is nonzero.Nick Mathewson2025-04-161-1/+5
| | | | | | | | | | | | This rule makes PartialEq more sensible.
| * | Fix a pair of documentation links.Nick Mathewson2025-04-161-2/+2
| | |
| * | dirmgr: Always apply changes before advancing consensus.Nick Mathewson2025-04-161-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the directory code, we have functionality to advance the consensus download state whenever possible, even if there is more we could download in the current state. That's fine, but when we're in this position, we need to be sure that we're taking any action based on the current state (such as installing notably parameters or, notably, protocol recommendations) before we move on.
| * | arti-client: Small test for evaluating protocol status.Nick Mathewson2025-04-163-0/+73
| | |
| * | arti,arti-client: Add an option to override required protocolsNick Mathewson2025-04-166-6/+92
| | | | | | | | | | | | | | | (This isn't a boolean, because we really don't want people ignoring all possible required protocols.)
| * | arti-client: Keep a somewhat accurate notion of our release date.Nick Mathewson2025-04-168-4/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | This doesn't need to be perfect, but we need to use it to see if a consensus is new enough that we should obey its recommendations. This commit also adds a script to update or check our release date, and calls this script from our cargo-publish script.
| * | Add warnings about removing supported protocols.Nick Mathewson2025-04-167-0/+48
| | |
| * | arti-client: Implement the basics of protocol enforcement.Nick Mathewson2025-04-165-2/+266
| | | | | | | | | | | | This is the major part of #1849.
| * | Implement PartialEq for ProtoStatuses unconditionally.Nick Mathewson2025-04-161-4/+2
| | |
| * | netdir: Add a recommended_protocols() to NetDirProviderNick Mathewson2025-04-164-0/+25
| | |
| * | dirmgr, netdir: Store protocol requirments as soon as they are validated.Nick Mathewson2025-04-165-5/+60
| | |
| * | dirmgr: Backend support for cacheing protocol status.Nick Mathewson2025-04-165-3/+140
| | | | | | | | | | | | | | | | | | | | | We want to store this separately from the consensus, because we want to access it very early in our load-from-cache process, without checking the consensus that contains it for timeliness.
| * | protover,netdoc: Implement serde for Protocols etc.Nick Mathewson2025-04-165-4/+47
| | |
| * | netdoc: Put all ProtoStatuses into a single Arc<>d objectNick Mathewson2025-04-162-19/+55
| | | | | | | | | | | | | | | We'll want this so that we can expose them before we expose the rest of the consensus (which we need to do for spec conformance).
| * | netdoc: functionality for detecting missing subprotos.Nick Mathewson2025-04-162-2/+100
| | | | | | | | | | | | Also, add a new ErrorKind for this sort of error.
| * | New functions to report supported subprotocolsNick Mathewson2025-04-1612-0/+276
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Part of #1849. Note that these functions are distributed across crates, so that if (in the future) we stop doing API breaks with every release, we will get the right outputs. Note also that these functions build the list of protocols out of specific symbolic features, rather than numbers: this makes it easier to avoid errors about "which feature was Relay=4 again", and easier to avoid accidentally referring to a protocol that doesn't exist, like "Consensus" (should be "Cons") or "HsDir" (case is wrong).
| * | Fix another miscapitalized "MicroDesc"Nick Mathewson2025-04-161-1/+1
| | |
| * | protover: Correct capitalization of Micro[Dd]escNick Mathewson2025-04-163-10/+12
| | | | | | | | | | | | Closes #1923
| * | protover: Add an implementation for FromIteratorNick Mathewson2025-04-161-0/+37
| | |
| * | protover: document and enforce more invariantsNick Mathewson2025-04-161-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | We have places where, if we were to create certain ProtoKinds or NamedProtos with invalid values, we could cause a panic. This isn't remotely triggerable, or even triggerable from outside the protover crate, but it's best to avoid the possibility of future mistakes.
| * | protover: add names for members of the Link protocol group.Nick Mathewson2025-04-161-0/+27
| | |
| * | protover: New function to intersect Protocols sets.Nick Mathewson2025-04-161-0/+53
| | | | | | | | | | | | | | | This will be helpful in building a list of protocols from several crates.
| * | protover: New function to combine (union) Protocols sets.Nick Mathewson2025-04-161-1/+57
| | | | | | | | | | | | | | | This will be helpful in building a list of protocols from several crates.
| * | protover: New function to subtract to Protocols sets.Nick Mathewson2025-04-161-0/+54
| |/ | | | | | | | | This will be helpful in checking whether a list of protocols has any unsupported members.
* | Merge branch 'once-cell-once-lock' into 'main'Nick Mathewson2025-04-229-20/+27
|\ \ | | | | | | | | | | | | various crates: Initial migration from [`once_cell::sync::OnceCell`] to [`std::sync::OnceLock`] See merge request tpo/core/arti!2948
| * | tor-netdoc: Joined OnceLock import with other std::sync importshashcatHitman2025-04-171-2/+1
| | | | | | | | | | | | Whoops! Missed that.
| * | tor-circmgr: Added TODO about replacing OnceCellhashcatHitman2025-04-171-0/+8
| | | | | | | | | | | | | | | - [`once_cell::sync::OnceCell`] should be replaced by [`std::sync::OnceLock`] once the blocking methods are stabilized and within our MSRV.