summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | tor-dirserver: Some clippy fixesClara Engler2025-10-154-3/+19
| | | | |
* | | | | tor-dirserver: Remove unsafe unreachableClara Engler2025-10-151-3/+3
| | | | |
* | | | | tor-dirserver: Remove due TODOClara Engler2025-10-151-4/+0
| | | | |
* | | | | tor-dirserver: Improve the error situationClara Engler2025-10-153-140/+140
| | | | |
* | | | | tor-dirserver: Create database moduleClara Engler2025-10-153-88/+98
| | | | | | | | | | | | | | | | | | | | | | | | | This commit renames the schema module to the database module in order to perform better error handling while redesigning the API.
* | | | | tor-dirserver: Remove unused importsClara Engler2025-10-152-9/+0
| | | | |
* | | | | tor-dirserver: Store endpoint paths in `&str`Clara Engler2025-10-151-11/+34
| | | | |
* | | | | tor-dirserver: Get rid of the poor buildersClara Engler2025-10-153-138/+20
| | | | |
* | | | | tor-dirserver: Move StoreCache into own moduleClara Engler2025-10-152-151/+178
|/ / / /
* | | | Merge branch 'rm-allow' into 'main'Ian Jackson2025-10-141-1/+0
|\ \ \ \ | |/ / / |/| | | | | | | | | | | proto: Remove an allow that is no longer needed See merge request tpo/core/arti!3356
| * | | proto: Remove an allow that is no longer neededGabriela Moldovan2025-10-141-1/+0
| | | |
* | | | Merge branch 'celltypes' into 'main'gabi-2502025-10-1410-11/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | proto: Move celltypes out of client See merge request tpo/core/arti!3355
| * | | | proto: Move celltypes out of clientGabriela Moldovan2025-10-1310-11/+13
| |/ / / | | | | | | | | | | | | | | | | Some of these are relay-specific, so it makes more sense to pull this into a top-level module.
* | | | Merge branch 'unique-id' into 'main'David Goulet2025-10-142-19/+30
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | proto: Stop using tunnel IDs in relay reactor. See merge request tpo/core/arti!3353
| * | | | proto: Stop using tunnel IDs in relay reactor.Gabriela Moldovan2025-10-132-19/+30
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using a tunnel ID here doesn't make much sense right now, because we don't yet support exit-side conflux (and when we will, it's unclear whether the concept of "tunnel" will be applicable, especially if we refactor things such that multi-path circuits are handled without a ConfluxSet-like type like we have for clients). This change forces us to stop using the client-specific `unwrap_or_shutdown` (because this macro expects `self` to have a tunnel ID), but IMO that is okay.
* / / / proto: Use a small vec for the hop list.Gabriela Moldovan2025-10-131-1/+7
|/ / / | | | | | | | | | | | | We can optimize for the general (N <= 3) case, and avoid a heap allocation.
* | | tor-netdoc: Don't repr(transparent)Ian Jackson2025-10-091-2/+0
| | | | | | | | | | | | | | | We don't really need this and it raises questions, for example https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3337#note_3271871
* | | tor-netdoc: Replace NdaSystemTimeDeprecatedSyntax with Ios8601TimeSpIan Jackson2025-10-091-4/+5
| | | | | | | | | | | | | | | Previously we needed this separate type because Ios8601TimeSp is FromStr which prevented a correct ItemArgumentParseable impl.
* | | tor-netdoc: Expose the field in time wrappersIan Jackson2025-10-091-2/+4
| | |
* | | tor-netdoc: impl many traits for time wrappersIan Jackson2025-10-091-2/+4
| | |
* | | tor-netdoc: Expose Iso8601TimeNoSp and Iso8601TimeSp utility wrappersIan Jackson2025-10-093-3/+8
| | | | | | | | | | | | We're going to want to change some now-public fields to use these types.
* | | tor-netdoc: parse2: Fix some slips in doc commentsIan Jackson2025-10-091-3/+3
| | |
* | | tor-netdoc: parse2: Work around MSRV unhelpful lifetimeIan Jackson2025-10-091-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1.85.1 rejects this, because it doesn't extend the lifetime of the `format_args!`. 1.90 is fine with it. I want to keep `format!` not `String::new()` so that it's easy to change back. That means a clippy allow. Getting that to apply to the code inside the derive is tricky, so I've enabled it for the whole module. (IMO this clippy lint is pretty annoying anyway.)
* | | tor-netdoc: parse2: Actually expose new errors in crate toplevelIan Jackson2025-10-091-1/+1
| | |
* | | tor-netdoc: parse2 tests: Test ParseError Display and Error implIan Jackson2025-10-091-6/+29
| | |
* | | tor-netdoc: parse2 tests: Have t_err_* return the errorIan Jackson2025-10-091-5/+4
| | |
* | | tor-netdoc: parse2 tests: Have t_err_* return the error (pre-fmt)Ian Jackson2025-10-091-1/+6
| | |
* | | tor-netdoc: parse2 tests: Check columnsIan Jackson2025-10-091-7/+15
| | |
* | | tor-netdoc: parse2 tests: Check columns (pre-fmt)Ian Jackson2025-10-091-1/+2
| | |
* | | tor-netdoc: parse2: Add column field to PaarsError and print itIan Jackson2025-10-093-2/+14
| | |
* | | tor-netdoc: parse2: Add .column() accessor to ErrorProblemIan Jackson2025-10-092-1/+29
| | | | | | | | | | | | We'll want to general way to find the error problem column.
* | | tor-netdoc: parse2: Add column field as far as ErrorProblemIan Jackson2025-10-093-7/+48
| | | | | | | | | | | | | | | | | | | | | Provide facilities in ArgumnetStream for determining the column, and add the field to all the error types up to and including ErrorProblem. The value still needs to be propagated to ParseError, and printed there.
* | | tor-netdoc: parse2: Replace EP with AE in derive fields rest pathIan Jackson2025-10-091-1/+2
| | |
* | | tor-netdoc: parse2: Replace EP with AE in NdiDirectorySignature (fmt)Ian Jackson2025-10-091-7/+10
| | |
* | | tor-netdoc: parse2: Replace EP with AE in NdiDirectorySignatureIan Jackson2025-10-091-4/+4
| | |
* | | tor-netdoc: Abolish now-obsolete field argument to from_args (fmt)Ian Jackson2025-10-094-29/+7
| | |
* | | tor-netdoc: Abolish now-obsolete field argument to from_argsIan Jackson2025-10-098-20/+12
| | |
* | | tor-netdoc: Introduce ArgumentError (fmt)Ian Jackson2025-10-091-3/+1
| | |
* | | tor-netdoc: Introduce ArgumentErrorIan Jackson2025-10-0910-33/+86
| | | | | | | | | | | | | | | This will allow us to (1) move field name handling out of the argument parser method, and also (2) add columns more easily.
* | | tor-netdoc: Have .reject_extra_args return a bespoke errorIan Jackson2025-10-094-4/+20
| | | | | | | | | | | | | | | | | | | | | We're about to have some functions return ArgumentError and some ErrorProblem. We don't want to provide a conversion directly between these types, so instead introduce a new type that will be convertible to either.
* | | tor-netdoc: UnparsedItem: Provide .args() accessorIan Jackson2025-10-092-0/+8
| | |
* | | tor-netdoc: parse2: Record previous position in ArgumentStream (fmt)Ian Jackson2025-10-091-1/+5
| | |
* | | tor-netdoc: parse2: Record previous position in ArgumentStreamIan Jackson2025-10-091-1/+8
| | |
* | | tor-netdoc: parse2: Rename methods on ArgumentStreamIan Jackson2025-10-093-11/+16
| | |
* | | tor-netdoc: parse2: Add whole_line_len to ArgumentStreamIan Jackson2025-10-092-4/+17
| | |
* | | Merge branch 'comparison-chain' into 'main'gabi-2502025-10-091-0/+6
|\ \ \ | | | | | | | | | | | | | | | | tor-proto: allow comparison chain See merge request tpo/core/arti!3342
| * | | tor-proto: bring back comparison chain w/ allowhashcatHitman2025-10-081-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was decided that the comparison chain was actually preferrable for readability. So instead, we're just `allow`ing it until it stops being a problem. Signed-off-by: hashcatHitman <[email protected]>
| * | | tor-proto: replace comparison chain with matchhashcatHitman2025-10-081-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was a comparison chain in `tor_proto::util::poll_all::test::ResolveAfter::poll` which was causing a clippy warning. The lint in question, `clippy::comparison_chain`, was a `clippy::style` lint in 1.85.1 and got moved to `clippy::pedantic` in 1.87.0 (see [rust-clippy!14219]). Since some of us (like me) develop on MSRV, I'm fixing this lint now. Gabi didn't have any strong opinions on whether I did it like this or with an `allow` attribute, so I decided this was better since it means we don't have to come back later just to remove the `allow`. It should be noted that using a match like this can sometimes be a performance regression (see [rust-clippy#5354] and [rust-clippy!6390]). I would expect in this case the effect will be very little, if any, but if tests in `tor_proto::util::poll_all::test` start taking much longer and having an impact on CI or something, this could be why. [rust-clippy!14219]: https://github.com/rust-lang/rust-clippy/pull/14219 [rust-clippy#5354]: https://github.com/rust-lang/rust-clippy/issues/5354 [rust-clippy!6390]: https://github.com/rust-lang/rust-clippy/pull/6390 Signed-off-by: hashcatHitman <[email protected]>
* | | | Merge branch 'normal-ip-arguments' into 'main'Ian Jackson2025-10-091-0/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-netdoc: impl NormalItemArgument for Ipv4Addr and SocketAddr See merge request tpo/core/arti!3343
| * | | | tor-netdoc: impl NormalItemArgument for Ipv4Addr and SocketAddrIan Jackson2025-10-081-0/+5
| |/ / / | | | | | | | | | | | | AFAICT we don't have variant parsings for these things.