<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-rtmock/src/net_runtime.rs, branch arti-v1.2.0</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.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.2.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2023-07-07T09:26:44Z</updated>
<entry>
<title>tor-rtmock: Use derive-adhoc for composite runtimes</title>
<updated>2023-07-07T09:26:44Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-07-06T14:46:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6e495d8400e9e5b0deb087d572f821d7fd802b8f'/>
<id>urn:sha1:6e495d8400e9e5b0deb087d572f821d7fd802b8f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-rtmock: Use the same specified field for BlockOn and Spawn</title>
<updated>2023-07-06T14:58:42Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-07-06T14:34:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f0168b5220b47ea5563893d0e57f2b26a1c3be61'/>
<id>urn:sha1:f0168b5220b47ea5563893d0e57f2b26a1c3be61</id>
<content type='text'>
These are always the same and probably always will be.
</content>
</entry>
<entry>
<title>tor-rtmock: net: "Provide" a UDP "implementation" which doesn't work</title>
<updated>2023-07-06T14:14:40Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-07-05T11:28:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=395a616c9f1a513c2905548aa13d5345cd1b937c'/>
<id>urn:sha1:395a616c9f1a513c2905548aa13d5345cd1b937c</id>
<content type='text'>
Nothing in our tree actually *uses* the UDP in tests.

We want a mock UDP provider that isn't part of a real runtime, so that
we can make a totally-mock runtime for properly controlled testing.

It seems best to make this part of MockNetProvider rather than a
separate type.
</content>
</entry>
<entry>
<title>tor-rtmock: Introduce impl_runtime_prelude</title>
<updated>2023-07-06T14:14:40Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-07-05T10:01:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=492699d52207001fd9eb2bf9bfb6899e47c01234'/>
<id>urn:sha1:492699d52207001fd9eb2bf9bfb6899e47c01234</id>
<content type='text'>
This deduplicates some imports, which would otherwise be about to
become triplicated.
</content>
</entry>
<entry>
<title>tor-rtmock: Introduce impl_runtime! macro</title>
<updated>2023-07-06T14:14:40Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-07-04T15:17:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=97e817b330853e468268a6b43a310d7e305bd989'/>
<id>urn:sha1:97e817b330853e468268a6b43a310d7e305bd989</id>
<content type='text'>
This deduplicates some trait delegation.

We want this now because we're about to introduce a third mock
runtime, so this would become triplication otherwise.
</content>
</entry>
<entry>
<title>Improve documentation around Cargo features; make Runtime require Debug</title>
<updated>2022-05-11T12:26:35Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2022-05-11T12:26:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=864fd03917a0409c6a0380c258d96252359a559b'/>
<id>urn:sha1:864fd03917a0409c6a0380c258d96252359a559b</id>
<content type='text'>
- arti#445 highlighted the lack of good documentation around Arti's
  multiple runtime support, as well as it being difficult to determine
  what runtime was actually in use.
- Improve the documentation to solve the first problem.
- To solve the second problem, make Runtime require Debug (which is
  arguably a good idea anyway, since it makes them easier to embed in
  things), and print out the current runtime's Debug information when
  arti is invoked with `--version`.
- (It also prints out other Cargo features, too!)

fixes arti#445
</content>
</entry>
<entry>
<title>add udp to runtime</title>
<updated>2022-03-14T19:59:33Z</updated>
<author>
<name>trinity-1686a</name>
<email>trinity@deuxfleurs.fr</email>
</author>
<published>2022-03-05T18:49:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4a44ef56c0743775d49eca138a253f11e93c7a35'/>
<id>urn:sha1:4a44ef56c0743775d49eca138a253f11e93c7a35</id>
<content type='text'>
</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>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>Resolve roughly half of the XXXXs.</title>
<updated>2021-12-06T20:11:03Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-12-06T20:01:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=31b385c5b20205e879a847a9331c30a37dc2e6f5'/>
<id>urn:sha1:31b385c5b20205e879a847a9331c30a37dc2e6f5</id>
<content type='text'>
We want to only use TODO in the codebase for non-blockers, and open
tickets for anything that is a bigger blocker than a TODO.  These
XXXXs seem like definite non-blockers to me.

Part of arti#231.
</content>
</entry>
</feed>
