<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-cell/src, branch arti-v1.2.8</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.8</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.2.8'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2024-09-11T13:19:19Z</updated>
<entry>
<title>tor-bytes: Only report Truncated for errors at the outer level</title>
<updated>2024-09-11T13:19:19Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-09-11T13:13:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1632c48a5a2f5744970b841628261d6062881dee'/>
<id>urn:sha1:1632c48a5a2f5744970b841628261d6062881dee</id>
<content type='text'>
This is item 1 from
  https://gitlab.torproject.org/tpo/core/arti/-/issues/1614#note_3074562
and the alternative to item 2 presented in the 2nd half of
  https://gitlab.torproject.org/tpo/core/arti/-/issues/1614#note_3074648

(Item 3 was done earlier, but now we change the behaviour.)

Fixes #1614.
</content>
</entry>
<entry>
<title>tor-bytes: Error: provide and call Error::incomplete_error</title>
<updated>2024-09-11T13:19:19Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-09-11T11:32:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=12c2fbe076cfcff8d734b24d6aef243d09c64d15'/>
<id>urn:sha1:12c2fbe076cfcff8d734b24d6aef243d09c64d15</id>
<content type='text'>
We introduce the new constructor and call it at the error generation
sites.  But there is still not yet any functional change.

Change the type of Truncated's field to be Sensitive.

The original reason for not doing this no longer applies, since we
don't generally want to open-code construction of this variant.
Conveniently, changing the type means we get to find all the sites
where one *is* constructed and adjust them.

In reader.rs and tor-proto we can just call incomplete_error.

In tor-cell, there's a call site where we previously provided an
underestimate, and where the Reader isn't available.  We adjust that
ad-hoc but this is fine because the error variant will
change.  (relaycell is using a Reader from from_slice.)
</content>
</entry>
<entry>
<title>tor-cell: No longer treat certain tor-bytes errors as EK::Internal</title>
<updated>2024-09-11T13:06:56Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-09-11T12:52:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c8defe864ce659efb18d28594bf9184666f5ad87'/>
<id>urn:sha1:c8defe864ce659efb18d28594bf9184666f5ad87</id>
<content type='text'>
I don't see a justification for this.  Rather than updating this code
for the new distinction between what is going to be Incomplete (ie,
our buffer didn't contain enough data and we want to read more) and
MissingData, I think we can just do away with it.

Perhaps in the future, tor_bytes::Error would implement HasKind.
</content>
</entry>
<entry>
<title>Change tor_bytes::Readable name to `b` in many places</title>
<updated>2024-09-11T12:22:39Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-09-10T14:34:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=040db873ed95f9d24ed9d0162d75b9c8a11e457f'/>
<id>urn:sha1:040db873ed95f9d24ed9d0162d75b9c8a11e457f</id>
<content type='text'>
The codebase uses `r` sometimes and `b` at other times.
Making this consistent makes widespread changes easier, and is
clearer for humans.

I think `b` is better than `r` because `r` might be "return".
It is indeed used that way in a couple of places in reader.rs, even.

I haven't changed *everywhere*, just Readable impls (where `r` is
particularly likely to be "return value") and occurrences in
tor-bytes.

No functional change.
</content>
</entry>
<entry>
<title>tor-bytes: Add a deficit field to Error::Truncated</title>
<updated>2024-09-10T09:10:19Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-09-05T15:48:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2ae6523dbfc6f3b26ffdc2465f93afab6de3c542'/>
<id>urn:sha1:2ae6523dbfc6f3b26ffdc2465f93afab6de3c542</id>
<content type='text'>
This will allow us to fix #1592, but it doesn't do so yet.
</content>
</entry>
<entry>
<title>tor-proto::circuit::StreamMap: Use StreamPollSet</title>
<updated>2024-08-01T17:46:45Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2024-07-24T02:04:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5ca9f0c04dc1bc61deb68ced03a375a850cbef5c'/>
<id>urn:sha1:5ca9f0c04dc1bc61deb68ced03a375a850cbef5c</id>
<content type='text'>
* Refactors `StreamMap` to use `StreamPollSet` to manage its receivers
  for mpsc streams.
* Extends `StreamMap` to support iterating only over streams that have a
  pending outgoing message, and in round-robin order.
* Updates `circuit::reactor::Reactor` to use this functionality. It now
  iterates only over streams that have a ready outgoing message, and
  only actually "pops" a message that is ready to be sent.

This mildly simplifies the circuit reactor, but more importantly clears
the way to:

* Remove the "outbound queue" of messages that were pulled from stream
  channels but that we couldn't send yet due to congestion control.
* Support opportunistic packing when preparing to send a relay message.
  (proposal 340).
* Refactor the circuit reactor's `run_once` into futures that we can
  `select!` over.
</content>
</entry>
<entry>
<title>Fix clippy::doc_lazy_continuation</title>
<updated>2024-07-08T10:36:25Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-07-08T10:31:47Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c4fe208c7184c020b5418840ebc5f4044c1601c6'/>
<id>urn:sha1:c4fe208c7184c020b5418840ebc5f4044c1601c6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix indentation from last commit.</title>
<updated>2024-05-07T16:23:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-07T16:23:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=06626ed2b5111a8aad50a8569f08486acd0c51d4'/>
<id>urn:sha1:06626ed2b5111a8aad50a8569f08486acd0c51d4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-cell: Allow unuexpected_cfgs in restricted macro.</title>
<updated>2024-05-07T16:22:16Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-07T16:22:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ab6f9228c2fa03e405717205508ec516f90134fd'/>
<id>urn:sha1:ab6f9228c2fa03e405717205508ec516f90134fd</id>
<content type='text'>
(We need this to permit our usage of our $omit_from hack.)
</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>
</feed>
