<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-dirserver, branch arti-v2.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-v2.0.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.0.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-02-02T17:03:49Z</updated>
<entry>
<title>release: Bump `arti-*` and `tor-*` crates to 0.39.0</title>
<updated>2026-02-02T17:03:49Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2026-02-02T16:41:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b80fc6060ca05104f6a2d499b39778cd51bb1b76'/>
<id>urn:sha1:b80fc6060ca05104f6a2d499b39778cd51bb1b76</id>
<content type='text'>
Done via:

```
for crate in $(./maint/list-crates  | rg '^(tor|arti-)'); do
        cargo set-version -p $crate 0.39.0
done
```
</content>
</entry>
<entry>
<title>release: run fixup-features.</title>
<updated>2026-01-29T20:36:22Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2026-01-29T20:36:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b98b08bf8ddad95e07c5f8938bd8e31bfccd2b29'/>
<id>urn:sha1:b98b08bf8ddad95e07c5f8938bd8e31bfccd2b29</id>
<content type='text'>
</content>
</entry>
<entry>
<title>dirserver: Allow clippy::unused_async</title>
<updated>2026-01-27T19:11:05Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-27T18:28:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3599bd9e56864ae220d7c2126b1e1a66cded9d8b'/>
<id>urn:sha1:3599bd9e56864ae220d7c2126b1e1a66cded9d8b</id>
<content type='text'>
This code is still WIP, no need to address the lint yet.
</content>
</entry>
<entry>
<title>maint/add_warning: Run script to add new warning</title>
<updated>2026-01-27T18:05:36Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-27T18:05:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a98faf72eb06b47700faeeac5a8a0dd0fc29b584'/>
<id>urn:sha1:a98faf72eb06b47700faeeac5a8a0dd0fc29b584</id>
<content type='text'>
This adds the lint to all our crates.
</content>
</entry>
<entry>
<title>tor-dirserver: Add comment on compression bug</title>
<updated>2026-01-22T16:25:24Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-01-22T14:42:47Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7678f36d675ca762f3672c5bdc0cc3f007ee299e'/>
<id>urn:sha1:7678f36d675ca762f3672c5bdc0cc3f007ee299e</id>
<content type='text'>
This commit adds a comment explaining why we treat compression errors as
a bug.
</content>
</entry>
<entry>
<title>tor-dirserver: Make compression failures a bug</title>
<updated>2026-01-22T16:25:15Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-01-21T17:53:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bc59f1ef133eab5c70426388deb2bc95b8c6b8a4'/>
<id>urn:sha1:bc59f1ef133eab5c70426388deb2bc95b8c6b8a4</id>
<content type='text'>
This commit removes `DatabaseError::Compression` because it does not fit
in.  Right now, this single variant makes the error to be call-site
oriented which is not nice for error handling.  Instead, this error
should indicate that something was truly wrong with the database in
itself, such as an invalid schema, a low-level SQLite bug, etc.

Instead, we now map a compression error to `DatabaseError::Bug` because
there is no good reason on why it should fail, given that we compress
memory data to memory data.  Probably because it uses the
`std::io::Writer` interface which itself demands use of
`std::io::Result`.
</content>
</entry>
<entry>
<title>Merge branch 'database-refactoring' into 'main'</title>
<updated>2026-01-22T16:17:37Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-01-22T16:17:37Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=98311d1bf749c2cd71ae85ec4b60815b689dad0e'/>
<id>urn:sha1:98311d1bf749c2cd71ae85ec4b60815b689dad0e</id>
<content type='text'>
tor-dirserver: Refactorings in the database.rs module

See merge request tpo/core/arti!3599</content>
</entry>
<entry>
<title>tor-dirserver: Remove FromStr for DocumentId</title>
<updated>2026-01-22T15:20:19Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-01-22T15:20:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e17869b7bc0e7c674d5d770aec8c5cd120246a4c'/>
<id>urn:sha1:e17869b7bc0e7c674d5d770aec8c5cd120246a4c</id>
<content type='text'>
This commit removes FromStr for DocumentId because it was only used in
testing anyways.

Instead, it replaces it with a simple From&lt;[u8; 32]&gt; only enabled in
test builds, which is sufficient for what we are trying to do.

An alternative would be to make the inner field pub, but this seems to
aggressive for a testing only thing.
</content>
</entry>
<entry>
<title>tor-dirserver: Make downloader stateless</title>
<updated>2026-01-20T12:16:44Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-01-20T12:01:54Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d4d99b5dc87632596fb6786288a13a24ec79efe0'/>
<id>urn:sha1:d4d99b5dc87632596fb6786288a13a24ec79efe0</id>
<content type='text'>
This commit makes the downloader found in `mirror::operation::download`
stateless by removing the `preferred_authority` field and changing all
methods from `&amp;mut self` to `&amp;self`.

The preferred authority is now accepted as a parameter to
`DownloadManager::download` which also returns a tuple now with the
actually used authority alongside the response, putting the management
of this to the responsibility of the caller.

Meanwhile, it also renames the structure from `ConsensusBoundDownloader`
to `DownloadManager` because it no longer keeps a state that
invalidates after a consensus "ends".

The purpose of this is to simplify overall state in order to make the
implementation of a finite-state-machine for the dirmirror operation
more easy (and deterministic).
</content>
</entry>
<entry>
<title>tor-dirserver: Add `sha2` to `router_descriptor`</title>
<updated>2026-01-19T10:01:59Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-01-15T14:55:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4dc3571fe6c6b7bd8a3aa9d15da3074a140b054e'/>
<id>urn:sha1:4dc3571fe6c6b7bd8a3aa9d15da3074a140b054e</id>
<content type='text'>
This comit adds a `sha2` column to `router_descriptor` alongside a
`CHECK` to see whether it equals `docid`.

The reason for this is simple: Microdescriptors are the only kind of
documents that are queriable with a SHA2 hash.  Previously, we would
have simply used the `docid` column for this, but in order to abstract
it better, a distinct column with this hash is better.
</content>
</entry>
</feed>
