summaryrefslogtreecommitdiff
path: root/crates/tor-persist
Commit message (Collapse)AuthorAgeFilesLines
...
| * test lint blocks: Add many many automaticallyIan Jackson2022-12-123-0/+24
| | | | | | | | | | This is precisely the result of running the rune in maint/adhoc-add-lint-blocks.
* | doc: consistent summary line for the READMEsEmil Engler2022-12-201-1/+1
|/ | | | | This commit introduces a consistency to the summary line of all README.md files in each and every crate.
* Test a couple more error cases in tor-persist.Nick Mathewson2022-12-062-8/+29
|
* Bump the minor version of every crate.Nick Mathewson2022-11-301-3/+3
| | | | | We made this job easy this time around: by incrementing our MSRV, we have forced ourselves to do at least a minor bump everywhere.
* Fix a bunch of "needless borrow" warnings on nightlyNick Mathewson2022-11-182-5/+5
| | | | | It looks like, despite a few false starts, they've got this warning right; there weren't any false positives.
* tor-persist: use map_whileNick Mathewson2022-11-101-4/+1
| | | | It was introduced in Rust 1.57.
* bump rust-version to 1.60 in every crate.Nick Mathewson2022-11-101-1/+1
|
* Run add_warnings.Nick Mathewson2022-11-031-0/+1
|
* Require derive_more 0.99.3Ian Jackson2022-11-031-1/+1
| | | | | | | | 0.99.[012] have a bug https://github.com/JelteF/derive_more/issues/114 which makes the Deref derive for bridgedesc::StateGuard not work and therefore breaks minimal-versions CI. It seems simpler to require the newer version everywhere.
* cargo fmt to remove blank linesIan Jackson2022-10-121-1/+0
| | | | | | | Apparently cargo fmt doesn't like these, which my perl rune didn't delete. This commit is precisely the result of `cargo fmt`.
* Replace all README copies in src/lib.rs with includesIan Jackson2022-10-121-9/+1
| | | | | | | | The feature we want is `#[doc = include_str!("README.md")]`, which is stable since 1.54 and our MSRV is now 1.56. This commit is precisely the result of the following Perl rune: perl -i~ -0777 -pe 's{(^//!(?!.*\@\@).*\n)+}{#![doc = include_str!("../README.md")]\n}m' crates/*/src/lib.rs
* Bump crate versions in preparation for Arti 1.0.0 release.Nick Mathewson2022-09-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because we want to work more on ensuring that our semver stability story is solid, we are _not_ bumping arti-client to 1.0.0 right now. Here are the bumps we _are_ doing. Crates with "minor" bumps have had API breaks; crates with "patch" bumps have had new APIs added. Note that `tor-congestion` is not bumped here: it's a new crate, and hasn't been published before. ``` tor-basic-utils minor fs-mistrust minor tor-config minor tor-rtcompat minor tor-rtmock minor tor-llcrypto patch tor-bytes patch tor-linkspec minor tor-cell minor tor-proto minor tor-netdoc patch tor-netdir minor tor-persist patch tor-chanmgr minor tor-guardmgr minor tor-circmgr minor tor-dirmgr minor arti-client minor arti-hyper minor arti major arti-bench minor arti-testing minor ```
* Use anonymize_home() when displaying various messages.Nick Mathewson2022-08-312-4/+6
| | | | Closes #555
* add feature annotation not added by doc_auto_cfgtrinity-1686a2022-08-242-0/+2
|
* enable doc_auto_cfg feature on every crate when documenting for docs.rstrinity-1686a2022-08-242-0/+4
|
* Now that versions have bumped, remove semver.md files.Nick Mathewson2022-08-011-1/+0
|
* Bump minor versions on all crates that have had breaking changes.Nick Mathewson2022-08-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | Done with these commands: ``` cargo set-version -p fs-mistrust --bump minor 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-linkspec --bump minor cargo set-version -p tor-cell --bump minor cargo set-version -p tor-netdir --bump minor cargo set-version -p tor-persist --bump minor cargo set-version -p tor-chanmgr --bump minor cargo set-version -p tor-guardmgr --bump minor cargo set-version -p tor-circmgr --bump minor cargo set-version -p tor-dirclient --bump minor cargo set-version -p tor-dirmgr --bump minor cargo set-version -p arti-client --bump minor cargo set-version -p arti --bump minor ```
* tor-persist: Resource::Temporary: Mark with cfgIan Jackson2022-07-181-0/+1
| | | | Without this, some builds get a "variant is never constructed" warning.
* tor-persist: StateMgr: vagueify docs about NoLock errorIan Jackson2022-07-121-1/+1
| | | | `NoLock` is now a variant of `err::ErrorSource` but that is private.
* tor-persist: Big refactoring on Error type.Nick Mathewson2022-07-065-51/+211
| | | | | | | | | | | Every error now has an action (what we were trying to do), a resource (what we were trying to do it to), and a source (what problem we encountered). Initially I tried to add "action" and "resource" fields to error variants individually, but that led to a combinatorial explosion. Part of #323.
* tor-persist: Move Error to a module.Nick Mathewson2022-07-064-75/+80
|
* Bump crate and dependency versions.Nick Mathewson2022-06-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* fs-mistrust: convert Io error variant to a struct.Nick Mathewson2022-06-221-1/+1
|
* Editorial improvements on fs-mistrust errorsNick Mathewson2022-06-221-1/+1
| | | | | | These changes make sure that the errors conform to our preferred style, and include a description of what exactly we were doing when something went wrong.
* Fix clippy::significant_drop_in_scrutinee warningsNick Mathewson2022-06-151-1/+2
| | | | | | | | | This is apparently a new warning from clippy nightly, documented in https://rust-lang.github.io/rust-clippy/master/index.html#significant_drop_in_scrutinee . I'm not in love with the temporary variables that this warning wants me to introduce, but it does seem like a decent way to avoid some kinds of deadlock.
* 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-2/+2
| | | | | | 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-1/+1
| | | | | | | 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-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Merge branch 'tests-20220525' into 'main'Nick Mathewson2022-05-262-4/+110
|\ | | | | | | | | Add a few coverage-driven tests See merge request tpo/core/arti!536
| * Remove some stray dbg!() calls.Nick Mathewson2022-05-261-2/+1
| |
| * Test a few more corner cases in tor-persistNick Mathewson2022-05-252-4/+111
| | | | | | | | | | Also, if we get an IoError from a call to fs-mistrust, report it as an IoError.
* | update readmestrinity-1686a2022-05-251-1/+1
|/
* fs-mistrust: make Mistrust have a corresponding Builder type.Nick Mathewson2022-05-241-1/+1
| | | | | This is an approximately minimal revision to get Builder in place; subsequent commits will clean up the API.
* Update to newer sanitize-filename and tinystr.Nick Mathewson2022-05-231-1/+1
|
* Merge branch 'use-fs-mistrust'Nick Mathewson2022-05-093-35/+51
|\
| * tor-persist: Use fs-mistrust to verify state file permissions.Nick Mathewson2022-05-093-35/+51
| |
* | Bump the version of every* crate to 0.3.0Nick Mathewson2022-05-061-2/+2
|/ | | | * Except for safelog and fs-mistrust, which are new.
* serde attributes: A tiny bit of reorderingIan Jackson2022-05-051-1/+1
| | | | Having a consistent order will make the nest commit easier to read.
* 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.
* Fix build with Rust 1.53; we can't use map_whileNick Mathewson2022-04-141-1/+4
|
* tor-persist::fs::clean: Log warnings for directory read failuresIan Jackson2022-04-141-1/+19
|
* tor-persist::fs::clean: Tweaks based on review.Nick Mathewson2022-04-132-22/+34
| | | | | | | | | | | | Rename "deletable" to "obsolete". Simplify function structure. Report errors from `metadata()` and `modified()`. Don't claim that we're going to delete something unless we are. Comment about making CUTOFF configurable.
* Remove obsolete files from our state directory.Nick Mathewson2022-04-123-0/+139
| | | | | | | This patch removes files created by older versions of arti, if they are at least 4 weeks old. Closes #282
* Re-indent tor-persist/Cargo.toml.Nick Mathewson2022-04-121-4/+4
|
* Bump all arti*, tor* crates to 0.2.0Nick Mathewson2022-04-011-2/+2
| | | | | | | | 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 'clippy-allow-arc-clone' into 'main'Nick Mathewson2022-03-011-1/+0
|\ | | | | | | | | Disable clippy::clone_on_ref_ptr See merge request tpo/core/arti!352