<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/tor-circmgr/src/path/dirpath.rs, branch arti-v0.0.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.0.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.0.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2021-06-16T19:22:40Z</updated>
<entry>
<title>more improvements to circmgr tests.</title>
<updated>2021-06-16T19:22:40Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-06-16T19:22:40Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4517e6eaa20f0823460d99a1f3042c95d8d7a192'/>
<id>urn:sha1:4517e6eaa20f0823460d99a1f3042c95d8d7a192</id>
<content type='text'>
</content>
</entry>
<entry>
<title>More tests on circmgr::path.</title>
<updated>2021-06-16T19:08:52Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-06-16T19:08:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1b6cf24087ce237766d1792eaadff9ebb3128cd0'/>
<id>urn:sha1:1b6cf24087ce237766d1792eaadff9ebb3128cd0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: tests for path/dirpath.rs</title>
<updated>2021-06-16T17:24:11Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-06-16T17:24:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4e3e1982be6193ca490f4dbeea6778e9f29dca5c'/>
<id>urn:sha1:4e3e1982be6193ca490f4dbeea6778e9f29dca5c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enormous tor-circmgr rewrite.</title>
<updated>2021-06-14T16:12:31Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-05-27T19:48:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=83b1150c812f756b654727041111105f30bedab0'/>
<id>urn:sha1:83b1150c812f756b654727041111105f30bedab0</id>
<content type='text'>
As with the tor-chanmgr code, the circuit manager is now implemented
using an AbstractCircMgr type that uses traits to abstract the
particular behavior of other types that it uses.  (Specifically:
circuits, building circuits, and telling whether one circuit usage
is compatible with another.)  Abstracting out the dependencies in
this ways makes it possible to test the circuit manager without
having to actually build real circuits.

This commit also introduces new behavior for handling pending
circuit requests.  Upon getting a new request, first we check to see
if there's an existing circuit we can use.  If there isn't, we look
for pending circuits and wait for them.  If there aren't any pending
circuits we can use, we launch one or more, and wait for them.

So far, that's the same as the old behavior.  But here's a change:
if, while we are waiting for some pending circuits, a different
circuit is completed, and it's one we could use, then the task that
was building _that_ circuit will tell us: "please look at this
circuit".  This gives us better changes of getting a usable circuit
fast.

Minor changes:

* The Error type in CircMgr no longer uses anyhow; several errors
  have been simplified.

* We've gotten more formal about the relationship between circuit
  usage and target usage.
</content>
</entry>
<entry>
<title>Refactor TorPath code to have explicit constructors.</title>
<updated>2021-05-20T18:10:11Z</updated>
<author>
<name>Alexander Færøy</name>
<email>ahf@torproject.org</email>
</author>
<published>2021-05-20T16:26:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=00222dbe07ecfa5e0901076076877a4233b515a6'/>
<id>urn:sha1:00222dbe07ecfa5e0901076076877a4233b515a6</id>
<content type='text'>
This patch refactors the internal representation of the TorPath type to
use an enum for representing its state. We add explicit constructor
methods to create the different types of path's, such that client users
can write code that uses different paths based on their need.

This work was done together with Nick as part of the Arti hackathon.
</content>
</entry>
<entry>
<title>Enforce (and obey) clippy lints about exhaustive enums, structs.</title>
<updated>2021-04-27T18:17:49Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-04-27T18:17:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2e3780affb54988bee60ab634a408dffd224cd3a'/>
<id>urn:sha1:2e3780affb54988bee60ab634a408dffd224cd3a</id>
<content type='text'>
These lints force us to declare our exported enums and
exhaustive-looking structs as non-exhaustive (so that we can add to
them in the future without breaking our API) or to explicitly
disable the warning for a given enum/struct (to say that we _intend_
for additions to be a breaking change).
</content>
</entry>
<entry>
<title>Make authorities and fallbacks configurable.</title>
<updated>2021-02-11T18:08:46Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2021-02-11T17:32:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=aeb410b915ea9f818f02dfeb2d4db291f5efd599'/>
<id>urn:sha1:aeb410b915ea9f818f02dfeb2d4db291f5efd599</id>
<content type='text'>
This commit adds configuration options for these values, with the
right defaults, and uses those options instead of built-in functions
to set them.

We also remove the function to extract information from chutney
directories: now that arti is configurable, it can be chutney's job
to make its own network configurations.
</content>
</entry>
<entry>
<title>Mark some XXXX issues as XXXX-A1.</title>
<updated>2020-12-07T21:07:59Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2020-12-07T18:24:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a52585d9d67cade75dd6010252882f128e0eaf58'/>
<id>urn:sha1:a52585d9d67cade75dd6010252882f128e0eaf58</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Implement correct (?) weighting for path selection.</title>
<updated>2020-12-02T18:51:19Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2020-12-02T18:44:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=412f1763dea92f0d066d5a88d73569e320349cb1'/>
<id>urn:sha1:412f1763dea92f0d066d5a88d73569e320349cb1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add support for using fallback directories in path construction</title>
<updated>2020-11-19T15:06:48Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2020-11-19T15:06:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=02bac5f04ea6fa793b53ed59d0988ad158abfcd8'/>
<id>urn:sha1:02bac5f04ea6fa793b53ed59d0988ad158abfcd8</id>
<content type='text'>
This is mainly a refactoring commit, with a little new code.

It also adds #[derive(Copy,Clone)] for a few types.
</content>
</entry>
</feed>
