summaryrefslogtreecommitdiff
path: root/crates/tor-netdoc
Commit message (Collapse)AuthorAgeFilesLines
* Bump all crate versions to 0.0.3.Nick Mathewson2022-01-111-6/+6
|
* 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
|
* Merge branch 'refactor/must-use-self' into 'main'eta2021-12-202-0/+5
|\ | | | | | | | | address clippy's latest lint See merge request tpo/core/arti!205
| * address clippy's latest lintDaniel Eades2021-12-202-0/+5
| |
* | Change an UTF-8 XXX to a TODO.Nick Mathewson2021-12-201-1/+2
| | | | | | | | We're assuming that prop285 is accepted in some form.
* | tor-netdoc: Change an XXX to a TODO.Nick Mathewson2021-12-201-1/+4
| | | | | | | | | | | | Our behavior in handling not-yet-valid router descriptors doesn't match the C Tor implementation, but it's not a big deal: we don't currently use router descriptors at all.
* | tor-netdoc: Use a more correct error typeNick Mathewson2021-12-201-1/+1
| | | | | | | | | | | | If we fail to convert a curve25519 key to an ed25519 key for checking the onion-key crosscert, don't call that an internal error: it means that something is wrong with the provided ntor key.
* | Remove an XXXX about ed25519 signatures.Nick Mathewson2021-12-201-2/+0
|/ | | | | As of tor-spec commit 01122c5bd7d2f0f, the spec is no longer ambiguous on this point.
* s/hidden/onion/g in code commentsNeel Chauhan2021-12-131-1/+1
|
* address lint warningsDaniel Eades2021-12-091-8/+8
| | | | | [Edited by nickm: This applies one of Daniel's fixes in place of one of Trinity's: Trinity says it's a bit cleaner, and I agree.]
* fix nightly clippy errorsTrinity Pointard2021-12-093-10/+5
|
* Upgrade to digest v0.10.0Nick Mathewson2021-12-071-1/+1
| | | | | We generally try to track the latest rust-crypto traits when we can: fortunately, this upgrade didn't break much, considering.
* Resolve roughly half of the XXXXs.Nick Mathewson2021-12-062-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.
* Remove dir_port from RouterStatusBuilderNeel Chauhan2021-12-013-17/+1
|
* Add comments about the absence of tap_key in microdesc.Nick Mathewson2021-11-301-1/+4
|
* Merge remote-tracking branch 'origin/mr/151'Nick Mathewson2021-11-302-45/+4
|\
| * Parse RSA public keyNeel Chauhan2021-11-292-5/+9
| |
| * Remove unused tap_onion_key and tap_keyNeel Chauhan2021-11-283-52/+7
| |
* | Merge branch 'readme_fixes'Nick Mathewson2021-11-301-0/+11
|\ \
| * | run ./maint/readmes.shdagon2021-11-291-0/+11
| |/
* | Bump every crate by one patch version.Nick Mathewson2021-11-291-6/+6
| |
* | Run "cargo update" to get latest versions.Nick Mathewson2021-11-291-0/+1
| | | | | | | | | | | | | | Also fix a couple of warnings introduced by now-unneeded imports with new ed25519 crate. This is part of the process for releasing our next version.
* | Merge remote-tracking branch 'origin/mr/149'Nick Mathewson2021-11-292-23/+0
|\ \
| * | Remove address from VoterInfoBuilderNeel Chauhan2021-11-281-12/+0
| | |
| * | Remove unused 'address' field from DirSource structNeel Chauhan2021-11-282-11/+0
| |/
* | add semicolons if nothing returnedDaniel Eades2021-11-253-2/+3
| |
* | deglob some enums, use concise iteration syntaxDaniel Eades2021-11-252-5/+5
|/
* More typo fixes that I forgot to save :(Nick Mathewson2021-11-241-1/+1
|
* Merge branch 'arti-client-config' into 'main'eta2021-11-221-1/+1
|\ | | | | | | | | Further configuration refactoring See merge request tpo/core/arti!137
| * Make every Config type implement Eq.Nick Mathewson2021-11-211-1/+1
| | | | | | | | | | Doing this is necessary for reconfiguration support, and will help a lot with testing, too.
* | Use consistent name for ns_consensus feature.Nick Mathewson2021-11-211-6/+6
|/
* Merge branch 'ticket125' into 'main'eta2021-11-1613-130/+222
|\ | | | | | | | | | | | | Put most non-universally-needed functionality behind features Closes #125 See merge request tpo/core/arti!129
| * tor-netdoc: put NS consensus documents behind a feature.Nick Mathewson2021-11-127-3/+25
| | | | | | | | | | | | Clients never need these. Part of #125.
| * tor-netdoc: Split the two kinds of routerstatus into their own modulesNick Mathewson2021-11-123-128/+164
| |
| * tor-netdoc: Put the "routerdesc" document type behind a feature.Nick Mathewson2021-11-128-0/+34
| | | | | | | | | | | | | | | | | | | | Nothing in arti currently uses this document type. Eventually it will be useful for relays and for bridge clients. I've left the "SHA1 digest of a router descriptor" type available unconditinoally, however, since it does get used in a few places. Part of #125.
* | Remove the unused `published` field from GenericRouterStatus.Nick Mathewson2021-11-123-23/+3
|/ | | | | | | | | | | | This field isn't used in modern Tor, and has never been used in Arti. If tor!489 is merged, then it will no longer contain a useful value in future consensuses. We shouldn't store it, or else somebody else will get the smart idea of using it for something. This commit breaks API compatibility for tor-netdoc with the `build_docs` feature enabled. I haven't entered that into the semver_status.md file, since we already have a pending tor-netdoc API breaker in !129.
* Add a couple of pieces of missing documentation.Nick Mathewson2021-11-081-3/+5
|
* Remove some dbg!() calls in real code.Nick Mathewson2021-11-021-1/+1
|
* Bump all crate versions to 0.0.1Nick Mathewson2021-10-291-6/+6
|
* Fix some clippy-nightly warnings.Nick Mathewson2021-10-261-3/+2
| | | | These are my fault; I merged the wrong version of !102. :p
* Migrate tor-netdoc from chrono to time 0.3Nick Mathewson2021-10-242-5/+8
| | | | | (This appears to be the emerging consensus of how to handle RUSTSEC-2020-0159.)
* Fix most warnings from nightly.Nick Mathewson2021-10-192-3/+5
| | | | (One represents code that I forgot to write.)
* Add the "clock" feature to chrono in netdoc.Nick Mathewson2021-10-181-1/+1
| | | | | | This seems to fix a bug when running cargo check on netdoc individually. Reported by @janimo
* Turn off default-features in chrono where possible.Nick Mathewson2021-10-171-1/+1
|
* enable checked_conversions lint.Nick Mathewson2021-10-091-0/+1
|
* derive 'Default' where possibleDaniel Eades2021-09-112-17/+2
|
* Typo fixesNick Mathewson2021-09-091-1/+1
|
* Fix/suppress a few more clippy lints in tests.Nick Mathewson2021-09-082-0/+2
| | | | | I'm alright with allowing cognitive-complexity violations in the tests.
* fix/silence clippy lints in test modulesDaniel Eades2021-09-0816-39/+56
|