<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-rpcbase/src/lib.rs, branch arti-v1.2.4</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.2.4</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.2.4'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2024-05-16T12:40:06Z</updated>
<entry>
<title>RPC: Expose dispatch table from Context</title>
<updated>2024-05-16T12:40:06Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-14T18:52:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=533b34a55b268ec73ac032dd8e3d360f2d43b985'/>
<id>urn:sha1:533b34a55b268ec73ac032dd8e3d360f2d43b985</id>
<content type='text'>
We need to do this so that we can actually invoke RPC functions
from one another.
</content>
</entry>
<entry>
<title>rpc: Move typetag onto subtrait of DynMethod</title>
<updated>2024-05-16T12:40:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-14T15:21:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0e8608ba76f61a401040c8f762b99e5f3965d8e8'/>
<id>urn:sha1:0e8608ba76f61a401040c8f762b99e5f3965d8e8</id>
<content type='text'>
This will allow us to create dispatchable methods that are only
invoked from inside the arti code, and are not themselves
serializable.
</content>
</entry>
<entry>
<title>RPC: Enforce method name format.</title>
<updated>2024-05-14T13:39:47Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-14T13:35:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8da4b96991c01ff16bd1194bca77d9bedf0bb9fa'/>
<id>urn:sha1:8da4b96991c01ff16bd1194bca77d9bedf0bb9fa</id>
<content type='text'>
We need to do this carefully, since we want our system to be
extensible with new namespaces.

First, when we are constructing an RpcMgr, we _warn_ about any
method names that are misformed.

Second, we add a test in the `arti` crate to fail if any method
names are invalid.  This will only catch method names in crates that
`arti` depends on.
</content>
</entry>
<entry>
<title>tor-rpcbase: Add facility to downcast to Arc&lt;dyn Trait&gt;.</title>
<updated>2024-05-09T20:34:17Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-07T20:29:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f265d81977408932b40b9699c4bb77655bbd2ebd'/>
<id>urn:sha1:f265d81977408932b40b9699c4bb77655bbd2ebd</id>
<content type='text'>
Previously we could only downcast to &amp;dyn Trait,
which is not adequate.
</content>
</entry>
<entry>
<title>rpc: Add helper type for methods that return a single id.</title>
<updated>2024-05-09T20:34:17Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-06T17:05:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d5095f34d34407ecb48acc86b2c1f3123814e098'/>
<id>urn:sha1:d5095f34d34407ecb48acc86b2c1f3123814e098</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'new_ci_cfg_strategy' into 'main'</title>
<updated>2024-05-07T12:24:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-07T12:24:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4a4d00c68984d14aa9d0f642ee17ccf1bd1be5b4'/>
<id>urn:sha1:4a4d00c68984d14aa9d0f642ee17ccf1bd1be5b4</id>
<content type='text'>
add_warning/CI: New strategy to avoid "unexpected-cfgs" warning

Closes #1395

See merge request tpo/core/arti!2129</content>
</entry>
<entry>
<title>Re-run maint/add_warning.</title>
<updated>2024-05-06T13:31:35Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-06T13:23:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=97f452ec9958bf7d8ca3275c39655814a4494637'/>
<id>urn:sha1:97f452ec9958bf7d8ca3275c39655814a4494637</id>
<content type='text'>
This commit is automatically generated.
</content>
</entry>
<entry>
<title>Add a const instance of rpc::Nil.</title>
<updated>2024-05-06T13:12:08Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-29T18:40:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=843ed393c49c2e5f2451aab57f49791f1cf1d7e9'/>
<id>urn:sha1:843ed393c49c2e5f2451aab57f49791f1cf1d7e9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rpc: Revise backend for dispatchable-object macro.</title>
<updated>2024-04-22T16:02:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-11T14:44:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=640af8c9c7f79ca033d766391b12c2f30a7f26fd'/>
<id>urn:sha1:640af8c9c7f79ca033d766391b12c2f30a7f26fd</id>
<content type='text'>
The trick here is to provide an `Invoker` trait,
with blanket implementations for appropriate `fn(_,_,_,_?) -&gt; _`.
With this trick, we no longer need to have a `decl_rpc_invoke_fn`.

This lets us discard HasConstTypeId entirely,
and will let us simplify some other syntax moving forward.
</content>
</entry>
<entry>
<title>Refactor: remove existence of HasConstTypeId_ as a trait</title>
<updated>2024-04-08T13:00:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-08T12:51:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5155e9add7b0f94a8d95eae257c9c2a3e64d5566'/>
<id>urn:sha1:5155e9add7b0f94a8d95eae257c9c2a3e64d5566</id>
<content type='text'>
We don't actually need this to be a trait; we just need
methods and objects to have a `CONST_TYPE_ID_` if they want to
participate in the inventory-based method registry.

Removing this trait makes it much simpler to declare methods and
objects.
</content>
</entry>
</feed>
