summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | Remove explicit allows for missing_panics_docs.Nick Mathewson2023-07-066-14/+2
| | | | | | | | | | | | | | | | | | | | These are no longer needed.
| * | | | Run add_warning to remove `missing_panics_doc` deny.Nick Mathewson2023-07-0645-45/+0
| |/ / / | | | | | | | | | | | | Closes #950.
* | | | Merge branch 'clippy-nightly-20230703' into 'main'Nick Mathewson2023-07-076-15/+15
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | Fix various warnings from clippy nightly Closes #943 See merge request tpo/core/arti!1369
| * | | Avoid matches!(x, None), matches!(x, Ok(_))Nick Mathewson2023-07-063-5/+5
| | | | | | | | | | | | | | | | This appeases clippy-nightly.
| * | | tor-rtcompat: Simplify trivial all() expressions.Nick Mathewson2023-07-062-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Clippy nightly doesn't like `#[cfg(all(...))]` with only a single expression inside the `all(...)`. This requires an adjustment in check_doc_features.
| * | | tor-config: Use next_back() instead of rev().next()Nick Mathewson2023-07-031-1/+1
| |/ / | | | | | | | | | This is a new warning^Wsuggestion from clippy nightly.
* | | tor-rtmock: statically assert that the macro makes a Runtime implIan Jackson2023-07-061-0/+6
| | |
* | | tor-rtmock: Use the same specified field for BlockOn and SpawnIan Jackson2023-07-064-10/+8
| | | | | | | | | | | | These are always the same and probably always will be.
* | | Merge branch 'task4' into 'main'Ian Jackson2023-07-0613-453/+1481
|\ \ \ | | | | | | | | | | | | | | | | Introduce a MockExecutor for fully-isolated test cases See merge request tpo/core/arti!1375
| * | | tor-rtmock: Add semver.mdIan Jackson2023-07-061-0/+3
| | | |
| * | | tor-rtmock: task: Fix a typoIan Jackson2023-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1375#note_2919976
| * | | tor-rtmock: task: clarify progress_until_stalled a littleIan Jackson2023-07-062-1/+5
| | | |
| * | | tor-rtmock: Runtime: Expand on "allowed" documentationIan Jackson2023-07-061-3/+33
| | | |
| * | | tor-rtmock: task: Remove a () assignmentIan Jackson2023-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | Discussion: https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1375#note_2919928
| * | | tor-rtmock: task: Abolish TaskFutureInfo alias (fmt)Ian Jackson2023-07-061-1/+3
| | | |
| * | | tor-rtmock: task: Abolish TaskFutureInfo aliasIan Jackson2023-07-061-7/+6
| | | | | | | | | | | | | | | | | | | | Requested by: https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1375#note_2919926
| * | | tor-rtmock: Net: Make UDP sockets un-constructableIan Jackson2023-07-061-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will hopefully mean anyone trying to use this will notice that it's not implemented. Prompted by: https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1375#note_2919925
| * | | tor-rtmock: Add a cross-reference from MockSleepRuntime::wait_forIan Jackson2023-07-061-0/+4
| | | |
| * | | tor-dirmgr: bridge descriptor tests: Add a missing #[traced_test]Ian Jackson2023-07-061-0/+1
| | | | | | | | | | | | | | | | This seems to have been overlooked.
| * | | tor-dirmgr: bridge descriptor tests: Use MockRuntime (drop Tokio dep)Ian Jackson2023-07-061-1/+0
| | | | | | | | | | | | | | | | This isn't used any more.
| * | | tor-dirmgr: bridge descriptor tests: Use MockRuntime (fmt)Ian Jackson2023-07-061-270/+271
| | | | | | | | | | | | | | | | Run rustfmt.
| * | | tor-dirmgr: bridge descriptor tests: Use MockRuntimeIan Jackson2023-07-061-35/+25
| | | | | | | | | | | | | | | | This abolishes a bodge sleep. It should make the tests deterministic.
| * | | tor-dirmgr: bridge descriptor tests: Fix a v. low prob. raceIan Jackson2023-07-061-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drain a number of events, not just one. The stream might yield many events, as explained in this new comment. This fails every time with MockExecutor::try_test_with_various(). I think it might fail with the tokio exeuctor too, but evidently not with high probability or we would have noticed.
| * | | tor-hsclient: Abolish ad-hoc real-world-time sleepsIan Jackson2023-07-061-12/+4
| | | | | | | | | | | | | | | | | | | | | | | | Now we can reliably wait precisely for the tasks to be all waiting. This test case no longer involves any real executor.
| * | | tor-rtmock: MockRuntime: provide test_with_variousIan Jackson2023-07-062-0/+44
| | | | | | | | | | | | | | | | In both fallible and infallible variants, for convenience.
| * | | tor-rtmock: MockExecutor: Configurable scheduling policyIan Jackson2023-07-063-5/+75
| | | |
| * | | tor-rtmock: Provide MockRuntimeIan Jackson2023-07-063-0/+132
| | | |
| * | | tor-rtmock: Unit tests for MockExecutorIan Jackson2023-07-062-0/+107
| | | |
| * | | tor-rtmock: Provide MockExecutorIan Jackson2023-07-063-0/+585
| | | |
| * | | tor-rtmock: impl Default for MockNetProviderIan Jackson2023-07-061-0/+6
| | | |
| * | | tor-rtmock: impl Default for MockNetProvider (prep)Ian Jackson2023-07-061-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | We want MockNetProvider to be Default. In this commit: impl Default for MockNetwork and use it in new().
| * | | tor-rtmock: impl Default for MockSleepProviderIan Jackson2023-07-061-0/+7
| | | | | | | | | | | | | | | | | | | | Pick an arbitrary start time roughly now. This will do for many tests.
| * | | tor-rtmock: net: "Provide" a UDP "implementation" which doesn't workIan Jackson2023-07-064-5/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nothing in our tree actually *uses* the UDP in tests. We want a mock UDP provider that isn't part of a real runtime, so that we can make a totally-mock runtime for properly controlled testing. It seems best to make this part of MockNetProvider rather than a separate type.
| * | | tor-rtmock: Introduce impl_runtime_prelude (fmt)Ian Jackson2023-07-061-1/+3
| | | |
| * | | tor-rtmock: Introduce impl_runtime_preludeIan Jackson2023-07-063-17/+26
| | | | | | | | | | | | | | | | | | | | This deduplicates some imports, which would otherwise be about to become triplicated.
| * | | tor-rtmock: Introduce impl_runtime! macroIan Jackson2023-07-064-118/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This deduplicates some trait delegation. We want this now because we're about to introduce a third mock runtime, so this would become triplication otherwise.
* | | | Merge branch 'log_precision' into 'main'Nick Mathewson2023-07-065-4/+381
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | arti: Add a `logging.time_granularity` option with 1s default. Closes #551 See merge request tpo/core/arti!1376
| * | | arti: comments about catch_unwindNick Mathewson2023-07-061-0/+9
| | | |
| * | | time_granularity: Make sure formatter can't panicNick Mathewson2023-07-061-17/+49
| | | | | | | | | | | | | | | | | | | | | | | | I was unable to assure myself that tracing_subscriber could withstand a panicking Timer, so instead I'm trying to make sure our own LogTimer can't panic.
| * | | arti: Add a `logging.time_granularity` option with 1s default.Nick Mathewson2023-07-065-5/+342
| | |/ | |/| | | | | | | | | | | | | | | | This lets us provide less information in our logs: in particular, it lets us avoid logging with microsecond precision. Closes #551.
* | | Merge branch 'tracing-panic' into 'main'Nick Mathewson2023-07-063-2/+41
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | arti: Install a panic hook that sends messages to `tracing` Closes #921 See merge request tpo/core/arti!1377
| * | | arti: Note possibility for future use of other tracing panic providerNick Mathewson2023-07-061-0/+5
| | | |
| * | | arti: On panic, avoid allocation even more.Nick Mathewson2023-07-061-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original version of our panic handler would allocate a string for the panic `Location`. But if we're panicking we'd like to keep allocations to a minimum: so instead format the `Location` conditionally. This also drops a useless `std::borrow::Cow`. (The possibility of a "Don't have a `Cow`" commit message was considered and rejected.)
| * | | Add TODO comments about possibly migrating away from the backtrace crate.Nick Mathewson2023-07-052-1/+4
| | | |
| * | | arti: Install a panic hook that sends messages to `tracing`Nick Mathewson2023-07-052-1/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (Also leaves installed the default handler that sends messages to stderr.) Closes #921.
* | | | keymgr: Explain why the TODO regarding EncodableKey can't be addressed.Gabriela Moldovan2023-07-051-1/+12
|/ / /
* | | Merge branch 'unpublishing' into 'main'Ian Jackson2023-07-053-0/+10
|\ \ \ | |/ / |/| | | | | | | | | | | | | | Mark several crates with `publish=false`. Closes #944 See merge request tpo/core/arti!1371
| * | Mark arti-bench with "publish = false"Nick Mathewson2023-07-031-0/+4
| | | | | | | | | | | | | | | This crate is only useful for development; earlier we published it, but I believe that was in error.
| * | Mark vestigial crates as "publish=false"Nick Mathewson2023-07-032-0/+6
| |/ | | | | | | | | | | | | These crates were started, but they aren't integrated into Arti (yet?). As such it doesn't make sense to keep publishing updated versions of them every time we tweak our standard lints.
* | Additional documentation around bridges/PT configurationNick Mathewson2023-07-034-7/+43
| | | | | | | | | | | | | | This tries to flesh out some of the details for users who may be new to bridges and PTs. Closes #706.