<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-dirmgr/src/lib.rs, branch arti-v0.6.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.6.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.6.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-07-26T09:41:38Z</updated>
<entry>
<title>tor-dirmgr: Remove opt_netdir entirely.</title>
<updated>2022-07-26T09:41:38Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-07-25T16:22:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=14cd423630681b22b0836647f923c8e388242f8a'/>
<id>urn:sha1:14cd423630681b22b0836647f923c8e388242f8a</id>
<content type='text'>
Its existence tended to hide bugs, and was just asking for trouble.
</content>
</entry>
<entry>
<title>Remove unused DirMgr::netdir method, make opt_netdir private.</title>
<updated>2022-07-26T09:41:06Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-07-25T15:06:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=de460b066830a2749ecbca3f097740864252463d'/>
<id>urn:sha1:de460b066830a2749ecbca3f097740864252463d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add new APIs to NetDirProvider to better support timeliness.</title>
<updated>2022-07-26T09:40:53Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-07-25T14:55:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c39aa5de73fb8f1747752b7b722e8b94b01e315b'/>
<id>urn:sha1:c39aa5de73fb8f1747752b7b722e8b94b01e315b</id>
<content type='text'>
Over the years we've found that most callers who want a netdir want
what C Tor calls a "reasonably live" network directory: One that is
not expired by too much, or too far in the future. But a few want a
_strictly_ live directory: one that says it is valid now, with no
tolerances.  And a few want _any_ directory, no matter how expired
it is.

This commit adds net methods to NetDirProvider to provide these
directories.  I think that most use cases will want to explicitly
think about what kind of directory they want, so I've made `netdir`
the simplest method.  I might remove `timely_netdir` by the end of
this branch; see TODO comments.

Part of #518.
</content>
</entry>
<entry>
<title>Rename DirSkewTolerance to DirTolerance</title>
<updated>2022-07-22T14:04:25Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-07-22T14:04:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=41104137b12159d734f1171c1705c4e00f5244cd'/>
<id>urn:sha1:41104137b12159d734f1171c1705c4e00f5244cd</id>
<content type='text'>
This name is more accurate because we aren't only dealing with
clock skew here: we're also trying to tolerate the case where the
authorities fail to reach consensus for a while.
</content>
</entry>
<entry>
<title>Run maint/add_warning crates/*/src/{lib,main}.rs</title>
<updated>2022-06-23T18:15:42Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-06-23T18:15:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=589c6e52bb49ccfe6c0ad9d18d6b994978e46c6c'/>
<id>urn:sha1:589c6e52bb49ccfe6c0ad9d18d6b994978e46c6c</id>
<content type='text'>
Update all lint blocks
</content>
</entry>
<entry>
<title>Merge branch 'stalled_directory' into 'main'</title>
<updated>2022-06-21T19:13:40Z</updated>
<author>
<name>Ian Jackson</name>
<email>iwj@torproject.org</email>
</author>
<published>2022-06-21T19:13:40Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9b4ba4893e35eecbc3fdcf6b03a1043698851088'/>
<id>urn:sha1:9b4ba4893e35eecbc3fdcf6b03a1043698851088</id>
<content type='text'>
Detect and report stalled directory downloads

Closes #468

See merge request tpo/core/arti!587</content>
</entry>
<entry>
<title>Fix clippy::significant_drop_in_scrutinee warnings</title>
<updated>2022-06-15T15:52:30Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-06-14T18:52:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=647d4410bb263499f11f21a82ff6b414140e820d'/>
<id>urn:sha1:647d4410bb263499f11f21a82ff6b414140e820d</id>
<content type='text'>
This is apparently a new warning from clippy nightly, documented in
https://rust-lang.github.io/rust-clippy/master/index.html#significant_drop_in_scrutinee .

I'm not in love with the temporary variables that this warning wants
me to introduce, but it does seem like a decent way to avoid some
kinds of deadlock.
</content>
</entry>
<entry>
<title>tor-dirmgr: Make DirStatus non-public.</title>
<updated>2022-06-14T15:02:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-06-14T15:02:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c74c268c8b6405e51da9d8f581683237366bd90b'/>
<id>urn:sha1:c74c268c8b6405e51da9d8f581683237366bd90b</id>
<content type='text'>
I believe this type was made public in error: No other crate uses it,
and no API exposes it.
</content>
</entry>
<entry>
<title>Add a blockage-reporting mechanism to tor-dirmgr.</title>
<updated>2022-06-14T14:42:18Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-06-14T14:42:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e3dced360b6a13df0d111cd96ba6d8730a5a4fbb'/>
<id>urn:sha1:e3dced360b6a13df0d111cd96ba6d8730a5a4fbb</id>
<content type='text'>
The `DirBootstrapStatus` type now exposes a blockage() method to
return an `Option&lt;DirBlockage&gt;`.

The blockage types reported are more low-level than I'd like, but
they are IMO good enough for now: we'll want to get experience with
actual vs hypothetical problems before we refine them.
</content>
</entry>
<entry>
<title>DirMgr: Track errors, stalls, and resets as part of status.</title>
<updated>2022-06-13T17:58:31Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-06-13T17:58:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=13c152d2ac853296124b898389e550557dde98cc'/>
<id>urn:sha1:13c152d2ac853296124b898389e550557dde98cc</id>
<content type='text'>
A "reset" happens whenever we have to start a download attempt over
-- either because we ran out of retries, or we found something wrong
with the consensus after fetching certificates.

An "error" happens when we have a recoverable error from one or more
directory sources.

A "stall" happens whenever a round of downloads or cache loads leads
to no change in the status.

We don't yet use this as part of our status reporting.
</content>
</entry>
</feed>
