<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/channel.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-29T11:16:19Z</updated>
<entry>
<title>ChannelSender::poll_ready_unpin_bool: move to util</title>
<updated>2024-05-29T11:16:19Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-05-29T11:15:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=237eb7a53f8953b8b6697ff110e1aec686b19d50'/>
<id>urn:sha1:237eb7a53f8953b8b6697ff110e1aec686b19d50</id>
<content type='text'>
This is where it belongs.
</content>
</entry>
<entry>
<title>ChannelSender::poll_ready_unpin_bool: extension trait</title>
<updated>2024-05-29T11:16:15Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-05-29T11:15:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e0115adb172001a84867e98520341a0ad1b96628'/>
<id>urn:sha1:e0115adb172001a84867e98520341a0ad1b96628</id>
<content type='text'>
This makes this available for any Sink + Unpin.  Which we want because
we're about to wrap our ChannelSender in a Sink wrapper.

It's in the wrong place now; we'll move it in a moment.
</content>
</entry>
<entry>
<title>ChannelSender::poll_ready_unpin_bool: rename from poll_ready</title>
<updated>2024-05-29T11:15:53Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-05-29T10:00:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ca05a4dcb9979c6916cd1f0d7ccc74af433969e0'/>
<id>urn:sha1:ca05a4dcb9979c6916cd1f0d7ccc74af433969e0</id>
<content type='text'>
This would otherwise shadow the poll_ready method, which is
confusing.

Also this paves the way for making it available for any
Sink + Unpin.

Improve the docs somewhat to explain what this thing actually is.
</content>
</entry>
<entry>
<title>ChannelSender::poll_ready inherent method: Don't discard error</title>
<updated>2024-05-29T09:53:55Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-05-29T09:44:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=71e28f8c47477c025ce0fd2375de8fbdfcdf85b4'/>
<id>urn:sha1:71e28f8c47477c025ce0fd2375de8fbdfcdf85b4</id>
<content type='text'>
I think this error was in fact always Error::CircuitClosed because it
came from ChannelClosed.into().  Anyway, we shouldn't squash it.

Now this function has semantics identical to Sink::poll_ready, just a
slightly different signature.
</content>
</entry>
<entry>
<title>ChannelSender::poll_ready inherent method: Avoid apparent discard</title>
<updated>2024-05-29T09:53:49Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-05-29T09:43:10Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=850ce5400a13d81abeb14f64c5ab5a85f583fc03'/>
<id>urn:sha1:850ce5400a13d81abeb14f64c5ab5a85f583fc03</id>
<content type='text'>
Make it clear we're discarding `()`, not an actual value.
</content>
</entry>
<entry>
<title>ChannelSender::poll_ready inherent method: Use Sink:poll_ready</title>
<updated>2024-05-29T09:53:39Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-05-29T09:41:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6d67dfc5af077eff34f2346b2780290be6d7ed47'/>
<id>urn:sha1:6d67dfc5af077eff34f2346b2780290be6d7ed47</id>
<content type='text'>
We're going to change this function, but first we are going to make
its behaviour identical to Sink::poll_ready.

This avoids open-coding the call to poll_read on cell_tx.

The error handling is still strange.  We'll fix that in a moment.
</content>
</entry>
<entry>
<title>Remove an outdated comment.</title>
<updated>2024-05-20T15:12:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-20T15:12:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4ecd4c7c71119d79b971e21416f63f9dd71d70dd'/>
<id>urn:sha1:4ecd4c7c71119d79b971e21416f63f9dd71d70dd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make an arc clone explicit.</title>
<updated>2024-05-20T15:10:18Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-20T15:10:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=aef0bd8a1ffcf36c021966daa4010594bf639f11'/>
<id>urn:sha1:aef0bd8a1ffcf36c021966daa4010594bf639f11</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix a typo.</title>
<updated>2024-05-20T15:06:35Z</updated>
<author>
<name>gabi-250</name>
<email>gabi@torproject.org</email>
</author>
<published>2024-05-20T15:06:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f309609b26d6e88637bac4f025df2c3d72b9a29d'/>
<id>urn:sha1:f309609b26d6e88637bac4f025df2c3d72b9a29d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Divide up some elements of ChannelDetails.</title>
<updated>2024-05-16T16:24:12Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-16T16:15:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=98dc42c3e0a4cfa9f5663b01ff27d085e725ca57'/>
<id>urn:sha1:98dc42c3e0a4cfa9f5663b01ff27d085e725ca57</id>
<content type='text'>
Previously ChannelDetails had a double duty: It held elements shared
among the clones of a Channel, and it also held elements shared
between the Channel and the Reactor.  But now that Channel doesn't
have to implement Clone, we can more the non-Reactor elements into
Channel itself.

This change may improve cache locality a bit, and should make it a
little easier to follow the channel code.

I've also moved unique_id out of ChannelDetails into Channel _and_
Reactor: it is small, immutable, and used all the time in logging.
</content>
</entry>
</feed>
