summaryrefslogtreecommitdiff
path: root/crates/arti-client
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge branch 'revised_preemptive_config' into 'main'eta2021-12-071-13/+13
|\ | | | | | | | | Usability: renaming and documentation in preemptive circuit config See merge request tpo/core/arti!176
| * Rename circuits_preemptive to preemptive_circuitsNick Mathewson2021-12-071-13/+13
| | | | | | | | | | | | This obeys a few conventions: * adjective before noun * config objects end with "config"
* | Merge branch 'bug252' into 'main'eta2021-12-073-13/+90
|\ \ | |/ |/| | | | | | | | | Make DNS fields in arti-client/src/client.rs configurable Closes #252 See merge request tpo/core/arti!171
| * Rename ClientDNSConfig -> ClientTimeoutConfigNeel Chauhan2021-12-072-26/+29
| |
| * Improve ClientDNSConfig field commentsNeel Chauhan2021-12-031-3/+5
| |
| * Make DNS fields in arti-client/src/client.rs configurableNeel Chauhan2021-12-033-13/+85
| |
* | Merge branch 'preemptive-config' into 'main'eta2021-12-071-2/+21
|\ \ | | | | | | | | | | | | | | | | | | Allow configurability on preemptive circuits Closes #245 See merge request tpo/core/arti!164
| * | Allow configurability on preemptive circuitsNeel Chauhan2021-12-071-2/+21
| |/
* / Resolve roughly half of the XXXXs.Nick Mathewson2021-12-061-1/+1
|/ | | | | | | | 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.
* Add constructor for TorAddr, to enforce port != 0Nick Mathewson2021-11-301-24/+30
| | | | This makes sure that we're checking for a nonzero port in all cases.
* Merge remote-tracking branch 'origin/mr/156'Nick Mathewson2021-11-301-2/+5
|\
| * arti-client: Reject Port 0 when parsing address:port combosNeel Chauhan2021-11-291-2/+5
| |
* | Merge remote-tracking branch 'origin/mr/154'Nick Mathewson2021-11-301-1/+31
|\ \
| * | Actually build preemptive circuits (and minor fixes)eta2021-11-291-1/+31
| | | | | | | | | | | | | | | | | | The new CircMgr::build_circuits_preemptively function actually causes preemptive circuits to be built; it gets called from arti-client, like the other daemon tasks the CircMgr has.
* | | Merge branch 'readme_fixes'Nick Mathewson2021-11-302-2/+7
|\ \ \
| * | | Example needs to be the same as the readmedagon2021-11-302-46/+29
| | | |
| * | | MR review feedbackdagon2021-11-302-3/+11
| | | |
| * | | fix arti-client doc exampledagon2021-11-301-25/+39
| | | |
| * | | run ./maint/readmes.shdagon2021-11-291-2/+2
| | | |
* | | | Fix a documentation link.Nick Mathewson2021-11-301-2/+3
| | | |
* | | | Fix a bad rustdoc reference.Nick Mathewson2021-11-291-1/+1
| | | |
* | | | Merge branch 'simplify_config_helpers' into 'main'eta2021-11-294-37/+32
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Change sane_defaults() and with_directories() See merge request tpo/core/arti!155
| * | | | Change sane_defaults() and with_directories()Nick Mathewson2021-11-294-37/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sane_defaults() call is now the same as you get from a default builder: by convention, we just call that method Default::default(). The with_directories() constructor makes more sense as a constructor for the TorClientConfigBuilder than for TorClientConfig.
* | | | | Bump every crate by one patch version.Nick Mathewson2021-11-291-9/+9
|/ / / /
* | | | Merge branch 'config-updates-and-tests'Nick Mathewson2021-11-291-28/+109
|\ \ \ \ | |_|_|/ |/| | |
| * | | Document StorageConfig defaults better.Nick Mathewson2021-11-291-3/+17
| | | | | | | | | | | | | | | | (Also fix a couple of typos)
| * | | Add basic tests for high-level buildersNick Mathewson2021-11-251-3/+52
| | | | | | | | | | | | | | | | | | | | Make sure that we can change elements, and we can reconstruct builders that give us the same thing.
| * | | Impl and test Default for high-level configsNick Mathewson2021-11-251-0/+20
| | | |
| * | | Ensure that all config sections have deny_unknown_fieldsNick Mathewson2021-11-251-0/+1
| | | | | | | | | | | | | | | | | | | | When we deserialize a configuration, we should reject unknown variables (except when we have an explicit reason to allow them).
| * | | Make directory accessors crate-private.Nick Mathewson2021-11-251-4/+2
| | | | | | | | | | | | | | | | These don't need to be exposed any longer.
| * | | Define defaults for StorageConfigNick Mathewson2021-11-251-19/+18
| |/ / | | | | | | | | | | | | | | | | | | | | | I'm still not 100% sure this is the right move: should we encourage app developers to always pick their own directories? Or should we make it easy for them to use, well, `sane_defaults`? This patch takes the second approach.
* | | add semicolons if nothing returnedDaniel Eades2021-11-252-2/+3
| | |
* | | deglob some enums, use concise iteration syntaxDaniel Eades2021-11-251-1/+1
|/ /
* | Resolve a pair of rustdoc warnings.Nick Mathewson2021-11-241-1/+1
| |
* | More typo fixes that I forgot to save :(Nick Mathewson2021-11-242-4/+4
| |
* | Fix a few typos.Nick Mathewson2021-11-242-2/+2
|/ | | | Also fix some commonwealth spellings that had slipped in.
* Implement meta-builder pattern for TorClientConfigNick Mathewson2021-11-221-10/+159
| | | | | This should be ergonomic than having to construct every section of the configuration separately.
* Make every Config type implement Eq.Nick Mathewson2021-11-211-3/+3
| | | | | Doing this is necessary for reconfiguration support, and will help a lot with testing, too.
* For every* config type, make defaults consistent.Nick Mathewson2021-11-211-0/+1
| | | | | | | | | | This patch makes sure that for every* config type we have, the defaults you get from a Builder match those you get from Serde, and that both match the value that you get from arti_defaults.toml. Later down the line I'll be adding some tests to keep these in sync. * StorageConfig still has no defaults of its own, since we aren't so sure we want other applications to use Arti's directories by default.
* Rename .gitignore APP_FOO to ARTI_FOO.Nick Mathewson2021-11-211-1/+1
| | | | | | | | Since these shell-variables are hardwired to use org.torproject.Arti as the program name, it isn't appropriate to call them "app-specific". If we someday reinstate APP_FOO, it should be based on a user-provided application name.
* Give CfgPath an alternative inner representation.Nick Mathewson2021-11-211-12/+2
| | | | | | | | In order to handle explicitly specified path buffers directly, we now let CfgPath be either a string (that gets expanded) or a PathBuf (that doesn't). This simplifies TorClientConfig::with_directories()
* Give every ConfigBuilder a From<Config> implementation.Nick Mathewson2021-11-211-0/+16
| | | | This will make it more convenient to reconfigure things.
* Ensure that every section-level config type has a builder() function.Nick Mathewson2021-11-211-0/+7
|
* Make arti-client config object match arti config better.Nick Mathewson2021-11-213-51/+86
| | | | | | | | Now every section that the two configuration objects share has the same type and name. This should help us in documenting our configuration in a way that doesn't confuse people. There is still lots of API work to go.
* Lower StorageConfig to arti-client crateNick Mathewson2021-11-211-3/+39
|
* Allow type-complexity in hyper.rs exampleNick Mathewson2021-11-211-0/+1
| | | | | This isn't the prettiest, but suppressing the warning does make the example warning free.
* Fold "circuit_timing" and "request_timing" into a single section.Nick Mathewson2021-11-181-1/+1
|
* Move top-level configuration downwards from `arti` to `arti-config`.Nick Mathewson2021-11-182-1/+5
| | | | | | | | To do this at all neatly, I had to split out `tor-config` from `arti-config` again, and putting the lower level stuff (paths, builder errors) into tor-config. I also changed our use of derive_builder to always use a common error type, to avoid error type proliferation.
* Typo fix from reddit thread.Nick Mathewson2021-11-171-1/+1
|
* Remove dependency from arti-client to tor-config.Nick Mathewson2021-11-162-9/+13
| | | | | I'm about to make tor-config a higher-level module, so it can't be a dependency for tor-config.