summaryrefslogtreecommitdiff
path: root/crates/tor-dirclient
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'semver-bumps' into 'main'Nick Mathewson2023-10-311-6/+6
|\ | | | | | | | | Update versions for today's releases. See merge request tpo/core/arti!1716
| * Patch version bumps in crates without breaking changesNick Mathewson2023-10-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` These crates have new APIs: tor-async-utils ADDED tor-config ADDED tor-hscrypto ADDED tor-netdoc ADDED, plus BREAKING-experimental. These crates have patch-level changes only: tor-netdir (bugfix only). (re-exposes netdoc) arti-rpcserver (tweaks only, uses nothing that broke.) arti 1.1.10, no stable public APIs. ```
| * Minor version bumps in crates with breaking changes.Nick Mathewson2023-10-311-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` tor-basic-utils BREAKING tor-rtmock BREAKING. tor-cert BREAKING tor-cell BREAKING tor-proto BREAKING: re-exposes cell. (Also BREAKING-experimental) tor-chanmgr BREAKING: Re-exposes proto. tor-ptmgr BREAKING: re-exposes tor-chanmgr tor-guardmgr BREAKING: re-exposes proto. (Only for ClockSkew I think?) tor-circmgr BREAKING: re-exposes proto tor-dirclient BREAKING tor-hsclient BREAKING, re-exposes proto. tor-hsservice BREAKING, re-exposes proto. tor-hsrproxy BREAKING arti-client BREAKING: re-exposes proto. arti-hyper: BREAKING, re-exposes arti-client. tor-dirmgr Let's assume BREAKING, very high-level. tor-keymgr BREAKING, but experimental. ```
* | Add cfg_attr allow(unused_imports) to two cratesIan Jackson2023-10-311-0/+6
|/ | | | | As per this comment, and preceding discussion https://gitlab.torproject.org/tpo/core/arti/-/issues/1060#note_2959187
* tor-dirclient, tor-netdoc: Add TODO SPECs.Gabriela Moldovan2023-10-241-0/+1
|
* tor-dirclient: Always set the Content-Length header (fmt).Gabriela Moldovan2023-10-241-1/+4
|
* tor-dirclient: Always set the Content-Length header.Gabriela Moldovan2023-10-242-19/+12
|
* tor-dirclient: Add a Content-Length header (fmt).Gabriela Moldovan2023-10-241-1/+3
|
* tor-dirclient: Add a Content-Length header.Gabriela Moldovan2023-10-241-2/+16
|
* dirclient: Seal the Requestable trait and hide most of its members.Nick Mathewson2023-10-172-41/+68
| | | | | | | | Since none of these methods were invoked from outside `tor-dirclient` (except for debugging), and since we have had a fair amount of churn on what we actually want them to be, it seems like a good idea to use this trick to hide them. This will let us make other changes to the actual behavior of Requestable in the future.
* dirclient: Rename partial_docs_ok to partial_response_body_okNick Mathewson2023-10-173-24/+24
|
* dirclient: Make Requestable::anonymized mandatory.Nick Mathewson2023-10-172-3/+22
|
* dirclient: Explain why 1024 is a sufficient maximum response length.Nick Mathewson2023-10-161-0/+4
|
* dirclient: Wrap a somewhat wide comment.Nick Mathewson2023-10-161-5/+3
|
* Downgrade another TODO HSS and move it to TODO BREAKINGNick Mathewson2023-10-161-2/+3
|
* Privacy: Do not list supported encodings in hsdesc reqs.Nick Mathewson2023-10-163-28/+87
| | | | | | | | | | | | | Since not everybody has xz and/or zstd, we don't want to admit whether we support them when we are uploading or downloading an onion service descriptor. Similarly, if we aren't advertising support for an encoding, we shouldn't accept it. Finally, while we're doing this, it made sense to have the ability to mark requests based on how anonymized they are, and reject (some) attempts to send those requests over a one-hop circuit. Closes #1062
* dirclient: Change a todo to an API todo and make it less blocking.Nick Mathewson2023-10-161-1/+9
|
* tor-dirclient: Mark `DirResponse` as `#[must_use]`.Gabriela Moldovan2023-10-031-0/+1
| | | | | Not checking whether the response is successful can have unintended consequences.
* tor-dirclient: Set a non-zero expected response len for uploads.Gabriela Moldovan2023-10-031-5/+5
|
* Bump tor-dirclient patchlevel, since its dependency changed.Nick Mathewson2023-10-021-1/+1
|
* Minor-version bumps, for crates with breaking changes.Nick Mathewson2023-10-021-3/+3
|
* Patchlevel bumps, with dependents affected.Nick Mathewson2023-10-021-5/+5
|
* Remove semver.md now that 1.1.8 is out.Nick Mathewson2023-09-051-4/+0
|
* Update patchlevel for crates with nontrivial changes.Nick Mathewson2023-09-051-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are: ``` hashx equix tor-async-utils tor-error tor-config tor-rtmock tor-llcrypto tor-bytes tor-hscrypto tor-hspow tor-cert tor-linkspec tor-cell tor-proto tor-netdoc tor-netdir tor-chanmgr tor-guardmgr tor-dirmgr tor-keymgr tor-hsclient tor-hsservice arti-client arti ```
* Minor-version bumps for crates with breaking changes.Nick Mathewson2023-09-051-1/+1
| | | | | | | | | These are: ``` tor-dirclient tor-ptmgr ```
* Run maint/add_warning to add lint block everywhereIan Jackson2023-08-234-0/+4
|
* tor-dirclient: Fix clippy lints.Gabriela Moldovan2023-08-161-5/+5
|
* tor-dirclient: Remove unused `StringBody` trait.Gabriela Moldovan2023-08-162-27/+0
|
* tor-dirclient: Make Requestable return requests with String bodies.Gabriela Moldovan2023-08-163-52/+24
| | | | | It's simpler to always use a `String` to represent directory request bodies. We no longer need the `StringBody` trait.
* tor-dirclient: Rename StringBody::str() to StringBody::as_str().Gabriela Moldovan2023-08-162-6/+6
|
* tor-dirclient: Deprecate download() instead of removing it.Gabriela Moldovan2023-08-162-1/+18
|
* tor-dirclient: Extend format test to check the body is formatted too (fmt)Gabriela Moldovan2023-08-161-1/+4
|
* tor-dirclient: Extend format test to check the body is formatted too.Gabriela Moldovan2023-08-161-8/+22
|
* tor-dirclient: Move request building to a test helper function.Gabriela Moldovan2023-08-161-11/+13
|
* tor-dirclient: Add `HsDescUploadRequest`.Gabriela Moldovan2023-08-163-0/+50
| | | | | The hsdir publisher will send the `HsDescUploadRequest`s to the appropriate directory using `send_request()`.
* tor-dirclient: Make the body type of a `Requestable` type configurable.Gabriela Moldovan2023-08-163-3/+48
| | | | | | | | | Previously, the `Requestable` trait assumed the body of the request would always be empty (`http::Request<()>`). This change replaces the hardcoded `()` body type with the `Requestable::Body` associated type (which will allow implementors to create requests with non-empty bodies). This will enable us to reuse the `Requestable` trait for building `POST` requests for uploading descriptors.
* tor-dirclient: Rename download() to send_request().Gabriela Moldovan2023-08-163-6/+8
| | | | | | `download()` is actually a general-purpose function for sending HTTP requests on a stream. We will soon repurpose it for `POST`-ing descriptors, so let's rename it to `send_request`.
* Run add_warnings on all files.Nick Mathewson2023-08-041-2/+2
|
* Increment patchlevel versions of crates with minor changesNick Mathewson2023-08-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These crates are at version 0.x.y, so we don't need to distinguish new-feature changes from other changes: ``` tor-basic-utils fs-mistrust tor-error tor-geoip tor-checkable tor-linkspec tor-netdoc tor-netdir tor-persist tor-ptmgr tor-hsservice ``` This crate has a breaking change, but only when the semver-breaking feature `experimental-api` is enabled: ``` tor-config ``` This crate is at version 1.x.y, but has no new public APIs, and therefore does not need a minor version bump: ``` arti ```
* Update minor versions on crates that have had breaking changesNick Mathewson2023-08-011-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These crates had first-order breaking changes: ``` retry-error tor-keymgr tor-proto tor-hsclient tor-rtmock ``` Additionally, these broke because they re-exposed RetryError: ``` tor-circmgr ``` Additionally, these broke because they may re-expose something from tor-proto: ``` arti-client tor-chanmgr tor-dirclient tor-dirmgr tor-guardmgr ``` Additionally, these broke for other fiddly reasons: `tor-ptmgr` implements traits from tor-chanmgr, which has a breaking change above. `arti-hyper` exposes types from arti-client in its API.
* Run maint/add_warning to actually apply new lint allowsIan Jackson2023-07-104-0/+5
|
* Run add_warning to remove `missing_panics_doc` deny.Nick Mathewson2023-07-061-1/+0
| | | | Closes #950.
* Remove semver.md files for 1.1.6Nick Mathewson2023-06-301-1/+0
|
* Bump patchlevel versions on crates with smaller changesNick Mathewson2023-06-301-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Done with the commands below. The following crates have had various changes, and should get a patchlevel bump. Since they are pre-1.0, we do not need to distinguish new APIs from other changes. ``` cargo set-version --bump patch -p arti-client cargo set-version --bump patch -p safelog cargo set-version --bump patch -p tor-bytes cargo set-version --bump patch -p tor-cert cargo set-version --bump patch -p tor-circmgr cargo set-version --bump patch -p tor-config cargo set-version --bump patch -p tor-consdiff cargo set-version --bump patch -p tor-dirclient cargo set-version --bump patch -p tor-dirmgr cargo set-version --bump patch -p tor-error cargo set-version --bump patch -p tor-hsservice cargo set-version --bump patch -p tor-linkspec cargo set-version --bump patch -p tor-llcrypto cargo set-version --bump patch -p tor-netdir cargo set-version --bump patch -p tor-netdoc cargo set-version --bump patch -p tor-proto cargo set-version --bump patch -p tor-rpcbase cargo set-version --bump patch -p tor-socksproto ``` This crate has new features, but no new non-experimental Rust APIs. So even though it is post-1.0, it gets a patchlevel bump. ``` cargo set-version --bump patch -p arti ```
* Bump minor versions on crates with breaking changesNick Mathewson2023-06-301-1/+1
| | | | | | | | | | Done with: ``` cargo set-version --bump minor -p tor-hsclient cargo set-version --bump minor -p arti-rpcserver cargo set-version --bump minor -p tor-hscrypto cargo set-version --bump minor -p tor-cell ```
* Mark all {hs,onion-serivce}-client features as non-experimental.Nick Mathewson2023-06-291-2/+3
|
* Missing semver entry for new dirclient API from !1323Nick Mathewson2023-06-281-0/+1
|
* dirclient: use correct default max_lenNick Mathewson2023-06-271-2/+2
| | | | | | Yes, it's 50 kilobytes, not 50 kibibytes. I double-checked this with the C implementation and with param-spec.txt's documentation for `HSV3MaxDescriptorSize`.
* dirclient: Correct an erroneous comment.Nick Mathewson2023-06-271-1/+2
|
* dirclient: Make maximum hsdesc length adjustable.Nick Mathewson2023-06-272-8/+12
|