aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Merge branch 'database-refactoring' into 'main'Clara Engler2026-01-224-197/+245
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | tor-dirserver: Refactorings in the database.rs module See merge request tpo/core/arti!3599
| * | | | | tor-dirserver: Remove FromStr for DocumentIdClara Engler2026-01-223-39/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes FromStr for DocumentId because it was only used in testing anyways. Instead, it replaces it with a simple From<[u8; 32]> 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.
| * | | | | tor-dirserver: Add `sha2` to `router_descriptor`Clara Engler2026-01-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | | tor-dirserver: Rename `doc_id` to `docid`Clara Engler2026-01-194-76/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because we went with `docid` in the database (due to `rowid`), it is only natural to call the code variables `docid` too.
| * | | | | tor-dirserver: Rename sha256 to docid in schemaClara Engler2026-01-194-51/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit renames the sha256 column to docid for the reason that we agreed upon making the schema visible to all modules, so if we were to encapsulate docid properly, this change is only natural.
| * | | | | tor-dirserver: Rename database meta tableClara Engler2026-01-191-16/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit renames arti_dirmirror_schema_version to arti_dirserver_schema_version.
| * | | | | database: Introduce DocumentIdClara Engler2026-01-195-136/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces a new type in the database module named `DocumentId` for abstracting the underlying content-addressable hash algorithm we are using.
* | | | | | Merge branch 'remove-legacy-dirauth' into 'main'Clara Engler2026-01-223-149/+48
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-dircommon: Remove legacy authority syntax See merge request tpo/core/arti!3597
| * | | | | | tor-dircommon: De-duplicate example from AuthorityContactClara Engler2026-01-221-35/+0
| | | | | | |
| * | | | | | arti: Fix commented out comment in exampleClara Engler2026-01-221-1/+1
| | | | | | |
| * | | | | | tor-dircommon: Fix clippy warningClara Engler2026-01-221-1/+1
| | | | | | |
| * | | | | | tor-dircommon: Remove legacy authority syntaxClara Engler2026-01-222-149/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because arti 2.0 is pending, it is good to get rid of technical debt, such as the legacy syntax for specifying directory authorities, which had been replaced by prop330 a few months ago.
| * | | | | | tor-dircommon: Document prop330 syntax betterClara Engler2026-01-222-1/+68
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | This commit adds more documentation/examples for the prop330 syntax for specifying directory authorities.
* | | | | | Merge branch 'stateless-download-mgr' into 'main'Clara Engler2026-01-222-53/+55
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-dirserver: Make downloader stateless See merge request tpo/core/arti!3601
| * | | | | | tor-dirserver: Make downloader statelessClara Engler2026-01-202-53/+55
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit makes the downloader found in `mirror::operation::download` stateless by removing the `preferred_authority` field and changing all methods from `&mut self` to `&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).
* | | | | | Merge branch 'bump-chutney-2026-01' into 'main'Jim Newsome2026-01-2113-79/+52
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | Bump chutney See merge request tpo/core/arti!3604
| * | | | | tests/chutney/setup: use shlex.quoteJim Newsome2026-01-211-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously this was naively wrapping strings in double-quotes. This works ok for escaping internal whitespace, but doesn't escape other special characters.
| * | | | | Bump chutneyJim Newsome2026-01-215-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | Bump chutney, and migrate to CLI changes introduced in chutney!101
| * | | | | Bump blackJim Newsome2026-01-2110-65/+31
|/ / / / /
* | | | | Merge branch 'maint-naming' into 'main'Ian Jackson2026-01-2047-152/+198
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | Use kebab case for all scripts in maint/ See merge request tpo/core/arti!3590
| * | | | Rename check-api-surface CI job and associated scriptIan Jackson2026-01-202-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the script name to use hyphens, not underscores. Make the script name and the CI job name the same, except the script has -arti at the end in case we add more similar checks.
| * | | | maint/rust-maint-common/forbid-script-underscores: Look at gitIan Jackson2026-01-201-1/+4
| | | | | | | | | | | | | | | | | | | | This avoids tripping over things like `__pycache__`
| * | | | CI: Prevent new scripts with snake_case namesIan Jackson2026-01-201-0/+3
| | | | |
| * | | | CI: Rename cbindgen job to more closely follow script invocationIan Jackson2026-01-201-1/+1
| | | | |
| * | | | Rename maint/list_crates to kebab-caseIan Jackson2026-01-2012-91/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Swap the symlink direction: now we have list_crates.py (the python module) with a symlink list-crates pointing to it. This allows the module to be imported but the command to be kebab case. The checking tooling doesn't understand this special arrangement. Lots of references to update!
| * | | | maint/rust-maint-common/forbid-script-extensions: Support exceptionsIan Jackson2026-01-201-2/+14
| | | | |
| * | | | Rename CI functions file to kebab-caseIan Jackson2026-01-202-1/+1
| | | | |
| * | | | Rename config file to kebab-caseIan Jackson2026-01-202-2/+2
| | | | |
| * | | | Remove maint/shellcheck_all compatibility linkIan Jackson2026-01-203-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | We're using maint/common/shellcheck-all now. The docs were inconsistent.
| * | | | maint: Rename reproducible build scripts to kebab caseIan Jackson2026-01-206-5/+5
| | | | | | | | | | | | | | | | | | | | We had both maint/docker-... and maint/docker_...
| * | | | maint: Rename miscellaneous scripts to kebab caseIan Jackson2026-01-2012-21/+21
| | | | |
| * | | | maint/rust-maint-common/forbid-script-underscores: Support exceptionsIan Jackson2026-01-201-2/+25
| | | | |
| * | | | CI: Rename cargo-crate-owners job to match scriptIan Jackson2026-01-201-1/+1
| | | | |
| * | | | Rename remaining maint/check_ to maint/check-Ian Jackson2026-01-2011-11/+11
| | | | |
| * | | | CI: Rename script and job to check-blocking-todosIan Jackson2026-01-202-2/+2
| | | | |
| * | | | Rename maint/check_tree to maint/check-cargo-treeIan Jackson2026-01-202-1/+1
| | | | |
| * | | | Rename maint/check_wildcard to check-wildcard-depsIan Jackson2026-01-202-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Use kebab case, and also add the word deps. Otherwise it might refer to files or something.
| * | | | Rename cargo_audit and cargo_sort scripts to kebab-caseIan Jackson2026-01-204-3/+3
| | | | |
| * | | | maint: Rename script and job to cargo-check-targetsIan Jackson2026-01-202-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The job was called `check-targets` and the script was called `cargo_check_target`. Make them match. Use kebab case, and the plural (it checks multiple targets).
| * | | | CI: Add missing cache setting to jobs using via-cargo-install-in-ciIan Jackson2026-01-201-0/+6
|/ / / / | | | | | | | | | | | | As per the docs for that script.
* | | | Merge branch 'allow-truncated-headers' into 'main'Ian Jackson2026-01-191-1/+10
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | Fix flaky `request_fail_ultimately` test Closes #2318 See merge request tpo/core/arti!3598
| * | | Fix flaky `request_fail_ultimately` testClara Engler2026-01-191-1/+10
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes the flaky `request_fail_ultimately` in tor-dirserver, which is flaky due to the operating system's handling of TCP RSTs, which are generally detected stochastically and sometimes are not received even after the entire response has been parsed. This leads to tor-dirclient either returning a connection reset or a truncated header error, depending on whether it successfully or unsuccessfully reads zero bytes from the server. Fixes #2318
* | | Merge branch 'thanks' into 'main'Nick Mathewson2026-01-162-6/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | maint: Use 'C.UTF-8' locale for sorting `exclude_contributors.txt` Closes #2313 See merge request tpo/core/arti!3588
| * | | maint: add comment in `exclude_contributors.txt`Steven Engler2026-01-131-1/+2
| | | |
| * | | maint: use 'C.UTF-8' locale for sorting excl contrib fileSteven Engler2026-01-132-5/+4
| | | |
* | | | Merge branch 'opaque_arti_2.0' into 'main'Nick Mathewson2026-01-1511-107/+197
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make all non-main APIs in arti experimental. Closes #2284, #2299, and #419 See merge request tpo/core/arti!3586
| * | | | arti: Edit README.md text about experimental-api.Nick Mathewson2026-01-141-1/+6
| | | | |
| * | | | bench,testing: Use experimental-api.Nick Mathewson2026-01-132-2/+2
| | | | | | | | | | | | | | | | | | | | These crates are "inherently experimental" and allowed to require it.
| * | | | arti: remove deprecated feature flags.Nick Mathewson2026-01-133-17/+6
| | | | | | | | | | | | | | | | | | | | Closes #2299.
| * | | | Reformatting in arti/Cargo.tomlNick Mathewson2026-01-131-33/+5
| | | | | | | | | | | | | | | | | | | | No semantic changes.