<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-guardmgr/Cargo.toml, branch arti-v0.1.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.1.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.1.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-03-01T13:59:34Z</updated>
<entry>
<title>Bump all crates to 0.1.0</title>
<updated>2022-03-01T13:59:34Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-01T13:59:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e8e9791a9757a32779657c5284b380ae91ca7979'/>
<id>urn:sha1:e8e9791a9757a32779657c5284b380ae91ca7979</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make coarsetime dependency and traffic-timestamping non-optional.</title>
<updated>2022-02-25T15:31:01Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-25T15:31:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3d7d609922586e5824420dcb9d0017440cba66d4'/>
<id>urn:sha1:3d7d609922586e5824420dcb9d0017440cba66d4</id>
<content type='text'>
Previously coarsetime and the traffic-timestamp feature were
enabled, since they were only required for a small corner of the
guardmgr algorithm.

But in 1.0 and beyond we'll be adding a bunch of other features (eg,
netflow padding, DoS prevention) that will need coarsetime all over
the place.

And since we're going to be doing coarsetime all over the place, the
previous justification for making traffic-timestamping optional (the
tiny performance hit) is no longer relevant.
</content>
</entry>
<entry>
<title>spawn errors: impl HasKind for futures::SpawnError</title>
<updated>2022-02-04T14:42:37Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-01-21T15:45:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=68d0ec437f0068335251fe8bf5971a16fb063268'/>
<id>urn:sha1:68d0ec437f0068335251fe8bf5971a16fb063268</id>
<content type='text'>
This needs two kinds.  We have decided to treat a non-shutdown
SpawnError as "unexplained" rather than as an InternalError.

There are many crates whose
  From&lt;futures::task::SpawnError&gt; for Error
erroneously treat it as an internal error.  We will fix them in a moment.
</content>
</entry>
<entry>
<title>Upgrade required version of futures crate to 0.3.14</title>
<updated>2022-02-01T14:54:47Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-28T19:50:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c8dd73d55f69c75216ddc69fbca4283e1ae9a595'/>
<id>urn:sha1:c8dd73d55f69c75216ddc69fbca4283e1ae9a595</id>
<content type='text'>
Earlier versions have a bug in UnboundedReceiver that make our new
dirclient tests fail.
</content>
</entry>
<entry>
<title>Bump tor-netdir and tor-guardmgr versions</title>
<updated>2022-01-31T16:05:34Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-31T16:05:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=329bde58ddc572cc6db198da279f180a1ac6895d'/>
<id>urn:sha1:329bde58ddc572cc6db198da279f180a1ac6895d</id>
<content type='text'>
tor-netdir needs to bump because tor-netdoc bumped, even though
there were no other changes in tor-netdir.  Whoops.

tor-guardmgr needs to bump because it already published, with the
older tor-netdir.
</content>
</entry>
<entry>
<title>Bump the patch version of every crate that changed since 0.0.3</title>
<updated>2022-01-31T15:30:52Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-31T15:30:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=01d99373089f8131d1df9758fce45ffaa3fbf659'/>
<id>urn:sha1:01d99373089f8131d1df9758fce45ffaa3fbf659</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make the native-tls crate optional.</title>
<updated>2022-01-26T19:06:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-26T15:53:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=30b3818a9e31b0ebe96d4a32aa9bceb16610f994'/>
<id>urn:sha1:30b3818a9e31b0ebe96d4a32aa9bceb16610f994</id>
<content type='text'>
This commit puts the native-tls crate behind a feature.  The feature
is off-by-default in the tor-rtcompat crate, but can be enabled
either from arti or arti-client.

There is an included script that I used to test that tor-rtcompat
could build and run its tests with all subsets of its features.

Closes #300
</content>
</entry>
<entry>
<title>guardmgr::..::sample_test: Fix intermittent failure.</title>
<updated>2022-01-11T16:35:16Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-01-10T20:54:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f89b0bc752bb45211e265404dd1dbe3ecf568be9'/>
<id>urn:sha1:f89b0bc752bb45211e265404dd1dbe3ecf568be9</id>
<content type='text'>
This test should only fail very rarely (around 1/2.4e8) when guards
are chosen from a list of 20 with uniform probability.  But that
wasn't what we were doing on the mock test network: we were choosing
from a list of 10 viable guards, with nonuniform probability.

As a fix, we change the test network probabilities so that the
guards _are_ chosen with a uniform probability for this test, and we
use a modified version of the test network where there are indeed 20
Guard-flagged relays with the required DirCache=2 protocol.

Closes #276.
</content>
</entry>
<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>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>
</feed>
