<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-rtcompat/src/impls/tokio.rs, branch derive-traits</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=derive-traits</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=derive-traits'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-01-27T20:52:59Z</updated>
<entry>
<title>tor-rtcompat: remove some unused code.</title>
<updated>2022-01-27T20:52:59Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-27T20:52:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=19f878b3aa7b648605487f94871ab3e5c5b949fd'/>
<id>urn:sha1:19f878b3aa7b648605487f94871ab3e5c5b949fd</id>
<content type='text'>
Nothing actually used these accessor functions, and it's not clear
what would.  We can add them later if they're needed.
</content>
</entry>
<entry>
<title>Rename `SpawnBlocking` trait to `BlockOn`.</title>
<updated>2022-01-26T19:06:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-26T18:59:37Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bf8fa66d36298561cc868706f748049cec23f5eb'/>
<id>urn:sha1:bf8fa66d36298561cc868706f748049cec23f5eb</id>
<content type='text'>
This avoids a future confusion with the new `SpawnBlocking` trait in
async_executors v0.5, and better describes what the trait provides.
</content>
</entry>
<entry>
<title>Remove no-longer-needed tokio runtime helper macro</title>
<updated>2022-01-26T19:06:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-25T22:58:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=99c59a8f2b3d1d97110ecdfc1021668f88177c85'/>
<id>urn:sha1:99c59a8f2b3d1d97110ecdfc1021668f88177c85</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Unify TokioRuntime and TokioRuntimeHandle</title>
<updated>2022-01-26T19:06:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-25T21:52:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=668364d75d5fec06d235a684dfc6c8c89e543503'/>
<id>urn:sha1:668364d75d5fec06d235a684dfc6c8c89e543503</id>
<content type='text'>
Having separate types here doesn't justify the (very limited)
benefit of distinguishing between the case where we have created an
executor that we own and the case where we have a handle to an
already-running tokio executor.

Part of #301.
</content>
</entry>
<entry>
<title>Refactor native_tls usage into its own module</title>
<updated>2022-01-25T18:16:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-24T20:12:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d1d121aac6c6dd5bd0b31ef6e01614da36071221'/>
<id>urn:sha1:d1d121aac6c6dd5bd0b31ef6e01614da36071221</id>
<content type='text'>
This change uses the async-native-tls crate for everything, and
deletes some duplicated code.
</content>
</entry>
<entry>
<title>tor-rtcompat: Add support for rustls.</title>
<updated>2022-01-25T18:16:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-21T14:28:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8def5a0d89603c8f1cfd91109bb439f1881d968f'/>
<id>urn:sha1:8def5a0d89603c8f1cfd91109bb439f1881d968f</id>
<content type='text'>
This is based on @janimo's approach in !74, but diverges in a few
important ways.

1. It assumes that something like !251 will merge, so that we can
   have separate implementations for native_tls and rustls compiled
   at the same time.

2. It assumes that we can implement this for the futures::io traits
   only with no real penalty.

3. It uses the `x509-signature` crate to work around the pickiness of
   the `webpki` crate.  If webpki eventually solves their
   [bug 219](https://github.com/briansmith/webpki/issues/219), we
   can remove a lot of that workaround.

Closes #86.
</content>
</entry>
<entry>
<title>Refactor Runtimes to use separate TLS implementations internally.</title>
<updated>2022-01-19T20:47:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-19T19:12:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=17920e43f84fd6c4c3f9abe77c7b477d6c17602c'/>
<id>urn:sha1:17920e43f84fd6c4c3f9abe77c7b477d6c17602c</id>
<content type='text'>
This will make it easier to implement them using some other TLS
provider as well, without having to duplicate all of our code.
</content>
</entry>
<entry>
<title>Make TlsConnector wrap TCP connections, not create its own</title>
<updated>2021-12-07T17:00:40Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2021-12-02T11:44:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b14c5f370eef0a4fc1d2504ce54de1a921472567'/>
<id>urn:sha1:b14c5f370eef0a4fc1d2504ce54de1a921472567</id>
<content type='text'>
`tor-rtcompat`'s `TlsConnector` trait previously included a method to
create a TLS-over-TCP connection, which implied creating a TCP stream
inside that method. This commit changes that, and makes the function
wrap a TCP stream, as returned from the runtime's `TcpProvider` trait
implementation, instead.

This means you can actually override `TcpProvider` and have it apply to
*all* connections Arti makes, which is useful for issues like arti#235
and other cases where you want to have a custom TCP stream
implementation.

This required updating the mock TCP/TLS types in `tor-rtmock` slightly;
due to the change in API, we now store whether a `LocalStream` should
actually be a TLS stream inside the stream itself, and check this
property on reads/writes in order to detect misuse. The fake TLS wrapper
checks this property and removes it in order to "wrap" the stream,
making reads and writes work again.
</content>
</entry>
<entry>
<title>Document every macro.</title>
<updated>2021-09-07T12:44:47Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-09-07T12:44:47Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bd2c9fd8c139303ff2965843c6e952e6ae152149'/>
<id>urn:sha1:bd2c9fd8c139303ff2965843c6e952e6ae152149</id>
<content type='text'>
(The nightly version of clippy now includes macros for its
missing_docs_in_private_items lint.)
</content>
</entry>
<entry>
<title>Move all crates into a `crates` subdirectory.</title>
<updated>2021-08-27T13:53:09Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-08-27T13:53:09Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=557a0ff40b3731d4690767de27010bbeff08777d'/>
<id>urn:sha1:557a0ff40b3731d4690767de27010bbeff08777d</id>
<content type='text'>
This will cause some pain for now, but now is really the best time
to do this kind of thing.
</content>
</entry>
</feed>
