<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-guardmgr, branch arti-v0.0.3</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.0.3</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.0.3'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-01-11T14:40:32Z</updated>
<entry>
<title>Bump all crate versions to 0.0.3.</title>
<updated>2022-01-11T14:40:32Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-11T14:40:32Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7d3482ca1ae7249b73feeca98595bae5f4c6afe9'/>
<id>urn:sha1:7d3482ca1ae7249b73feeca98595bae5f4c6afe9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'ticket_178' into 'main'</title>
<updated>2022-01-10T14:02:24Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2022-01-10T14:02:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=da848a1b9cb4cf6b829f24a4b7b994ba9e60b6ae'/>
<id>urn:sha1:da848a1b9cb4cf6b829f24a4b7b994ba9e60b6ae</id>
<content type='text'>
Fix ticket 178: Don't use a NetDir until we have microdescriptors for all of our primary guards.

Closes #178

See merge request tpo/core/arti!220</content>
</entry>
<entry>
<title>Minimize the required version for each dependency.</title>
<updated>2022-01-08T00:08:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-07T20:54:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4841b50c9fc35713d3c1afcccb3353f257deedd7'/>
<id>urn:sha1:4841b50c9fc35713d3c1afcccb3353f257deedd7</id>
<content type='text'>
I found these versions empirically, by using the following process:

First, I used `cargo tree --depth 1 --kind all` to get a list of
every immediate dependency we had.

Then, I used `cargo upgrade --workspace package@version` to change
each dependency to the earliest version with which (in theory) the
current version is semver-compatible.  IOW, if the current version
was 3.2.3, I picked "3".  If the current version was 0.12.8, I
picked "0.12".

Then, I used `cargo +nightly upgrade -Z minimal-versions` to
downgrade Cargo.lock to the minimal listed version for each
dependency.  (I had to override a few packages; see .gitlab-ci.yml
for details).

Finally, I repeatedly increased the version of each of our
dependencies until our code compiled and the tests passed.  Here's
what I found that we need:

anyhow &gt;= 1.0.5: Earlier versions break our hyper example.

async-broadcast &gt;= 0.3.2: Earlier versions fail our tests.

async-compression 0.3.5: Earlier versions handled futures and tokio
    differently.

async-trait &gt;= 0.1.2: Earlier versions are too buggy to compile our
    code.

clap 2.33.0: For Arg::default_value_os().

coarsetime &gt;= 0.1.20: exposed as_ticks() function.

curve25519-dalek &gt;= 3.2: For is_identity().

generic-array 0.14.3: Earlier versions don't implement
    From&lt;&amp;[T; 32]&gt;

httparse &gt;= 1.2: Earlier versions didn't implement Error.

itertools at 0.10.1: For at_most_once.

rusqlite &gt;= 0.26.3: for backward compatibility with older rustc.

serde 1.0.103: Older versions break our code.

serde_json &gt;= 1.0.50: Since we need its Value type to implement Eq.

shellexpand &gt;= 2.1: To avoid a broken dirs crate version.

tokio &gt;= 1.4: For Handle::block_on().

tracing &gt;= 0.1.18: Previously, tracing_core and tracing had separate
    LevelFilter types.

typenum &gt;= 1.12: Compatibility with rust-crypto crates

x25519-dalek &gt;= 1.2.0: For was_contributory().

Closes #275.
</content>
</entry>
<entry>
<title>Tests for new guardmgr functionality.</title>
<updated>2022-01-06T20:58:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-06T20:11:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=723894b9eaa271e82006316f237e8978663a451f'/>
<id>urn:sha1:723894b9eaa271e82006316f237e8978663a451f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add API to check if primary MDs are missing.</title>
<updated>2022-01-06T20:58:23Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-06T15:23:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5ac0fcb7ef603e0d145a619ee148ce1262aa31f8'/>
<id>urn:sha1:5ac0fcb7ef603e0d145a619ee148ce1262aa31f8</id>
<content type='text'>
We need this information to know if it's okay to migrate to a new
NetDir, or if we need to download more information first.

Part of #178.
</content>
</entry>
<entry>
<title>guardmgr: Don't use no-md guards for data circs.</title>
<updated>2022-01-06T14:52:21Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-06T14:52:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=db65fdd04e299f168ebf497a8c6e2cc5db19712e'/>
<id>urn:sha1:db65fdd04e299f168ebf497a8c6e2cc5db19712e</id>
<content type='text'>
If we don't know a current microdescriptor for a guard, we can't use it
for multihop circuits, since we don't know its onion keys.

This is part of a fix for #178.
</content>
</entry>
<entry>
<title>extend lints to include 'clippy::all'</title>
<updated>2021-12-28T20:15:40Z</updated>
<author>
<name>Daniel Eades</name>
<email>danieleades@hotmail.com</email>
</author>
<published>2021-12-28T20:15:40Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=592642a9e6c1c03e525f8b452f4b97e6fd17ff9b'/>
<id>urn:sha1:592642a9e6c1c03e525f8b452f4b97e6fd17ff9b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove unused started_at PendingRequest</title>
<updated>2021-12-14T18:33:47Z</updated>
<author>
<name>Neel Chauhan</name>
<email>neel@neelc.org</email>
</author>
<published>2021-12-14T18:33:47Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ee16c690756df8cc4c3717d10c57b34888158623'/>
<id>urn:sha1:ee16c690756df8cc4c3717d10c57b34888158623</id>
<content type='text'>
</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>Merge branch 'bug183a_redux' into 'main'</title>
<updated>2021-12-07T16:01:30Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2021-12-07T16:01:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a3f2e32485219a6e7b6776a506997b6e1c193193'/>
<id>urn:sha1:a3f2e32485219a6e7b6776a506997b6e1c193193</id>
<content type='text'>
Squash, refactor, and test !139 (Don't use same family as exit when picking a guard)

Closes #183

See merge request tpo/core/arti!173</content>
</entry>
</feed>
