summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | rpc-draft: clarify how we should handle error changes.Nick Mathewson2024-10-091-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is based on a suggestion from @diziet, but edited to say that: - we will take this approach when possible, and that we're not making a categorical promise. - this approach only applies to stable fields.
| * | | | rpc spec: Revise design for `error.data` fieldNick Mathewson2024-10-091-24/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IIUC: Previously, `error.data` was meant to be the serialized error object from Arti. As such, it was specified to be deliberately unstable, and likely to change. This didn't seem like such great idea, especially as we started to come up with structured and stable data that we _did_ want to put in `error.data`. With this commit I'm taking a new approach to `error.data`. Specifically: * `error.data`, if present, is always an object. * Unlike before, it can have multiple keys. * The keys of `error.data` are always namespaced. * There is a requirement that documentation exist for every key in an`error.data` document, including the type, semantics, and stability of its values. There is also new "anticipated use of error.data" section to clarify our plans: * We plan to use error.data deliberately when it actually serves a purpose. * We don't plan to have an on-by-default serialization or Debug of every Arti error. (If we wanted an optional one, there is a short sketch of what it might look like.)
| * | | | RPC spec: move the data field back into ErrorNick Mathewson2024-10-091-30/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is *not* how we actually want the `data` field to behave! But moving it as a separate commit will make it easier to see what changes we do make.
* | | | | Merge branch 'fix-clippy-redux' into 'main'Nick Mathewson2024-10-091-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-config: Fix indentation in doc comment. See merge request tpo/core/arti!2520
| * | | | | tor-config: Fix indentation in doc comment.Gabriela Moldovan2024-10-091-1/+1
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | It looks like my previous attempt from !2516 didn't fix it. This adds an extra space to fix the `doc_lazy_continuation` lint.
* | | | | Merge branch 'mq-doc' into 'main'Ian Jackson2024-10-095-29/+108
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | memquota architecture documentation Closes #1660 See merge request tpo/core/arti!2509
| * | | memquota: Expand on ChannelAccountIan Jackson2024-10-091-0/+1
| | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2509#note_3089914
| * | | memquota: Add docs and TODOs re inbound channel->circuit dataIan Jackson2024-10-092-0/+3
| | | | | | | | | | | | | | | | | | | | See https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2509#note_3089913
| * | | emquota: Clarify circuit data queueIan Jackson2024-10-091-1/+1
| | | |
| * | | memquota: Further docs tweaksIan Jackson2024-10-092-2/+5
| | | |
| * | | mq docs: Clarity that chanmgr and circmgr share the ToplevelAccountIan Jackson2024-10-071-1/+3
| | | |
| * | | mq docs: Add some formulaic cross-references to memquota newtypesIan Jackson2024-10-071-0/+12
| | | |
| * | | mq docs: Rewrite and expand overview/architecture doc in tor-protoIan Jackson2024-10-071-16/+66
| | | |
| * | | mq docs: Add some cross-references from tor-memquota to tor-protoIan Jackson2024-10-072-0/+8
| | | | | | | | | | | | | | | | These can't be rustdoc links because they point up the crate hierarchy.
| * | | mq docs: Add a linkIan Jackson2024-10-071-1/+1
| | | |
| * | | mq docs: Move arti queues text to tor_proto::memquotaIan Jackson2024-10-072-24/+24
| | | |
| * | | mq docs: Uncomment docs about mq_queue, and remove the TODOIan Jackson2024-10-071-4/+4
| | | |
* | | | Merge branch 'miri-1' into 'main'Ian Jackson2024-10-0918-28/+90
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Add some more miri tests See merge request tpo/core/arti!2502
| * | | | tor-rtmock: Add some commentary about SleepLocationIan Jackson2024-10-081-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2502#note_3090557
| * | | | tor-rtmock: Simplify two cfgIan Jackson2024-10-082-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Discussion here https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2502#note_3090554 https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2502#note_3090556
| * | | | CI: run miri on tor-persist tooIan Jackson2024-10-081-1/+1
| | | | |
| * | | | tor-persist: miri: disable tests that involve fs accessIan Jackson2024-10-084-4/+10
| | | | |
| * | | | tor-basic-utils: Change a function to not be unsafeIan Jackson2024-10-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This is not a memory safety requirement. We don't need `unsafe` here, so we shoudln't have it.
| * | | | CI: run miri on tor-rtmock tooIan Jackson2024-10-081-1/+1
| | | | |
| * | | | tor-rtmock: Fix a memory leakIan Jackson2024-10-081-6/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the waker to have a weak reference to the executor. Detected by miri.
| * | | | tor-rtmock: miri: disable tests that use wallclock timeIan Jackson2024-10-086-3/+15
| | | | |
| * | | | tor-rtmock: Provide a fake SleepProvider for miriIan Jackson2024-10-081-0/+16
| | | | |
| * | | | tor-rtmock: Disable dead code warnings when not in a full buildIan Jackson2024-10-081-0/+3
| | | | |
| * | | | CI: run miri on tor-memquota tooIan Jackson2024-10-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | There's no unsafe in this crate, but it does have some exciting drop bomb stuff.
| * | | | tor-memquota: miri: disable tests that use coarsetimeIan Jackson2024-10-083-3/+9
| | | | |
| * | | | tor-error: Disable backtraces under miri, even if cargo feature enabledIan Jackson2024-10-081-2/+2
| | | | |
| * | | | miri: Update the nightly versionIan Jackson2024-10-081-6/+6
| | | | |
| * | | | miri: Fix update runesIan Jackson2024-10-081-2/+2
| | | | |
* | | | | Merge branch 'fix-clippy' into 'main'gabi-2502024-10-091-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-keymgr: Fix indentation in doc comment. See merge request tpo/core/arti!2516
| * | | | | tor-keymgr: Fix indentation in doc comment.Gabriela Moldovan2024-10-091-1/+1
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | Addresses the `doc_lazy_continuation` lint, fixing the `rust-latest` job that's currently failing on main.
* | | | | Merge branch 'fix-cargo-warning' into 'main'Jim Newsome2024-10-093-3/+3
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | Fix Cargo.toml typo with `no_default_features = true` Closes #1666 See merge request tpo/core/arti!2498
| * | | | fix Cargo.toml typo with `no_default_features = true`Steven Engler2024-10-033-3/+3
| | | | |
* | | | | Merge branch 'rpc-feature-check' into 'main'gabi-2502024-10-095-4/+49
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | arti-rpcserver: minimal handling for request.meta.require See merge request tpo/core/arti!2511
| * | | | | arti-rpcserver: minimal handling for request.meta.requireNick Mathewson2024-10-072-2/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have defined a forward-compatibility mechanism for the RPC system, where a request may list one or more required "features", and if any feature is absent, the request will fail. Since no "features" are currently implemented, this code does the bare minimum to implement this mechanism, by rejecting every request with a nonempty "require" field.
| * | | | | arti-rpcserver: Correctly handle rpc.meta without `updates`Nick Mathewson2024-10-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `update` field in request.meta is optional, so we should allow it to default to `false` when it is absent.
| * | | | | tor-{error,rpcbase}: Add new RPC error codes from spec.Nick Mathewson2024-10-072-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These, like the other RPC-only error kinds, probably don't belong in `tor-error`. But for now, that's where they all are, and moving them is out of scope for this branch. See #1668.
| * | | | | rpc spec: correct the name of a field.Nick Mathewson2024-10-071-2/+1
| | | | | |
* | | | | | Merge branch 'secondary-keystores' into 'main'gabi-2502024-10-0848-405/+2307
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-keymgr: Support reading C Tor keys. Closes #858 See merge request tpo/core/arti!2481
| * | | | | arti-client: Fix a broken doc comment.Gabriela Moldovan2024-10-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This broke because `tor_keymgr::config::arti` was moved to `tor_keymgr::config`.
| * | | | | tor-keymgr: Move C Tor keystore configs under ctor key (fmt).Gabriela Moldovan2024-10-081-5/+10
| | | | | |
| * | | | | tor-keymgr: Move C Tor keystore configs under ctor key.Gabriela Moldovan2024-10-083-39/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This way we have a more intuitive layout, where all C Tor keystore configuration is under the `ctor` key. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2481#note_3090486
| * | | | | arti: Add a ctor-keystore feature.Gabriela Moldovan2024-10-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This enables us to build `arti` with C Tor keystore support.
| * | | | | editorconfig: Ignore the new keymgr test files.Gabriela Moldovan2024-10-081-1/+1
| | | | | |
| * | | | | tor-keymgr: Add tests for CTorServiceKeystore.Gabriela Moldovan2024-10-084-1/+149
| | | | | |
| * | | | | tor-keymgr: Add tests for CTorClientKeystore.Gabriela Moldovan2024-10-087-2/+183
| | | | | |