| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/issues/2436#note_3384773
Made with
maint/bump-nodep hashx equix fs-mistrust futures-copy
and then updating Cargo.lock.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The non-{arti-,tor-} crates are:
```
./maint/list-crates | rg -v '^(tor|arti)'
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
retry-error
futures-copy
```
Because this release bumps the MSRV, I am bumping the minor version of all of
them.
MINOR="
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
retry-error
futures-copy
"
for crate in $MINOR; do
cargo set-version --bump minor -p $crate;
done
```
|
| |
|
|
|
|
|
|
|
| |
`clippy::collapsible_if` started triggering after bumping the MSRV to
1.88.
Since this triggers from a lot of places, and since there even are a
couple of instances where we explicitly allow `clippy::collapsible_ifs`,
I've opened #2342 for deciding what to do about it.
|
| |
|
|
|
|
|
| |
As agreed at our last team meeting.
See
https://gitlab.torproject.org/tpo/core/arti/#minimum-supported-rust-version
|
| |
|
|
|
|
|
|
| |
These were all only changed by a98faf72, which simply adds deny
statements for clippy::unused_async in various places.
It's not clear to me that we even need to bump these versions, but that
seems to be what our release documentation implies.
|
| |
|
|
| |
This adds the lint to all our crates.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The non-{arti-,tor-} crates are:
```
./maint/list_crates | rg -v '^(tor|arti)'
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
retry-error
futures-copy
```
We split them in the following categories:
* crates with no changes (no version bumps): None
```
maint/changed_crates -v "arti-v$LAST_VERSION" 2>&1 >/dev/null | grep -i "no change" | grep -v '\(tor\|arti\)-'
```
* crates that only have non-functional changes (bump the patch version,
but not the dependend-on version):
- oneshot-fused-workaround
- slotmap-careful
- test-temp-dir
- fslock-guard
- equix
- caret
- safelog
- retry-error
* crates where functional changes were made, but no APIs were added or broken:
- hashx
- fs-mistrust
- futures-copy
* crates where APIs were broken (bump minor): None
The bumps from this commit were created using this script:
```
PATCH_NF=(
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
equix
caret
safelog
retry-error
)
PATCH="
hashx
fs-mistrust
futures-copy
"
./maint/bump_nodep "${PATCH_NF[@]}"
for crate in $PATCH; do
cargo set-version --bump patch -p $crate;
done
```
|
| |
|
|
|
|
|
|
|
|
|
| |
This will help a lot when people try to create files with names like
`""` and `" "` and `"foo "` and `"foo! Unless"`. It won't help as much
with files that have names like
`"filename\". To solve this problem, run install-trojan-now ; \""`.
Fortunately, we don't let adversaries choose filenames.
Closes #2266.
|
| |
|
|
|
|
|
|
|
| |
This makes fs-mistrust consistent with stat() and mkdir() and
friends, which consider "" to be an invalid path. Previously, ""
was accepted whenever mistrust was enabled, but rejected
whenever mistrust was disabled.
Closes #2265.
|
| |
|
|
| |
Run maint/add_warning
|
| |
|
|
|
|
|
| |
```bash
readarray -t publish < <(cargo metadata --format-version 1 | jq -r '.packages[] | select((.id | startswith("path+file:///")) and (.rust_version != null) and (.publish == null or .publish == true or .publish != [])) | .name')
for package in "${publish[@]}"; do echo "$package:"; cargo set-version --bump minor -p "$package"; done
```
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because we've updated our MSRV, we must bump the minor version for every
package.
This was done as follows:
cargo set-version -p arti 1.6.0
cargo set-version -p oneshot-fused-workaround 0.4.0
cargo set-version -p slotmap-careful 0.4.0
cargo set-version -p test-temp-dir 0.5.0
cargo set-version -p fslock-guard 0.4.0
cargo set-version -p hashx 0.5.0
cargo set-version -p equix 0.4.0
cargo set-version -p caret 0.7.0
cargo set-version -p fs-mistrust 0.12.0
cargo set-version -p safelog 0.6.0
cargo set-version -p retry-error 0.8.0
xargs -I P <<END cargo set-version -p P 0.35.0
tor-basic-utils
tor-error
tor-general-addr
tor-geoip
tor-rtcompat
tor-rtmock
tor-async-utils
tor-config
tor-config-path
tor-rpc-connect
tor-log-ratelim
tor-rpcbase
tor-memquota
tor-units
tor-llcrypto
tor-bytes
tor-protover
tor-checkable
tor-cert
tor-key-forge
tor-hscrypto
tor-socksproto
tor-linkspec
tor-cell
tor-proto
tor-netdoc
tor-consdiff
tor-netdir
tor-relay-selection
tor-persist
tor-keymgr
tor-chanmgr
tor-ptmgr
tor-dircommon
tor-guardmgr
tor-circmgr
tor-dirclient
tor-dirmgr
tor-dirserver
tor-hsclient
tor-hsservice
tor-hsrproxy
tor-relay-crypto
arti-client
arti-relay
arti-rpcserver
arti-ureq
arti-rpc-client-core
END
|
| |
|
|
| |
This feature has been removed from nightly, in favor of doc_cfg.
|
| |
|
|
| |
Closes #2107
|
| |
|
|
|
|
|
|
| |
Per policy, we bump the minor version of every tor-*, arti-* crate
on each release.
We have updated our MSRV, so we're treating this as a breaking
change for our non-(arti/tor)-prefixed crates too.
|
| |
|
|
| |
Closes #2093.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
First, run
```
git grep -l "^edition =" |
xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;'
```
Second, manually verify that all Cargo.toml files have changed,
and nothing else has changed.
Third, run cargo fmt again.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Run cargo fix --edition
2. Selectively revert the "if let"->"match" changes.
These changes are meant to protect us from the lifetime changes
for "if let" bindings in Rust 2024.
But we're not actually relying on the old lifetime rules
anywhere, and the match syntax here is quite ugly.
3. Automatically revert `$pat:expr_2021` to `$pat:expr`.
(We don't actually want to restrict the expression syntax
that our macros accept).
Done with
`git grep -l expr_2021 | xargs perl -i -pe 's/expr_2021/expr/g;'`
4. Run cargo fmt.
|
| |\
| |
| |
| |
| |
| |
| | |
Bump MSRV to Rust 1.85
Closes #2095
See merge request tpo/core/arti!3128
|
| | | |
|
| |/
|
|
|
| |
Use unix-specific crates only if needed and suppress clippy warnings of
unused variables if their usage is unix-specific.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The non-{arti-,tor-} crates are:
```
./maint/list_crates | rg -v '^(tor|arti)'
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
retry-error
```
We split them in the following categories:
* crates with no changes (no version bumps): None
```
maint/changed_crates -v "arti-v$LAST_VERSION" 2>&1 >/dev/null | grep -i "no change" | grep -v '\(tor\|arti\)-'
```
* crates that only have non-functional changes (bump the patch version):
- oneshot-fused-workaround
- slotmap-careful
- test-temp-dir
- fslock-guard
- hashx
- equix
- caret
- safelog
- retry-error
* crates where APIs were broken (bump minor):
- fs-mistrust (the implicit once_cell feature was removed)
The bumps from this commit were created using this script:
```
PATCH="
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
safelog
retry-error
"
for crate in $PATCH; do
cargo set-version --bump patch -p $crate;
done
MINOR="
fs-mistrust
"
for crate in $MINOR; do
cargo set-version --bump minor -p $crate;
done
```
|
| |
|
|
| |
See #2060.
|
| |
|
|
|
|
| |
- Replaced `once_cell::sync::Lazy` with `std::sync::LazyLock`.
Signed-off-by: hashcatHitman <[email protected]>
|
| |
|
|
|
|
|
|
| |
This is done using:
cargo set-version --bump patch -p fs-mistrust
cargo set-version --bump patch -p equix
cargo set-version --bump patch -p fslock-guard
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The [latest version] of `cargo-sort` is more opinionated than the
previous one, and is now causing the `rust-checks` job to fail on
`main`.
This commit applies the fixes needed to satisfy the new `cargo-sort`
rules. These changes were generated by running `cargo sort --workspace`
several times, until `cargo sort --check --workspace` finally succeeded
(it couldn't fix all the errors in one go, for some reason).
I have omitted the changes `cargo-sort` made to the top-level
`Cargo.toml`, to preserve the topological ordering of the workspace
members.
Closes #2014
[latest version]: https://github.com/DevinR528/cargo-sort/blob/f066ae80e5e6f5c1d8f0e2b8099461dcb97d9656/changelog.md#200
|
| |
|
|
|
|
|
| |
The `IoError::other` function is an easier way to say
`IoError::new(IoErrorKind::Other, ...)`. It's been around since
1.74, but clippy started warning about the more verbose version in
1.87.
|
| | |
|
| |\
| |
| |
| |
| | |
fs-mistrust: fix build on non-unix systems
See merge request tpo/core/arti!2962
|
| | |
| |
| |
| |
| |
| | |
The TrustAdminOnly enum value is only defined for unix systems.
Consider this fact in mistrust_build function to fix build on
e.g. Windows systems.
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The non-{arti-,tor-} crates are:
```
./maint/list_crates | rg -v '^(tor|arti)'
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
retry-error
```
Of these, only hashx and fs-mistrust have changed, as per:
```
./maint/changed_crates -v "arti-v$LAST_VERSION" 2>&1 >/dev/null | grep -i "no change" | grep -v '\(tor\|arti\)-'
```
So these were updated with:
```
./maint/bump_nodep hashx fs-mistrust
```
|
| |\
| |
| |
| |
| | |
fix builds for Android
See merge request tpo/core/arti!2824
|
| | |
| |
| |
| |
| |
| |
| | |
This does fix builds for both the arti binary and the tests. Most tests
seem to be passing, some are failing. I will try to investigate them and
send fixes/create issue to highlight them. Hopefully this helps arti in
being production ready fast.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The non-{arti-,tor-} crates are:
```
./maint/list_crates | rg -v '^(tor|arti)'
oneshot-fused-workaround
slotmap-careful
test-temp-dir
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
retry-error
```
We split them in the following categories:
* crates with no changes (no version bumps):
```
maint/changed_crates -v "arti-v$LAST_VERSION" 2>&1 >/dev/null | grep -i "no change" | grep -v '\(tor\|arti\)-'
oneshot-fused-workaround: No change.
slotmap-careful: No change.
fslock-guard: No change.
caret: No change.
retry-error: No change.
```
* crates that only have non-functional changes (bump the patch version):
- test-temp-dir
- equix
- fs-mistrust
- safelog
* crates where APIs were broken (bump minor):
- hashx (`RngCore` impl for `SipRand`)
The bumps from this commit were created using this script:
```
PATCH="
test-temp-dir
equix
fs-mistrust
safelog
"
for crate in $PATCH; do
cargo set-version --bump patch -p $crate;
done
MINOR="
hashx
"
for crate in $MINOR; do
cargo set-version --bump minor -p $crate;
done
```
|
| |/ |
|
| |
|
|
| |
Fixes #1841.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
There are new features.
cargo set-version --offline --bump minor -p fs-mistrust
Actually, I have discovered by diffing that some methods now take
`&self` where previously they took `self`. This will need a further
bump to the fs-mistrust version and a fix to the changelog.
I will do that. Filed blocker ticket #1841 for it.
|
| |
|
|
| |
No code changes needed.
|
| | |
|
| |
|
|
|
| |
Since it makes an exception, we need to be clear about the
exceptions that it _doesn't_ make.
|
| |
|
|
|
|
| |
Since "obeying the constraints of a FileAccess" is a term of art,
this commit introduces links from the places where it is used
to the place where it is defined.
|
| |
|
|
|
|
|
|
|
| |
`std::os::unix::fs::MetadataExt` was indeed the right trait to
import, but it doesn't exist on non-unix platforms.
This is another bugfix on !2707. It should retain the fix of !2717.
I've confirmed that it builds on Windows and passes tests on Linux
and Mac.
|
| | |
|
| |
|
|
|
| |
This approach makes it even less likely for people to store a
FileAccess for repeated use.
|
| | |
|
| | |
|
| | |
|