<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-dirmgr/src/retry.rs, branch arti-v0.4.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.4.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.4.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-05-05T09:35:52Z</updated>
<entry>
<title>config derive attrs: Make builders serde, and validated structs not</title>
<updated>2022-05-05T09:35:52Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-05-04T16:45:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d47e94b45993162fece0d1bdfa4d3da0407a4861'/>
<id>urn:sha1:d47e94b45993162fece0d1bdfa4d3da0407a4861</id>
<content type='text'>
 * Builders additionally derive: Debug, Serialize, Deserialize.

 * Validated structs no longer derive: Serialize, Deserialize
   and all related attributes deleted.

 * As a consequence, all the `#[serde(deny_unknown_fields)]`
   are gone.  That means that right now unknown fields are totally
   ignored.  This is good for compatibility but poor for useability.
   Doing something better here is arti#417, in progress.

 * As a consequence, delete tor_dirmgr::retry::default_parallelism.
   (The default value was already duplicated into a builder attr.)
</content>
</entry>
<entry>
<title>Merge branch 'download-schedule' into 'main'</title>
<updated>2022-04-26T18:47:08Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-26T18:47:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5484bcc21f89d19d30e6351670c36359c132f718'/>
<id>urn:sha1:5484bcc21f89d19d30e6351670c36359c132f718</id>
<content type='text'>
DownloadSchedule: Introduce Builder

See merge request tpo/core/arti!473</content>
</entry>
<entry>
<title>Make DownloadScheduleBuilder "alternative" defaults pub(crate)</title>
<updated>2022-04-26T18:01:20Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-26T17:59:10Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4a32bcd4d3870b2ea5137d6ffeb70bebadcf5ccb'/>
<id>urn:sha1:4a32bcd4d3870b2ea5137d6ffeb70bebadcf5ccb</id>
<content type='text'>
As per
  https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/473#note_2798464
</content>
</entry>
<entry>
<title>Fix typo in message</title>
<updated>2022-04-26T17:40:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-26T17:40:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4643e1dd249841f590e441cb9a9e8ef6ba750cba'/>
<id>urn:sha1:4643e1dd249841f590e441cb9a9e8ef6ba750cba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>DownloadSchedule: Rename field to "attempts"</title>
<updated>2022-04-26T14:16:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-26T14:14:26Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ed718581233b40a159716f34d56a46c58ebee651'/>
<id>urn:sha1:ed718581233b40a159716f34d56a46c58ebee651</id>
<content type='text'>
This is actually a number of *attempts* not a number of *retries*.
The setter method was already called "attempts".

This chnages the deserialisation of the config.
</content>
</entry>
<entry>
<title>DownloadSchudule: Have NetworkConfig contain Builders</title>
<updated>2022-04-26T14:16:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-26T13:46:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=eb35555330d84ef931dbfd446f5495ff0172b17e'/>
<id>urn:sha1:eb35555330d84ef931dbfd446f5495ff0172b17e</id>
<content type='text'>
Use sub_builder.  We must do something special for defaults.

This involves moving the actual default values for retry_bootstrap and
retry_microdescs into config.rs, since they need to access the fields
of the un-built version of the structure.  (An alternative would be to
generate "weak setters" which do not override previous settings, but
derive_builder does not offer to generate them and that seems
overkill.)
</content>
</entry>
<entry>
<title>DownloadSchedule: Abolish new() method</title>
<updated>2022-04-26T14:16:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-25T18:26:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f4a1e34beebbd891f2a3f1474028ac6ac7f738b2'/>
<id>urn:sha1:f4a1e34beebbd891f2a3f1474028ac6ac7f738b2</id>
<content type='text'>
Instead, everyone should use DownloadScheduleBuilder.

The new() method would in any case be useless in a moment, since we're
going to embed DownloadScheduleBuilder in the NetworkConfig, not
DownloadSchedule.

The call sites in the tests are all about to change again.
</content>
</entry>
<entry>
<title>DownloadSchedule: tests: Do not try to set parallelism to 0</title>
<updated>2022-04-26T14:16:03Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-26T13:53:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e1d1fe65692e11a5ba7a751e59723ab00e764d43'/>
<id>urn:sha1:e1d1fe65692e11a5ba7a751e59723ab00e764d43</id>
<content type='text'>
The current behaviour is to treat 0 as indicating "use the default",
which is quite strange.  We are going to get rid of that.

The new way will be to reject zero, during
DownloadScheduleBuilder::build, Add a test case for that.
</content>
</entry>
<entry>
<title>DownloadSchedule: Provide builder</title>
<updated>2022-04-26T14:16:03Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-25T18:19:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a720205d35135955025835f13c58a875f898bfd5'/>
<id>urn:sha1:a720205d35135955025835f13c58a875f898bfd5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>squash! Bump every crate's edition to 2021.</title>
<updated>2022-04-25T17:06:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-25T16:40:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2f6bc6bdc431fa36de70a167eea777dcf3f60bf2'/>
<id>urn:sha1:2f6bc6bdc431fa36de70a167eea777dcf3f60bf2</id>
<content type='text'>
Remove all `use` statements for `TryFrom` and `TryInto`.  These are
now redundant in Rust 2021.
</content>
</entry>
</feed>
