aboutsummaryrefslogtreecommitdiff
path: root/crates/arti-client/src
Commit message (Collapse)AuthorAgeFilesLines
* arti-client: update release dateSteven Engler2026-08-031-1/+1
|
* Merge branch 'remove-lint' into 'main'Jim Newsome2026-07-153-3/+1
|\ | | | | | | | | | | | | Removed unnecessary lint Closes #2556 See merge request tpo/core/arti!4210
| * Remove now-unneeded allow(clippy::cognitive_complexity)Jim Newsome2026-07-152-2/+0
| |
| * add_warning: add reference to arti#2556Jim Newsome2026-07-151-1/+1
| |
| * Removed unnecessary lintpryty262026-07-151-1/+1
| | | | | | | | Removed unnecessary lint
* | arti-client: Fix formattinghjrgrn2026-07-101-5/+1
| |
* | multiple crates: Fix clippy warningshjrgrn2026-07-102-2/+2
|/
* Update release date for 2.5.0Nick Mathewson2026-06-301-1/+1
|
* Merge branch 'misc_string_slices_1' into 'main'Clara Engler2026-06-181-6/+5
|\ | | | | | | | | Fix string_slice exceptions outside of netdoc See merge request tpo/core/arti!4092
| * arti-client: remove string slicesNick Mathewson2026-06-101-6/+5
| |
* | arti-client: warn if reconfig left client in inconsistent stateSteven Engler2026-06-111-15/+42
|/
* everywhere: Add #[allow(clippy::string_slice)]Clara Engler2026-06-091-0/+3
| | | | | | | | This commit adds #[allow(clippy::string_slice)] to all functions in the code where string slices are used, alongside a TODO comment. We do this add the function header to have it consistent, as things like expression based allow's are still experimental.
* maint: Run maint/add_warning to deny string slicesClara Engler2026-06-097-0/+8
| | | | | | | | | | | | This commit executes maint/add_warning with the just added change to deny string slices except in tests. I recommend auditing this by checking out the previous commit followed by running the script yourself and then verifying that the diff is identical to this commit. This commit makes cargo clippy fail. We will add exceptions in the next commit.
* arti: rpc functionality to bootstrap a defer_bootstrapped client.Nick Mathewson2026-06-081-1/+1
|
* client: Reflect manually disabled bootstrap in statusNick Mathewson2026-06-022-4/+101
| | | | | If we have made bootstrapping manual, and not launched a bootstrap, we now reflect this as the reason that bootstrapping is blocked.
* Update release dateGabriela Moldovan2026-06-011-1/+1
|
* Apply 2 suggestion(s) to 1 file(s)Nick Mathewson2026-05-271-2/+2
| | | Co-authored-by: gabi-250 <[email protected]>
* client: Have launch_onion_service instantiate RunningInner as needed.Nick Mathewson2026-05-261-4/+28
| | | | | | Otherwise we either lose the property that you can call launch_onion_service before bootstrapping has begun, or we have to make launch_onion_service async.
* client: RunningInner::reconfigure: refactor running → selfNick Mathewson2026-05-262-43/+81
| | | | | (This is a separate commit in order make the code movement in the previous commit clearer.)
* client: Move dirmgr_store back into ClientShared.Nick Mathewson2026-05-261-9/+10
| | | | | This will ensure that the TorClient takes its file locks immediately on construction.
* client: Fold wait_for_bootstrap{,_running} into a single method.Nick Mathewson2026-05-261-20/+14
|
* client: change remaining wait_for_bootstrap user.Nick Mathewson2026-05-261-5/+6
|
* client: Defer creation of most structures until bootstrap.Nick Mathewson2026-05-262-127/+226
| | | | | | This will let us be more confident in the inertness of a not-bootstrapping TorClient, _and_ make it easier to reconfigure things before the client is started.
* client: Rename create_inner to create_implNick Mathewson2026-05-262-2/+2
| | | | | Now that we have a type called "inner", and will soon have a function to create it, we really don't want to retain this name.
* client: move bootstrap lock to the head of bootstrap_inner.Nick Mathewson2026-05-261-5/+5
| | | | | We want this look to cover the whole function, to avoid weird duplicate behavior while creating our bridge desc manager.
* client: Factor out the "running a client" code into an inner typestateNick Mathewson2026-05-261-81/+176
| | | | | | We'll use this to distinguish "not running" from "running", in order to make it easier to be sure that non-bootstrapping clients will definitely not try to connect to the network.
* client: rename ClientInner → ClientShared.Nick Mathewson2026-05-261-5/+5
|
* ptmgr: Defer proxy protocol string conversionNihal2026-05-261-2/+2
|
* ptmgr: pass outbound_proxy to managed PT processesNihal2026-05-261-1/+6
| | | | | | | Previously the [channel] outbound_proxy setting was applied to Arti's own direct connections but was not forwarded to managed PT processes. https://spec.torproject.org/pt-spec/configuration-environment.html
* Remove `use_obsolete_software`.Nick Mathewson2026-05-144-116/+8
| | | | | | | | Discussion on #1960 suggests that this option is not a good idea: it encourages developers to work around deliberate signals that the software they're shipping won't work on the network. Closes #1960.
* Fix documentation that referred to clones of a TorClient.Nick Mathewson2026-05-131-18/+7
|
* client: Move the ClientInner code into one impl block.Nick Mathewson2026-05-131-171/+166
|
* client: Remove some inner Arcs from ClientInnerNick Mathewson2026-05-131-9/+10
| | | | These were only Arc<> so that TorClient could implement Clone.
* client: revise StreamPrefs methodsNick Mathewson2026-05-131-14/+1
| | | | | | | | | The `set_stream_prefs` method was the only one that took a TorClient as `&mut self`. But we only expose Arc<TorClient<R>>, that isn't a reasonable API. The `clone_with_prefs` method has been renamed, since it no longer "clones" anything meaningfully.
* Make TorClient no longer implement Clone.Nick Mathewson2026-05-131-46/+86
|
* Make all TorClient constructors wrap the TorClient in an Arc.Nick Mathewson2026-05-133-14/+15
| | | | | | This is part of rationalizing the structure of TorClient so we can refactor startup logic, and so that RPC code can reason about object identity. See #2469.
* release: Bump release date for 2.3.0.Wesley Aptekar-Cassels2026-05-061-1/+1
|
* Log tunnel and circuit IDsJim Newsome2026-04-081-1/+4
|
* Update release dateIan Jackson2026-03-301-1/+1
| | | | As per the release checklist.
* arti-client: Port to web-time-compat.Nick Mathewson2026-03-262-11/+9
|
* arti-client: Stub out usage of FsStateMgr on wasm32-unknown.Nick Mathewson2026-03-251-4/+34
| | | | | | | | The replacement (TestingStateMgr) is not correct, but it will compile until we have a supported state manager. (This made cargo-sort have me move a section around. Not sure why it cares.)
* Fix word duplicate typosTobias Stoeckmann2026-03-151-1/+1
|
* Update the release date for today's releaseGabriela Moldovan2026-03-031-1/+1
|
* Update release date in preparation for today's releaseGabriela Moldovan2026-03-021-1/+1
|
* arti-client: Convert config to derive_deftly(TorConfig).Nick Mathewson2026-02-241-115/+94
| | | | | (There are a few places where we still do things in nonstandard places to avoid API breakage.)
* Merge branch 'ticket_2338' into 'main'Nick Mathewson2026-02-191-9/+5
|\ | | | | | | | | | | | | Use ErrorSources where appropriate to walk an error stack. Closes #2338 See merge request tpo/core/arti!3685
| * arti-client: Use ErrorSources to find best hint for an error.Nick Mathewson2026-02-161-9/+5
| | | | | | | | | | Previously, due to #2338, we would miss any error nested directly inside an io::Error.
* | 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.
* relay: Add a TLS acceptor in the ChanBuilderDavid Goulet2026-02-091-7/+10
| | | | | | | | | | | | | | | This requires the `TlsKeyAndCert` so be passed on the TLS acceptor settings. We assume that `RelayIdentities` has this information. The ChanBuilder::new() was getting a bit too convoluted and feature gated to instead we introduce new_client() and new_relay() and remove the need for `with_identities()`. Because of this, the ChanMgr::new() now returns a `Result<>`. Related to #1597 Signed-off-by: David Goulet <[email protected]>
* release: Update release date.Wesley Aptekar-Cassels2026-02-021-1/+1
|