summaryrefslogtreecommitdiff
path: root/crates/arti-client
Commit message (Collapse)AuthorAgeFilesLines
* Patchlevel bumps for remaining changed crates.Nick Mathewson2023-02-281-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These crates have had small code changes, but no API additions: tor-config tor-socksproto tor-cert tor-chanmgr tor-ptmgr tor-guardmgr tor-circmgr tor-dirclient tor-dirmgr arti tor-hsservice tor-congestion These crates have had API extensions: fs-mistrust tor-llcrypto tor-bytes tor-checkable tor-linkspec tor-netdoc tor-persist arti-client
* Bump patch-versions for breaking changes in tor-hs{crypto,client}Nick Mathewson2023-02-281-1/+1
| | | | | | These are API breaks, but the crates themselves are currently 100% experimental, so there's no need to bump the minor versions according to our semver rules.
* Bump minor versions for significant breaking changes.Nick Mathewson2023-02-281-3/+3
| | | | This includes tor-cell, tor-proto, and tor-netdir.
* Rename onion-* cargo features to hs-* in tor-* cratesIan Jackson2023-02-282-2/+2
| | | | Fixes #756
* Merge branch 'shadykaty-error-hint-v2' into 'main'eta2023-02-072-1/+140
|\ | | | | | | | | | | | | Create and use an ErrorHint type to report how to fix a problem. Closes #579 and #578 See merge request tpo/core/arti!994
| * ErrorHint: Add a note about lowering the permissions hintNick Mathewson2023-01-271-0/+4
| |
| * ErrorHint: use anonymize_homeNick Mathewson2023-01-271-2/+4
| |
| * ErrorHint: Implement tryfrom_torpersistNick Mathewson2023-01-271-2/+6
| |
| * ErrorHint: refactor API (part 2)Nick Mathewson2023-01-271-75/+60
| | | | | | | | | | | | | | Change ErrorHint so that, internally, it just holds an enum with a lightweight reference to whatever parts of the error it needs to generate a hint. Then we can move the formatting logic into a Display function for ErrorHint, and do away with ErrorDetail entirely.
| * ErrorHint: refactor API (part 1)Nick Mathewson2023-01-271-13/+19
| | | | | | | | | | | | | | Move the "hint" function into Error, and use Option rather than Result. (I'm using Option here because it's not really an error case not to have a hint; we just either have a hint, or we don't.)
| * add opaque ErrorHint API, impl ErrorHint from BadPermissionsShady Katy2023-01-272-1/+139
| |
* | Merge branch 'logs' into 'main'Nick Mathewson2023-02-012-3/+4
|\ \ | | | | | | | | | | | | | | | | | | Report causes of errors Closes #680 See merge request tpo/core/arti!997
| * | Use ErrorReport for errors in error! in arti-clientIan Jackson2023-01-302-3/+4
| |/
* | Bump minor version of tor-cell.Nick Mathewson2023-02-011-1/+1
| | | | | | | | | | | | | | | | | | In !948 we renamed a couple of accessor functions, which is a breaking change in `tor-cell`'s API. In retrospect, perhaps we should have deprecated the old names and added the new ones, so we wouldn't have to break the API. (This is the only API break AFAICT since 1.1.0.)
* | Bump the patch version of every crate that had API additionsNick Mathewson2023-02-011-6/+6
| | | | | | | | | | | | These crates had API or behavior changes that may affect downstream crates. Fortunately, they're all version 0.x, and don't need minor bumps for this.
* | Bump the patch-level version of crates with _minor_ changes.Nick Mathewson2023-02-011-10/+10
|/ | | | | | | These changes influence behavior, but not effect compatibility. (If I messed up, and any crate except for `arti` has non-breaking API changes, that's still fine, since they are all version 0.x.)
* Allow clippy::unchecked_duration_subtraction in testsNick Mathewson2023-01-278-0/+8
| | | | | This panics on error, and we're fine with a panic on misbehavior in tests.
* Disable clippy::unlinlined-format-argsNick Mathewson2023-01-273-8/+5
| | | | | | | | This warning kind of snuck up on us! (See #748) For now, let's disable it. (I've cleaned it up in a couple of examples, since those are meant to be more idiomatic and user-facing.) Closes #748.
* made TorClient::set_stream_prefs publicMichael van Straten2023-01-181-4/+1
|
* Make a top-level API for connecting to onion services.Nick Mathewson2023-01-124-5/+26
| | | | Fortunately, it adds very little to the arti-client API surface.
* test lint blocks: Add many many automaticallyIan Jackson2022-12-124-0/+33
| | | | | This is precisely the result of running the rune in maint/adhoc-add-lint-blocks.
* Merge branch 'spelling-20221206' into 'main'Ian Jackson2022-12-061-1/+1
|\ | | | | | | | | A few spelling fixes for bridgedescmgr code See merge request tpo/core/arti!925
| * arti-client: spelling fix.Nick Mathewson2022-12-061-1/+1
| |
* | Merge branch 'optional-deps-static' into 'main'eta2022-12-051-1/+2
|\ \ | |/ |/| | | | | | | | | make use of 1.60 weak dependancy features Closes #434 See merge request tpo/core/arti!920
| * make use of 1.60 opt dependancy featurestrinity-1686a2022-11-301-1/+2
| |
* | Bump the minor version of every crate.Nick Mathewson2022-11-301-20/+20
|/ | | | | We made this job easy this time around: by incrementing our MSRV, we have forced ourselves to do at least a minor bump everywhere.
* arti: BridgesConfig is evidently not too high upIan Jackson2022-11-301-8/+0
| | | | | Since apparently it was possible to write all the other code without moving it.
* arti: pt mgr spawns the task itself in newIan Jackson2022-11-301-3/+0
|
* arti-client: Try to take ownership of state earlier.Nick Mathewson2022-11-291-0/+4
| | | | | | | | There's no harm in doing this, since we'll try to take ownership of the state soon as soon as we use it: We just want to try early, so that we'll get it before we decide that we're using bridges. Fixes bug #669; bug introduced by !889.
* arti-client: Make ptmgr actually optionalIan Jackson2022-11-291-2/+3
|
* arti, arti-client: Conditionalise various things on pt-clientIan Jackson2022-11-291-3/+4
|
* Spelling fix in arti_client::erreta2022-11-291-1/+1
|
* Temporarily make ptmgr required for arti-client :/Nick Mathewson2022-11-282-2/+5
|
* PtMgr: Use a persistent state directory for PT state.Nick Mathewson2022-11-282-0/+10
| | | | | | | | | | This makes a `pt_state` directory inside .local/share/arti (or the local equivalent), right next to our existing `state` dir. Ideally we would use a separate directory for each PT, but we have a very fuzzy "what is a specific PT" notion. Closes #667
* Integrate PtMgr into arti-client.Nick Mathewson2022-11-284-3/+35
| | | | | | | | If support is available at compile-time, then we construct a PtMgr and register it with the ChanMgr. We keep a handle to it ourself so that we can reconfigure it as needed. Closes #659.
* Merge branch 'watch-drop-option' into 'main'Ian Jackson2022-11-231-0/+3
|\ | | | | | | | | tor-basic-utils: DropNotifyWatchSender: use DropNotifyEofSignallable See merge request tpo/core/arti!853
| * arti-client: Add comment about Option DormantModeIan Jackson2022-11-231-0/+3
| | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/852#note_2854090 (ftaod, that is a different MR to this one)
* | Merge branch 'stability' into 'main'Nick Mathewson2022-11-231-9/+0
|\ \ | |/ |/| | | | | arti-client, tor-config: Remove stability warning from top-level docs See merge request tpo/core/arti!878
| * arti-client, tor-config: Remove stability warning from top-level docsIan Jackson2022-11-211-9/+0
| | | | | | | | | | | | | | Ticket #285 is closed and most of this is stable now we think. (There are still a couple of stability warnings for specific types in tor-config, which aren't exposed at the arti-client level.)
* | bridge non-support: De-cfg the primary bridge config fieldsIan Jackson2022-11-211-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now parse the `bridges.enabled` BoolOrAuto, and the `bridges.bridges` list. The `bridges.bridges` list is Vec<()> in the builder, and Vec<Void> in the built config. Ie, it is simply a count, and vanishes in the built config. But this count triggers us to try to call build(), to try to parse bridges, and to try to set and honour the enablement boolean. The result is that the type system now ensures that if bridges are disabled, but specified (either by listing them in the config, or writing `enabled=true`), we inevitably try to insist that we have a non-empty Vec<Void>, which is of course impossible. There will be a test case too for those who think this too abstract a way to guarantee this property :-).
* | Make the bridge list in the builder be a list of BridgeConfigBuilderIan Jackson2022-11-211-7/+6
|/ | | | By changing MultilineListBuilder.
* Merge branch 'fix_nightly_20221118' into 'main'Ian Jackson2022-11-181-1/+1
|\ | | | | | | | | Fix warnings and breakage in nightly (2022-11-18 edition) See merge request tpo/core/arti!872
| * Fix a bunch of "needless borrow" warnings on nightlyNick Mathewson2022-11-181-1/+1
| | | | | | | | | | It looks like, despite a few false starts, they've got this warning right; there weren't any false positives.
* | arti-client: make bridge-client depend on dirmgr/bridge-clientNick Mathewson2022-11-181-1/+1
| | | | | | | | | | This resolves some errors when building with `bridge-client` but not with `--all-features`.
* | arti-client: Mark "bridge-client" and "pt-client" as non-experimentalNick Mathewson2022-11-182-4/+4
| |
* | arti-client: split long lines in Cargo.tomlNick Mathewson2022-11-181-2/+13
|/ | | | Doing this separately to make the next commit easier to read.
* Merge branch 'ptmgr-config' into 'main'eta2022-11-162-0/+23
|\ | | | | | | | | tor-ptmgr: make configuration use builders, plumb into arti-client See merge request tpo/core/arti!823
| * tor-ptmgr: make configuration use builders, plumb into arti-clienteta2022-11-162-0/+23
| | | | | | | | | | | | | | This brings the draft configuration mechanisms in tor-ptmgr in line with the config in other crates, using builders. It also plumbs the config type through into the main `arti-client` config, and adds some example lines to `arti-example-config.toml`.
* | arti-client: Retain a strong reference to the inner Arc<BridgeDescMgr>Ian Jackson2022-11-151-5/+7
|/ | | | Fixes #636.
* bridges: Create and install a BridgeDescMgr when we bootstrapIan Jackson2022-11-152-0/+72
|