summaryrefslogtreecommitdiff
path: root/crates/tor-dirclient
Commit message (Collapse)AuthorAgeFilesLines
* Bump all crates to 0.1.0arti-v0.1.0Nick Mathewson2022-03-011-9/+9
|
* Replace TorNetworkError with TorDirectoryErrorNick Mathewson2022-02-221-1/+1
| | | | | | This is still not as specific as we want; but there's already a TODO comment in tor-dirclient::err about fixing that at some point in the future.
* dirclient: Remove HttpStatus error variantNick Mathewson2022-02-172-7/+7
| | | | | | | Getting a non-200 status is no longer a failure condition; it's just a different kind of answer. Closes #349.
* Correct ErrorKinds for some tor-dirclient errors.Nick Mathewson2022-02-171-2/+2
|
* Rename ExitTimeout to RemoteNetworkTimeout.Nick Mathewson2022-02-171-1/+1
|
* tor-dirclient: Error::HttpError: add a TODO saying to abolishIan Jackson2022-02-171-0/+4
|
* Implement HasKind for tor_dirclient::ErrorNick Mathewson2022-02-162-0/+25
|
* dirclient: remove an unused error type.Nick Mathewson2022-02-161-4/+0
|
* Change deny(clippy::all) to warn(clippy::all).Nick Mathewson2022-02-141-1/+1
| | | | Closes #338.
* Make TorError implement Clone.Nick Mathewson2022-02-041-3/+17
| | | | | This patch makes only minimal changes in lower-level error types: we have more refactoring to do.
* Merge branch 'dirclient-testing' into 'main'Nick Mathewson2022-02-032-34/+163
|\ | | | | | | | | dir-client: bug fix and more tests See merge request tpo/core/arti!271
| * Explain a testing oddity in tor-dirclient.Nick Mathewson2022-02-031-1/+11
| |
| * Fix a stale comment in tor-dirclient.Nick Mathewson2022-02-031-2/+1
| |
| * Upgrade required version of futures crate to 0.3.14Nick Mathewson2022-02-011-1/+1
| | | | | | | | | | Earlier versions have a bug in UnboundedReceiver that make our new dirclient tests fail.
| * dirclient: refactor and test "should-i-retire-the-circuit" code.Nick Mathewson2022-02-011-6/+13
| |
| * dirclient: Add tests for a number of failing cases.Nick Mathewson2022-02-011-25/+136
| | | | | | | | | | These bring the case a tiny improvement in test coverage, and also manage to turn up a few bugs.
| * dirclient: don't return too-long responses on decompression failureNick Mathewson2022-02-011-0/+2
| | | | | | | | | | | | | | | | | | There are a couple of places where we forgot to truncate our return-buffer to its actual size, and instead returned a big bunch of zeros. Found while writing the tests in the next commit. Someday, we'll have ReadBuf and won't have to worry about these things.
* | Untangle two needless Ok(r?) into just rIan Jackson2022-02-021-1/+1
|/ | | | | | Prompted by clippy::needless_question_mark. Sometimes Ok(r?) is needed to do automatic error conversion. I assume the lint checks for that. Anyway, in these cases it's not needed.
* Bump the patch version of every crate that changed since 0.0.3Nick Mathewson2022-01-311-7/+7
|
* Make the native-tls crate optional.Nick Mathewson2022-01-261-1/+1
| | | | | | | | | | | This commit puts the native-tls crate behind a feature. The feature is off-by-default in the tor-rtcompat crate, but can be enabled either from arti or arti-client. There is an included script that I used to test that tor-rtcompat could build and run its tests with all subsets of its features. Closes #300
* Bump all crate versions to 0.0.3.Nick Mathewson2022-01-111-8/+8
|
* Minimize the required version for each dependency.Nick Mathewson2022-01-071-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I found these versions empirically, by using the following process: First, I used `cargo tree --depth 1 --kind all` to get a list of every immediate dependency we had. Then, I used `cargo upgrade --workspace package@version` to change each dependency to the earliest version with which (in theory) the current version is semver-compatible. IOW, if the current version was 3.2.3, I picked "3". If the current version was 0.12.8, I picked "0.12". Then, I used `cargo +nightly upgrade -Z minimal-versions` to downgrade Cargo.lock to the minimal listed version for each dependency. (I had to override a few packages; see .gitlab-ci.yml for details). Finally, I repeatedly increased the version of each of our dependencies until our code compiled and the tests passed. Here's what I found that we need: anyhow >= 1.0.5: Earlier versions break our hyper example. async-broadcast >= 0.3.2: Earlier versions fail our tests. async-compression 0.3.5: Earlier versions handled futures and tokio differently. async-trait >= 0.1.2: Earlier versions are too buggy to compile our code. clap 2.33.0: For Arg::default_value_os(). coarsetime >= 0.1.20: exposed as_ticks() function. curve25519-dalek >= 3.2: For is_identity(). generic-array 0.14.3: Earlier versions don't implement From<&[T; 32]> httparse >= 1.2: Earlier versions didn't implement Error. itertools at 0.10.1: For at_most_once. rusqlite >= 0.26.3: for backward compatibility with older rustc. serde 1.0.103: Older versions break our code. serde_json >= 1.0.50: Since we need its Value type to implement Eq. shellexpand >= 2.1: To avoid a broken dirs crate version. tokio >= 1.4: For Handle::block_on(). tracing >= 0.1.18: Previously, tracing_core and tracing had separate LevelFilter types. typenum >= 1.12: Compatibility with rust-crypto crates x25519-dalek >= 1.2.0: For was_contributory(). Closes #275.
* extend lints to include 'clippy::all'Daniel Eades2021-12-281-0/+1
|
* Resolve roughly half of the XXXXs.Nick Mathewson2021-12-061-6/+6
| | | | | | | | We want to only use TODO in the codebase for non-blockers, and open tickets for anything that is a bigger blocker than a TODO. These XXXXs seem like definite non-blockers to me. Part of arti#231.
* Merge branch 'readme_fixes'Nick Mathewson2021-11-301-0/+9
|\
| * run ./maint/readmes.shdagon2021-11-291-0/+9
| |
* | Bump every crate by one patch version.Nick Mathewson2021-11-291-8/+8
| |
* | add semicolons if nothing returnedDaniel Eades2021-11-252-2/+3
|/
* Fix a few typos.Nick Mathewson2021-11-241-2/+2
| | | | Also fix some commonwealth spellings that had slipped in.
* tor-dirclient: Put routerdesc download behind a feature.Nick Mathewson2021-11-123-2/+23
| | | | Part of #125
* Tests for tor-dirmgr::bootstrapNick Mathewson2021-11-111-0/+5
|
* Bump all crate versions to 0.0.1Nick Mathewson2021-10-291-8/+8
|
* enable checked_conversions lint.Nick Mathewson2021-10-091-0/+1
|
* Stop using anyhow in tor-dirclient.Jani Monoses2021-09-163-2/+9
|
* fix/silence clippy lints in test modulesDaniel Eades2021-09-083-2/+4
|
* Document every macro.Nick Mathewson2021-09-071-0/+1
| | | | | (The nightly version of clippy now includes macros for its missing_docs_in_private_items lint.)
* Move all crates into a `crates` subdirectory.Nick Mathewson2021-08-277-0/+1429
This will cause some pain for now, but now is really the best time to do this kind of thing.