<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/arti-rpc-client-core/src/ffi/err.rs, branch main</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=main</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-03-16T14:32:02Z</updated>
<entry>
<title>rpc-client: add support to prefer/require su permission</title>
<updated>2026-03-16T14:32:02Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-03-03T18:12:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1069f4e4ecc2c7b2265e2f33ef719155f228f078'/>
<id>urn:sha1:1069f4e4ecc2c7b2265e2f33ef719155f228f078</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rpc: Refactor connimpl in preparation for pollable requests.</title>
<updated>2026-02-26T16:30:35Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-02-05T14:34:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=af104fba12ce81fcc9f724505039c78715493ab3'/>
<id>urn:sha1:af104fba12ce81fcc9f724505039c78715493ab3</id>
<content type='text'>
In order to implement this part of #1856, we will internally divide
requests into two kinds: "Waitable" and "Pollable".  Waitable
requests are the kind that we have now: They are created with an
"execute" method. They each have their own response queue and their
own condvar, and in order to see if they have any responses, the
caller needs to call some kind of request-specific method.

Pollable requests are the ones we will add.  They are created with a
"submit" method, and associated with a user-provided tag.
They all share the same queue and the same condvar.
To see if any of them have a response, the caller will run a
function that returns tagged responses.

In order to support this division, this commit:
 - turns `RequestState` into an enum,
 - makes `ResponseQueue` into its own type,
 - Adds a trait that will be implemented by every type that can
   identify a response queue.
</content>
</entry>
<entry>
<title>arti-rpc-client-core: Document why we don't need ErrorSources.</title>
<updated>2026-02-16T15:41:59Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-02-16T15:41:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=20e6c4a286ba54c5672e500ea252bf5e105f2b83'/>
<id>urn:sha1:20e6c4a286ba54c5672e500ea252bf5e105f2b83</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rpc: Move responsibility for wrapping streams to rpc-client-core</title>
<updated>2026-02-04T13:47:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-02-02T16:47:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2eaf63dc200c897b211d1268f9eceb03d0daa2ef'/>
<id>urn:sha1:2eaf63dc200c897b211d1268f9eceb03d0daa2ef</id>
<content type='text'>
This will be necessary since, in order to make the RPC stuff
nonblocking, we'll need a better API than just `Box&lt;dyn Read&gt;` etc.
</content>
</entry>
<entry>
<title>rpclib: Rename `OutPtr` to `OutBoxedPtr`</title>
<updated>2025-11-06T22:00:39Z</updated>
<author>
<name>Neel Chauhan</name>
<email>neel@neelc.org</email>
</author>
<published>2025-11-05T02:13:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e20e93ea05ddc7bb499bcb7cb0d99940e6b20c7e'/>
<id>urn:sha1:e20e93ea05ddc7bb499bcb7cb0d99940e6b20c7e</id>
<content type='text'>
Closes #1588.
</content>
</entry>
<entry>
<title>Fix warnings and errors from edition 2024.</title>
<updated>2025-08-07T15:28:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-08-06T01:54:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4fbbffe7c14b2df6290268b6e3c8530106ab2529'/>
<id>urn:sha1:4fbbffe7c14b2df6290268b6e3c8530106ab2529</id>
<content type='text'>
The two main causes of errors were:

- Since some of the lifetime rules have changed, we no longer need
  to do as many "bind a variable and immediately return it"
  patterns, and so clippy now warns about them.
- We needed to adjust the explicit captures (`use&lt;...&gt;`)
  in a couple of our RPIT instances.
</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>AF_UNIX terminology: Rename two error variants</title>
<updated>2025-03-24T13:58:54Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-03-06T15:20:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0f588e4bb3899521cd6d7ef4f4d10445e900f80a'/>
<id>urn:sha1:0f588e4bb3899521cd6d7ef4f4d10445e900f80a</id>
<content type='text'>
Change `..UnixAddress...` to `...AfUnixAddress..`.
</content>
</entry>
<entry>
<title>RPC: Abolish an unused and misnamed error variant</title>
<updated>2025-03-24T13:58:54Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-03-06T15:41:32Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4bc9e6c47dcd764b5d95a47b66fd27167458c8a8'/>
<id>urn:sha1:4bc9e6c47dcd764b5d95a47b66fd27167458c8a8</id>
<content type='text'>
This variant breaches the new guidelines about AF_UNIX terminology.
And its purpose is unclear and it's not used.
</content>
</entry>
<entry>
<title>rpclib: Improve output for ConnectFailure</title>
<updated>2025-02-04T19:41:15Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-02-04T17:28:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=dffe9330ab57d90f844f2aac950e4cbc2fc7a70b'/>
<id>urn:sha1:dffe9330ab57d90f844f2aac950e4cbc2fc7a70b</id>
<content type='text'>
We want to explain better what has happened, not only with the final
fatal error, but with any nonfatal errors that occurred in the middle.

Closes #1826.
</content>
</entry>
</feed>
