| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
| |
We can't do this for every crate.
I looked at what is now matrix-check to see if I wanted to use any of
the code. But it seems too entangled with its particular purpose, and
has a lot of embedded knowledge of our crates' features. I found it
sufficiently far from what I wanted that I decided on a fresh script.
|
| |\
| |
| |
| |
| |
| |
| | |
Don't need to tell docs.rs to enable `docsrs` cfg. It does it automatically as of https://github.com/rust-lang/docs.rs/pull/2390#event-11664409098
While this change isn't in our MSRV yet, we were only using this when building for docs.rs, where we use the latest anyway.
See merge request tpo/core/arti!2308
|
| | |
| |
| |
| |
| | |
It now does it automatically, see
<https://docs.rs/about/builds#detecting-docsrs>.
|
| | |
| |
| |
| |
| | |
`BuilderExt` will soon be used in tor-hsservice too (for configuring the
mistrust settings of the client "restricted mode" authorization keys).
|
| |/
|
|
|
|
|
| |
Restricted discovery mode is initially going to be gated behind the
experimental `restricted-discovery` feature.
Part of #1292
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
This is the result of:
```
for crate in $( ./maint/list_crates |grep '^\(tor\|arti-\)' ); do
cargo set-version -p $crate 0.21.0
done
```
|
| |
|
|
|
| |
It is no longer necessary to say, for every RPC method,
that its error type is RpcError.
|
| | |
|
| | |
|
| |
|
|
| |
Closes #1490
|
| | |
|
| |\
| |
| |
| |
| |
| |
| | |
Fix fs_mistrust error messages and some misnamed error variants
Closes #1473
See merge request tpo/core/arti!2253
|
| | | |
|
| |/
|
|
|
| |
Otherwise arti-client fails to build with `-no-default-features
--features onion-service-client,experimental-api`.
|
| |
|
|
|
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2225#note_3043992
We have an example for how to use arti-client with hyper 1.x, but I
don't think we need to to mention that here.
|
| |
|
|
|
| |
This removes the deprecated syntaxes. Updating now will prevent us
re-introducing the old syntaxes, which we updated in arti!2209.
|
| |
|
|
| |
Part of #1281
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nailing-cargo -uE set-version -p arti-client 0.20.0
nailing-cargo -uE set-version -p arti-relay 0.20.0
nailing-cargo -uE set-version -p arti-rpcserver 0.20.0
nailing-cargo -uE set-version -p tor-async-utils 0.20.0
nailing-cargo -uE set-version -p tor-basic-utils 0.20.0
nailing-cargo -uE set-version -p tor-bytes 0.20.0
nailing-cargo -uE set-version -p tor-cell 0.20.0
nailing-cargo -uE set-version -p tor-cert 0.20.0
nailing-cargo -uE set-version -p tor-chanmgr 0.20.0
nailing-cargo -uE set-version -p tor-checkable 0.20.0
nailing-cargo -uE set-version -p tor-circmgr 0.20.0
nailing-cargo -uE set-version -p tor-config 0.20.0
nailing-cargo -uE set-version -p tor-consdiff 0.20.0
nailing-cargo -uE set-version -p tor-dirclient 0.20.0
nailing-cargo -uE set-version -p tor-dirmgr 0.20.0
nailing-cargo -uE set-version -p tor-error 0.20.0
nailing-cargo -uE set-version -p tor-geoip 0.20.0
nailing-cargo -uE set-version -p tor-guardmgr 0.20.0
nailing-cargo -uE set-version -p tor-hsclient 0.20.0
nailing-cargo -uE set-version -p tor-hscrypto 0.20.0
nailing-cargo -uE set-version -p tor-hsrproxy 0.20.0
nailing-cargo -uE set-version -p tor-hsservice 0.20.0
nailing-cargo -uE set-version -p tor-keymgr 0.20.0
nailing-cargo -uE set-version -p tor-linkspec 0.20.0
nailing-cargo -uE set-version -p tor-llcrypto 0.20.0
nailing-cargo -uE set-version -p tor-log-ratelim 0.20.0
nailing-cargo -uE set-version -p tor-memquota 0.20.0
nailing-cargo -uE set-version -p tor-netdir 0.20.0
nailing-cargo -uE set-version -p tor-netdoc 0.20.0
nailing-cargo -uE set-version -p tor-persist 0.20.0
nailing-cargo -uE set-version -p tor-proto 0.20.0
nailing-cargo -uE set-version -p tor-protover 0.20.0
nailing-cargo -uE set-version -p tor-ptmgr 0.20.0
nailing-cargo -uE set-version -p tor-relay-selection 0.20.0
nailing-cargo -uE set-version -p tor-rpcbase 0.20.0
nailing-cargo -uE set-version -p tor-rtcompat 0.20.0
nailing-cargo -uE set-version -p tor-rtmock 0.20.0
nailing-cargo -uE set-version -p tor-socksproto 0.20.0
nailing-cargo -uE set-version -p tor-units 0.20.0
Each of which runs a rune like
cargo set-version --offline -p tor-units 0.20.0
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We're about to update to iterools 0.13.0. We must therefore have a
version of strum which is not affected by
https://github.com/Peternator7/strum/issues/358
Precisely
git-grep -l '^strum' | xargs perl -i~ -pe 's{"0\.26"}{"0.26.3"}'
No changes to lockfile - we're already using 0.26.3, except perhaps in
the minimal versions test.
|
| |
|
|
|
|
|
| |
No code changes needed.
Precisely
nailing-cargo -Eu upgrade --incompatible -p derive-deftly
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
Name chosen to match the error kind that we're detecting.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a parameter to TorClientBuilder that control how long
we should retry constructing a TorClient if we get a
LocalResourceInUse error. When this parameter is not set, we
default to 500 milliseconds for async entry points and 0
milliseconds for sync entry points.
(`LocalResourceInUse` usually means that a lockfile is held by
somebody else; but when the resource is some other type, we
typically want the same behavior anyway.)
(I really don't want to introduce delays by default for the
create_unbootstrapped case, since it previously had no delay at
all.)
There is now also an async entry point to create an unbootstrapped
TorClient.
Closes #1464.
|
| |
|
|
|
| |
There is no actual reason to consume this type, and taking it by
reference allows us to retry.
|
| |
|
|
|
|
| |
* Bump in Cargo.toml
* Deal with `${Xmeta as ...}` incompatible change, by
always specifying an `as`, and changing `as tokens`.
|
| |\
| |
| |
| |
| |
| |
| | |
RPC: Use RPC methods instead of the "ClientConnectionTarget" trait.
Closes #1427
See merge request tpo/core/arti!2192
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On its own, this might not seem like a huge improvement, but it will
later let us implement these RPC methods for types that can't
reasonably implement ClientConnectionTarget.
It also serves as a proof of concept that special-method invocation
can actually work, so that we can build things like this in cases
where introducing a trait isn't practical.
Closes #1427
|
| | | |
|
| |/ |
|
| |
|
|
|
|
|
|
| |
Formerly we used a Box. That was okay at first, but now that we
want RPC methods to be able to invoke other RPC methods, we don't
want the Invocable methods to have to consume the Context.
This requires that Context become Sync.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The unstable crates are:
- tor-error
- tor-config
- tor-units
- tor-geoip
- tor-rtcompat
- tor-rtmock
- tor-log-ratelim
- tor-rpcbase
- tor-memquota
- tor-llcrypto
- tor-protover
- tor-bytes
- tor-hscrypto
- tor-socksproto
- tor-checkable
- tor-cert
- tor-linkspec
- tor-cell
- tor-proto
- tor-netdoc
- tor-consdiff
- tor-netdir
- tor-relay-selection
- tor-persist
- tor-chanmgr
- tor-ptmgr
- tor-guardmgr
- tor-circmgr
- tor-dirclient
- tor-dirmgr
- tor-keymgr
- tor-hsclient
- tor-hsservice
- tor-hsrproxy
- arti-client
- arti-rpcserver
- arti-hyper
- tor-basic-utils
- tor-async-utils
Done using
```
for p in "${unstable[@]}"; do cargo set-version -p $p 0.19; done
```
where `unstable` contains the list above
|
| |
|
|
|
|
|
| |
If the circmgr retires all of its circuits, so should the HS circ pool.
The circuits can be retired for various reasons (for example, if the
configured vanguard mode changes).
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Storing the VanguardMode in multiple places (in the VanguardMgr *and*
the HS circ Pool) is dangerous and can lead to split brain situations
where different parts of the code think they are running in different
VanguardModes.
See #1424
|
| |
|
|
|
|
|
|
|
| |
We want to export the `VanguardConfig` even if the `vanguards` feature
is disabled (we will need to unconditionally include it in the arti
config).
Note that if `vanguards` are disabled, the `VanguardMode` from the
`VanguardConfig` can only be `Dsiabled`.
|
| |
|
|
|
|
|
| |
This is already exported via the `pub mod vanguards` module, so there is
no need to export it from the top-level too. This *is* a breaking change,
but the downstream fix is trivial (and the type should never have been
exported directly from `arti_client::config` in the first place).
|
| |
|
|
|
|
|
|
| |
This is needed so that we can cast special methods' return types
properly.
I wish I could make this optional, but Rust doesn't allow
defaulting an associated type.
|
| |\
| |
| |
| |
| |
| |
| | |
RPC: Enforce method name format.
Closes #823
See merge request tpo/core/arti!2149
|
| | |
| |
| |
| |
| | |
Specifically, we want a single colon, and we want our
method names to be in snake_case.
|
| |/
|
|
| |
Co-authored-by: gabi-250 <[email protected]>
|
| |
|
|
|
| |
Document its relation to the method system, and possible future
evolution.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
The application creates these, using a new-stream-handle RPC command,
on an object that can actually create streams.
Then later, the application provides the (global) identity of one of
these objects when it's making a SOCKS connection. This causes the
object to take hold of a `DataStreamCtrl`.
|