<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-rtcompat/src/impls/async_std.rs, branch arti-v2.4.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.4.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.4.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-05-07T15:05:57Z</updated>
<entry>
<title>tor-rtcompat+misc: add `NetStreamProvider::ListenOptions`</title>
<updated>2026-05-07T15:05:57Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2026-05-06T23:05:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=89790050b66f4eed80b9215b18c893ab7adba298'/>
<id>urn:sha1:89790050b66f4eed80b9215b18c893ab7adba298</id>
<content type='text'>
This adds the trait type `ListenOptions` to `NetStreamProvider` and adds
this `ListenOptions` as an argument to `NetStreamProvider::listen()`.

You probably want to look at the changes in tor-rtcompat first, then the
rest of this commit is updating the various places we use
`NetStreamProvider`.
</content>
</entry>
<entry>
<title>tor-rtcompat: unfold for async-std incoming streams</title>
<updated>2026-02-20T00:02:07Z</updated>
<author>
<name>moumenalaoui</name>
<email>moumenalaoui@proton.me</email>
</author>
<published>2026-02-20T00:02:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1104e8627e8276390bd7c61e664436da3107355a'/>
<id>urn:sha1:1104e8627e8276390bd7c61e664436da3107355a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>opentelemetry: Instrument a bunch of functions.</title>
<updated>2025-11-24T16:28:07Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-11-24T16:28:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a4db6a7495b13dd7b00416dd1660a5ad82b60919'/>
<id>urn:sha1:a4db6a7495b13dd7b00416dd1660a5ad82b60919</id>
<content type='text'>
These are all aimed at figuring out in more detail what's going on
in #2079 and related issues.
</content>
</entry>
<entry>
<title>tor-rtcompat: use a consistent `listen()` implementation</title>
<updated>2025-11-11T00:05:11Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-11-10T23:55:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a0b35d412b88285e6f7243818cbc5641e4778baf'/>
<id>urn:sha1:a0b35d412b88285e6f7243818cbc5641e4778baf</id>
<content type='text'>
This gives us a consistent `listen()` implementation across runtimes,
and gives us flexibility to customize the bind/listen process for TCP
sockets.
</content>
</entry>
<entry>
<title>Fix Windows compile warnings</title>
<updated>2025-08-05T06:10:18Z</updated>
<author>
<name>Tobias Stoeckmann</name>
<email>tobias@stoeckmann.org</email>
</author>
<published>2025-08-03T08:44:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1623fd32272131c911ff53e8a2ea7b2516ffab07'/>
<id>urn:sha1:1623fd32272131c911ff53e8a2ea7b2516ffab07</id>
<content type='text'>
Use unix-specific crates only if needed and suppress clippy warnings of
unused variables if their usage is unix-specific.
</content>
</entry>
<entry>
<title>AF_UNIX terminology: Rename two error structs</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:52:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=73157920ffa84d6f1580170a0e40e5fbe3106a67'/>
<id>urn:sha1:73157920ffa84d6f1580170a0e40e5fbe3106a67</id>
<content type='text'>
We change `NoUnixAddressSupport` to `NoAfUnixSocketSupport` because it
doesn't make much sense to talk about support for the addresses
separately from support for the sockets.
</content>
</entry>
<entry>
<title>tor-rtcompat: Rename spawn_thread to spawn_blocking</title>
<updated>2025-03-04T17:33:25Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-03-04T15:39:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=11049b07c419fc7544c382a98ea8366d6b468daf'/>
<id>urn:sha1:11049b07c419fc7544c382a98ea8366d6b468daf</id>
<content type='text'>
Let's use Tokio terminology here.
</content>
</entry>
<entry>
<title>tor-rtcompat: Provide a new function for executor re-entry</title>
<updated>2025-03-04T17:30:43Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-02-26T16:03:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=878c32bc1e9027fa3cf405c87f5323b94969b0fb'/>
<id>urn:sha1:878c32bc1e9027fa3cf405c87f5323b94969b0fb</id>
<content type='text'>
Forbid re-entering the executor using ToplevelBlockOn::block_on.

This was always forbidden in the case of MockExecutor, but that meant
that tests using MockExecutor would malfunction if the code under test
needed to re-enter the executor from sync code (since the code under test
would have to use block_on, which wrong).  See #1835.

Provide a function which *can* do this, reenter_block_on.  The
MockExecutor needs to know the difference, and other runtimes may too.
They are conceptually quite different operations.

Introduce ToplevelRuntime as a convenience alias.
</content>
</entry>
<entry>
<title>tor-rtcompat: New plan for blocking interaction, Blocking trait</title>
<updated>2025-03-04T17:30:43Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-02-25T14:10:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=20eabfcc81a2d0df61ce297b28c7412c3ceab7fd'/>
<id>urn:sha1:20eabfcc81a2d0df61ce297b28c7412c3ceab7fd</id>
<content type='text'>
* Document the new plan for blocking interaction in the trait-level
  docs for the Blocking trait (used to be SpawnBlocking).
  Add cross-references (in some cases to not-yet-existing pieces).

* Rename: spawn_blocking to spawn_thread.  We're going to distinguish
  thread-creation (relatively expensive) from brief entry to sync code
  (relatively cheap, but more restricted).

* Rename the SpawnBlocking trait to Blocking, and its ThreadHandle
  to ThreadHandle.  This trait is going to gain more functionality.

* Add the missing mention of `Blocking` to the docs for `Runtime`.
</content>
</entry>
<entry>
<title>tor-rtcompat: Rename BlockOn to ToplevelBlockOn</title>
<updated>2025-03-04T17:30:43Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-02-13T17:39:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=849558047071897b9bbdbdd28d06d15b52b3af10'/>
<id>urn:sha1:849558047071897b9bbdbdd28d06d15b52b3af10</id>
<content type='text'>
We're going to distinguish top-level runtime entry, from *re*-entry to
an existing executor.  It is most convenient to rename this trait
first.  Documentation of the distinction will come later.

(We're going to retain the function name `block_on`, but we want the trait
to be more obviously a top-level only thing, though, so we give it a
name that will hopefully avoid it peroulating throughout the codebase..)
</content>
</entry>
</feed>
