<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-rpcbase/src/method.rs, branch arti-v2.1.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.1.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.1.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-09-30T10:09:46Z</updated>
<entry>
<title>rpc: Suppress a clippy false positive that appears with current beta</title>
<updated>2025-09-30T10:09:46Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-09-30T10:09:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9447e48d0c698d51c75706d5efedcd6142c82f2a'/>
<id>urn:sha1:9447e48d0c698d51c75706d5efedcd6142c82f2a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Switch Cargo.toml files to edition 2024.</title>
<updated>2025-08-07T15:28:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-08-06T01:19:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=77b0de43b8c67cdb81befe0680a3df43b6ad37bc'/>
<id>urn:sha1:77b0de43b8c67cdb81befe0680a3df43b6ad37bc</id>
<content type='text'>
First, run

```
git grep -l "^edition =" |
    xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;'
```

Second, manually verify that all Cargo.toml files have changed,
and nothing else has changed.

Third, run cargo fmt again.
</content>
</entry>
<entry>
<title>tor-rpcbase: Removed dependency on `once_cell`</title>
<updated>2025-06-15T02:11:18Z</updated>
<author>
<name>hashcatHitman</name>
<email>3924-hashcatHitman@gitlab.torproject.org</email>
</author>
<published>2025-06-15T02:04:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8c7cb12c3b7ef20d2a47ec11aaef5ca610ee03ff'/>
<id>urn:sha1:8c7cb12c3b7ef20d2a47ec11aaef5ca610ee03ff</id>
<content type='text'>
- Replaced `once_cell::sync::Lazy` with `std::sync::LazyLock`.

Signed-off-by: hashcatHitman &lt;3924-hashcatHitman@gitlab.torproject.org&gt;
</content>
</entry>
<entry>
<title>rpcbase: Make recognized namespace list optional.</title>
<updated>2025-01-27T21:10:47Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-01-27T18:39:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1d251c1e685b5c5afc4666e75293b62e8619d958'/>
<id>urn:sha1:1d251c1e685b5c5afc4666e75293b62e8619d958</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rpcbase: Move is_valid_rpc_identifier to crate root.</title>
<updated>2025-01-27T21:10:47Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-01-27T18:36:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=685702a9055459641dac6b830ceacff244f0f5ac'/>
<id>urn:sha1:685702a9055459641dac6b830ceacff244f0f5ac</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rpc: Rename InvalidMethodName to InvalidRpcIdentifier.</title>
<updated>2025-01-27T18:33:33Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-01-27T18:33:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ee9c39ba6e35769a21d3010e44124d59206009b4'/>
<id>urn:sha1:ee9c39ba6e35769a21d3010e44124d59206009b4</id>
<content type='text'>
We're about to use this error type for other things too.
</content>
</entry>
<entry>
<title>Remove RPC TODO about bypass_method_dispatch method.</title>
<updated>2025-01-27T18:27:38Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-01-27T18:27:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7b2eea9eeaea852c31362eddc683a747a74d3263'/>
<id>urn:sha1:7b2eea9eeaea852c31362eddc683a747a74d3263</id>
<content type='text'>
There was formally a redundant method of this name, which could get
out-of-sync with invoke_without_dispatch.  But now that method is
gone, and this TODO is wrong.
</content>
</entry>
<entry>
<title>rpc: Make cancel requests uncancellable.</title>
<updated>2025-01-23T00:39:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-01-22T14:08:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8937200fbaeca090b51e7400aee5813a97e6d468'/>
<id>urn:sha1:8937200fbaeca090b51e7400aee5813a97e6d468</id>
<content type='text'>
The current cancel code is prone to deadlock, so the easiest way to
solve it appears to be making cancel requests themselves
uncancellable.

I've included a test to verify the behavior; previously, this test
caused a deadlock.
</content>
</entry>
<entry>
<title>rpc: Simplify method-dispatch-bypass logic a bit</title>
<updated>2024-10-24T01:35:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-10-24T00:33:55Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=eb1d9acd10c5d500f56d637a7bba3acdd67dc9e8'/>
<id>urn:sha1:eb1d9acd10c5d500f56d637a7bba3acdd67dc9e8</id>
<content type='text'>
This commit removes the separate function for asking whether to
bypass the dispatch code.  Instead, it gives the "invoke with
bypass" function an error to return when no dispatch is warranted,
and moves the whole responsibility for method dispatch or
non-dispatch back into tor-rpcbase.

I had to add an ObjectId argument to `invoke_rpc_method` to make
this work, but that's probably a good thing.

Additionally, this commit tweaks the derive-deftly macro to prevent
you from asking for dispatch bypass on special methods, where it
isn't implemented (and doesn't really make sense).
</content>
</entry>
<entry>
<title>rpc: Add a mechanism for method that bypass regular dispatch</title>
<updated>2024-10-24T01:35:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-10-22T13:50:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d6367f61169fd21830aeb37d8952b9f6792cb115'/>
<id>urn:sha1:d6367f61169fd21830aeb37d8952b9f6792cb115</id>
<content type='text'>
I'm about to use this for rpc:release, which is special
because it doesn't actually look at the type of the object that it's
invoked on.  Later it might be useful for manipulating weakrefs,
cloning referenes, detecting reference equality, etc.
</content>
</entry>
</feed>
