aboutsummaryrefslogtreecommitdiff
path: root/crates/arti-testing
Commit message (Collapse)AuthorAgeFilesLines
...
* Bump crate and dependency versions.Nick Mathewson2022-06-241-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were done with the following commands: ``` cargo set-version -p tor-basic-utils --bump patch cargo set-version -p fs-mistrust --bump minor cargo set-version -p tor-error --bump patch cargo set-version -p tor-config --bump patch cargo set-version -p tor-units --bump patch cargo set-version -p tor-rtcompat --bump minor cargo set-version -p tor-llcrypto --bump patch cargo set-version -p tor-bytes --bump minor cargo set-version -p tor-socksproto --bump minor cargo set-version -p tor-cert --bump minor cargo set-version -p tor-cell --bump minor cargo set-version -p tor-proto --bump minor cargo set-version -p tor-netdoc --bump patch cargo set-version -p tor-netdir --bump minor cargo set-version -p tor-persist --bump patch cargo set-version -p tor-chanmgr --bump minor cargo set-version -p tor-guardmgr --bump minor cargo set-version -p tor-circmgr --bump patch cargo set-version -p tor-dirclient --bump patch cargo set-version -p tor-dirmgr --bump minor cargo set-version -p arti-client --bump patch cargo set-version -p arti --bump minor cargo set-version -p arti-bench --bump minor cargo set-version -p arti-testing --bump minor ```
* Run maint/add_warning crates/*/src/{lib,main}.rsIan Jackson2022-06-231-0/+3
| | | | Update all lint blocks
* lints: Make lint blocks consistentIan Jackson2022-05-311-1/+2
| | | | The remaining consequences of running add_warning
* lints: arti-testing: Move some allows outside the auto blockIan Jackson2022-05-311-2/+3
|
* lints: Add let_unit_value allow to all cratesIan Jackson2022-05-311-0/+1
| | | | | From running add_warning, with manual picking of the right hunks/lines.
* lints: Add lint block delimiters to every crateIan Jackson2022-05-311-0/+2
| | | | | | This was the result of: maint/add_warning crates/*/src/{lib,main}.rs and then manually curating the results.
* Lexically sort Cargo.toml dependenciesOrhun Parmaksız2022-05-281-17/+16
| | | | | | Utilize cargo-sort: https://github.com/DevinR528/cargo-sort Signed-off-by: Orhun Parmaksız <[email protected]>
* Regenerate version bump from previous commit.arti-v0.4.0Nick Mathewson2022-05-271-4/+4
| | | | | | | This commit was made by reverting the previous commit, then re-running the script I used to generate it. In theory there should be no semantic changes: only changes due to improved formatting from cargo edit.
* Semantic version changes for Arti 0.4.0 releaseNick Mathewson2022-05-271-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | I followed the following procedure to make these changes: * I used maint/changed_crates to find out which crates had changed since 0.3.0. * I used grep and maint/list_crates to sort those crates in topological (dependency) order. * I looked through semver_status to find which crates were listed as having semver-relevant changes (new APIs and breaking changes). * I scanned through the git logs of the crates with no semver-relevant changes listed to confirm that, indeed, they had no changes. For those crates, I incremented their patch-level version _without_ changing the version that other crates depend on. * I scanned through the git logs of the crates with no semver-relevant changes listed to confirm that, indeed, they had no obvious breaking changes. * I treated all crates that depend on `arti` and/or `arti-client` as having breaking changes. * I identified crates that depend on crates that have changed, even if they have not changed themselves, and identified them as having a non-breaking change. * For all of the crates, I used `cargo set-version -p $CRATE --bump $STATUS` (where `STATUS` is `patch` or `minor`) to update the versions, and the depended-upon versions.
* Split TorClientConfig out of ArtiConfig, and Resolvable traitIan Jackson2022-05-241-3/+3
| | | | | | | | | | | | This gets rid of `#[serde(flatten)]` which prevents serde_ignored (and other kinds of introspection) from working properly. The price is now that the toplevel has to deal with two configuration objects. The Resolvable trait is overkill right now, but is going to do More Things in a moment. In particular, we need the impl on tuples, so that the whole config can be processed in one go.
* Abolish arti-config, replacing with tombstone crateIan Jackson2022-05-131-1/+0
|
* arti-config abolition: Change references to use tor_configIan Jackson2022-05-133-2/+6
| | | | | | | | Generally, change the paths that mention the crate name to go via a module-level "use". This involves adding tor-config as a direct dependency for a few crates.
* ConfigurationSource: Rename new to new_emptyIan Jackson2022-05-111-1/+1
| | | | | This emphasises its nature. We're going to provide a more cooked constructor in a moment.
* Bump the version of every* crate to 0.3.0Nick Mathewson2022-05-061-9/+9
| | | | * Except for safelog and fs-mistrust, which are new.
* Fix grammar and typosSamanta Navarro2022-04-271-1/+1
|
* Bump to config 0.13Nick Mathewson2022-04-261-1/+1
|
* Upgrade to rlimit 0.8.3, again.Nick Mathewson2022-04-261-1/+1
| | | | | | | Now that our MSRV is at 1.56, we can use the latest rlimit. It has to be 0.8.3 (not "0.8"), since 0.8.2 has compatibility issues with 1.56.
* squash! Bump every crate's edition to 2021.Nick Mathewson2022-04-251-1/+0
| | | | | Remove all `use` statements for `TryFrom` and `TryInto`. These are now redundant in Rust 2021.
* Bump every crate's edition to 2021.Nick Mathewson2022-04-251-1/+1
| | | | | | | | | | This is an automated change made with a perl one-liner and verified with grep -L and grep -l. Some warnings are introduced with this change; they will be removed in subsequent commits. See arti#208 for older discussion on this issue.
* Add 'rust-version = "1.56"' to every Cargo.toml file.Nick Mathewson2022-04-251-0/+1
| | | | | | | This change was made automatically with a perl one-liner, and confirmed with `grep -L`. The `rust-version` field itself was introduced in 1.56.0.
* Reformat all not-yet-reformatted Cargo.toml files.Nick Mathewson2022-04-251-4/+4
| | | | | There are no semantic changes here; only formatting. This is in preparation for other changes (wrt MSRV and edition)
* Downgrade `rlimit` to 0.7.Nick Mathewson2022-04-061-1/+1
| | | | | | | | | | Upstream 0.8.2 has broken compilation with Rust 1.53; versions 0.8.{0,1} have been yanked. Possibly by the time the next arti version comes out, they'll have fixed this situation, or we'll have upgraded our MSRV. Upstream issue at https://github.com/Nugine/rlimit/issues/42 .
* Bump all arti*, tor* crates to 0.2.0Nick Mathewson2022-04-011-9/+9
| | | | | | | | Not all of these strictly need to be bumped to 0.2.0; many could go to 0.1.1 instead. But since everything at the tor-rtcompat and higher layers has had breaking API changes, it seems not so useful to distinguish. (It seems unlikely that anybody at this stage is depending on e.g. tor-protover but not arti-client.)
* Merge branch 'upgrade_pre_020' into 'main'Nick Mathewson2022-04-011-1/+1
|\ | | | | | | | | Run cargo upgrade/update in preparation for 0.2.0 See merge request tpo/core/arti!444
| * Upgrade rlimit -> 0.8.0Nick Mathewson2022-04-011-1/+1
| |
* | Directory filtering in arti-testing.Nick Mathewson2022-03-314-1/+225
|/ | | | | | | | | This feature allows us to detect different failing cases for arti#329 that would otherwise be hard to induce. It works by filtering consensus directory objects and/or microdescriptor objects before introducing them to the directory manager. Closes #397.
* README.md for arti-testing.Nick Mathewson2022-03-301-0/+53
|
* Move ArtiConfig to new arti::cfg moduleIan Jackson2022-03-212-1/+2
| | | | Code motion and import fixups.
* add udp to runtimetrinity-1686a2022-03-141-0/+1
|
* arti-testing: Make Action implement CopyNick Mathewson2022-03-101-2/+2
|
* arti-testing: reverse two more attrs in attempt to fix min-versionsNick Mathewson2022-03-071-1/+1
|
* arti-testing: reverse two attrs in attempt to fix min-versionsNick Mathewson2022-03-071-1/+1
|
* arti-testing: todo comment cleanupNick Mathewson2022-03-071-8/+1
|
* arti-testing: support for conditional TCP failure.Nick Mathewson2022-03-073-9/+89
|
* arti-testing: add support for black-holing TCP connections.Nick Mathewson2022-03-073-7/+112
|
* arti-testing: CLI for making TCP connections break.Nick Mathewson2022-03-073-9/+146
|
* arti-testing: Initial support for broken TCP.Nick Mathewson2022-03-074-7/+98
| | | | | | This commit adds support for a BrokenTcp provider that can make connection attempts fail or time out. It doesn't yet have a way to turn on the failure.
* fix reproducible build summary giving invalid branch and commit idtrinity-1686a2022-03-041-1/+1
| | | | | fix #378 also fix unrelated error in nightly rustdoc CI
* Allow println in arti-testing.Nick Mathewson2022-03-031-0/+2
|
* arti-testing: Initial implementationNick Mathewson2022-03-036-0/+691
This commit adds a new program to try to implement the ideas behind experimentation in arti#329. In particular, it tries to implement basic client "can I bootstrap and connect" functionality testing, with a lot of instrumentation, and support for breaking things. So far, the instrumentation is limited to counting TCP bytes and connections, and counting events. Still, this is enough to measure behavior on some of the incorrect-clock tests. NOTE: For now, you are _required_ to pass in an explicit configuration, in hopes that this will lead you to override your storage directories for doing specific experiments.