Skip to content

Commit 2913b04

Browse files
Update Rust crate tempfile to v3.19.0 (#1676)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [tempfile](https://stebalien.com/projects/tempfile-rs/) ([source](https://redirect.github.com/Stebalien/tempfile)) | workspace.dependencies | minor | `3.8.1` -> `3.19.0` | --- ### Release Notes <details> <summary>Stebalien/tempfile (tempfile)</summary> ### [`v3.19.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3190) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.18.0...v3.19.0) - Remove direct dependency on `cfg-if`. It's still in the tree, but we didn't really need to use it in this crate. - Add an unstable feature (`unstable-windows-keep-open-tempfile`) to test a potential fix to [#&#8203;339](https://redirect.github.com/Stebalien/tempfile/issues/339). ### [`v3.18.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3180) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.17.1...v3.18.0) - Update `rustix` to 1.0.0. - Make `NamedTempFile::persist_noclobber` atomic on Apple operating systems. It's now atomic on MacOS, Windows, and Linux (depending on the OS version and filesystem used). ### [`v3.17.1`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3171) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.17.0...v3.17.1) - Fix build with `windows-sys` 0.52. Unfortunately, we have no CI for older `windows-sys` versions at the moment... ### [`v3.17.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3170) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.16.0...v3.17.0) - Make sure to use absolute paths in when creating unnamed temporary files (avoids a small race in the "immediate unlink" logic) and in `Builder::make_in` (when creating temporary files of arbitrary types). - Prevent a theoretical crash that could (maybe) happen when a temporary file is created from a drop function run in a TLS destructor. Nobody has actually reported a case of this happening in practice and I have been unable to create this scenario in a test. - When reseeding with `getrandom`, use platform (e.g., CPU) specific randomness sources where possible. - Clarify some documentation. - Unlink unnamed temporary files on windows *immediately* when possible instead of waiting for the handle to be closed. We open files with "Unix" semantics, so this is generally possible. ### [`v3.16.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3160) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.15.0...v3.16.0) - Update `getrandom` to `0.3.0` (thanks to [@&#8203;paolobarbolini](https://redirect.github.com/paolobarbolini)). - Allow `windows-sys` versions `0.59.x` in addition to `0.59.0` (thanks [@&#8203;ErichDonGubler](https://redirect.github.com/ErichDonGubler)). - Improved security documentation (thanks to [@&#8203;n0toose](https://redirect.github.com/n0toose) for collaborating with me on this). ### [`v3.15.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3150) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.14.0...v3.15.0) Re-seed the per-thread RNG from system randomness when we repeatedly fail to create temporary files ([#&#8203;314](https://redirect.github.com/Stebalien/tempfile/issues/314)). This resolves a potential DoS vector ([#&#8203;178](https://redirect.github.com/Stebalien/tempfile/issues/178)) while avoiding `getrandom` in the common case where it's necessary. The feature is optional but enabled by default via the `getrandom` feature. For libc-free builds, you'll either need to disable this feature or opt-in to a different [`getrandom` backend](https://redirect.github.com/rust-random/getrandom?tab=readme-ov-file#opt-in-backends). ### [`v3.14.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3140) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.13.0...v3.14.0) - Make the wasip2 target work (requires tempfile's "nightly" feature to be enabled). [#&#8203;305](https://redirect.github.com/Stebalien/tempfile/pull/305). - Allow older windows-sys versions [#&#8203;304](https://redirect.github.com/Stebalien/tempfile/pull/304). ### [`v3.13.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3130) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.12.0...v3.13.0) - Add `with_suffix` constructors for easily creating new temporary files with a specific suffix (e.g., a specific file extension). Thanks to [@&#8203;Borgerr](https://redirect.github.com/Borgerr). - Update dependencies (fastrand & rustix). ### [`v3.12.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3120) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.11.0...v3.12.0) - Add a `keep(keep: bool)` function to builder that suppresses delete-on-drop behavior (thanks to [@&#8203;RalfJung](https://redirect.github.com/RalfJung)). - Update `windows-sys` from 0.52 to 0.59. ### [`v3.11.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3110) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.10.1...v3.11.0) - Add the ability to override the default temporary directory. This API shouldn't be used in general, but there are some cases where it's unavoidable. ### [`v3.10.1`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3101) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.10.0...v3.10.1) - Handle potential integer overflows in 32-bit systems when seeking/truncating "spooled" temporary files past 4GiB (2³²). - Handle a theoretical 32-bit overflow when generating a temporary file name larger than 4GiB. Now it'll panic (on allocation failure) rather than silently succeeding due to wraparound. Thanks to [@&#8203;stoeckmann](https://redirect.github.com/stoeckmann) for finding and fixing both of these issues. ### [`v3.10.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#3100) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.9.0...v3.10.0) - Drop `redox_syscall` dependency, we now use `rustix` for Redox. - Add `Builder::permissions` for setting the permissions on temporary files and directories (thanks to [@&#8203;Byron](https://redirect.github.com/Byron)). - Update rustix to 0.38.31. - Update fastrand to 2.0.1. ### [`v3.9.0`](https://redirect.github.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#390) [Compare Source](https://redirect.github.com/Stebalien/tempfile/compare/v3.8.1...v3.9.0) - Updates windows-sys to 0.52 - Updates minimum rustix version to 0.38.25 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 8pm,before 6am" in timezone America/Los_Angeles, Automerge - "after 8pm,before 6am" in timezone America/Los_Angeles. 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/oxidecomputer/crucible). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Alan Hanson <alan@oxidecomputer.com>
1 parent 2ca8e5c commit 2913b04

File tree

2 files changed

+45
-24
lines changed

2 files changed

+45
-24
lines changed

Cargo.lock

+37-18
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

workspace-hack/Cargo.toml

+8-6
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ memchr = { version = "2" }
3939
num-integer = { version = "0.1", default-features = false, features = ["i128", "std"] }
4040
num-iter = { version = "0.1", default-features = false, features = ["i128", "std"] }
4141
num-traits = { version = "0.2", features = ["i128", "libm"] }
42+
once_cell = { version = "1" }
4243
openapiv3 = { version = "2", default-features = false, features = ["skip_serializing_defaults"] }
4344
phf_shared = { version = "0.11" }
4445
rand = { version = "0.8", features = ["min_const_gen", "small_rng"] }
@@ -88,6 +89,7 @@ memchr = { version = "2" }
8889
num-integer = { version = "0.1", default-features = false, features = ["i128", "std"] }
8990
num-iter = { version = "0.1", default-features = false, features = ["i128", "std"] }
9091
num-traits = { version = "0.2", features = ["i128", "libm"] }
92+
once_cell = { version = "1" }
9193
openapiv3 = { version = "2", default-features = false, features = ["skip_serializing_defaults"] }
9294
phf_shared = { version = "0.11" }
9395
rand = { version = "0.8", features = ["min_const_gen", "small_rng"] }
@@ -123,7 +125,7 @@ hyper-rustls = { version = "0.27", default-features = false, features = ["http1"
123125
hyper-util = { version = "0.1", features = ["full"] }
124126
mio = { version = "1", features = ["net", "os-ext"] }
125127
nix = { version = "0.29", features = ["feature", "fs", "term", "uio"] }
126-
once_cell = { version = "1", features = ["unstable"] }
128+
once_cell = { version = "1", default-features = false, features = ["unstable"] }
127129
rustix = { version = "0.38", features = ["fs", "stdio", "termios"] }
128130
rustls-pki-types = { version = "1", features = ["std"] }
129131
spin = { version = "0.9", default-features = false, features = ["once", "spin_mutex"] }
@@ -137,7 +139,7 @@ hyper = { version = "1", features = ["full"] }
137139
hyper-rustls = { version = "0.27", default-features = false, features = ["http1", "http2", "ring", "tls12", "webpki-tokio"] }
138140
hyper-util = { version = "0.1", features = ["full"] }
139141
mio = { version = "1", features = ["net", "os-ext"] }
140-
once_cell = { version = "1", features = ["unstable"] }
142+
once_cell = { version = "1", default-features = false, features = ["unstable"] }
141143
rustix = { version = "0.38", features = ["fs", "stdio", "termios"] }
142144
rustls-pki-types = { version = "1", features = ["std"] }
143145
spin = { version = "0.9", default-features = false, features = ["once", "spin_mutex"] }
@@ -151,7 +153,7 @@ hyper-rustls = { version = "0.27", default-features = false, features = ["http1"
151153
hyper-util = { version = "0.1", features = ["full"] }
152154
mio = { version = "1", features = ["net", "os-ext"] }
153155
nix = { version = "0.29", features = ["feature", "fs", "term", "uio"] }
154-
once_cell = { version = "1", features = ["unstable"] }
156+
once_cell = { version = "1", default-features = false, features = ["unstable"] }
155157
rustix = { version = "0.38", features = ["fs", "stdio", "termios"] }
156158
rustls-pki-types = { version = "1", features = ["std"] }
157159
tokio-util = { version = "0.7", features = ["codec", "io"] }
@@ -163,7 +165,7 @@ hyper = { version = "1", features = ["full"] }
163165
hyper-rustls = { version = "0.27", default-features = false, features = ["http1", "http2", "ring", "tls12", "webpki-tokio"] }
164166
hyper-util = { version = "0.1", features = ["full"] }
165167
mio = { version = "1", features = ["net", "os-ext"] }
166-
once_cell = { version = "1", features = ["unstable"] }
168+
once_cell = { version = "1", default-features = false, features = ["unstable"] }
167169
rustix = { version = "0.38", features = ["fs", "stdio", "termios"] }
168170
rustls-pki-types = { version = "1", features = ["std"] }
169171
tokio-util = { version = "0.7", features = ["codec", "io"] }
@@ -177,7 +179,7 @@ hyper-rustls = { version = "0.27", default-features = false, features = ["http1"
177179
hyper-util = { version = "0.1", features = ["full"] }
178180
mio = { version = "1", features = ["net", "os-ext"] }
179181
nix = { version = "0.29", features = ["feature", "fs", "term", "uio"] }
180-
once_cell = { version = "1", features = ["unstable"] }
182+
once_cell = { version = "1", default-features = false, features = ["unstable"] }
181183
rustix = { version = "0.38", features = ["fs", "stdio", "termios"] }
182184
rustls-pki-types = { version = "1", features = ["std"] }
183185
spin = { version = "0.9", default-features = false, features = ["once", "spin_mutex"] }
@@ -192,7 +194,7 @@ hyper = { version = "1", features = ["full"] }
192194
hyper-rustls = { version = "0.27", default-features = false, features = ["http1", "http2", "ring", "tls12", "webpki-tokio"] }
193195
hyper-util = { version = "0.1", features = ["full"] }
194196
mio = { version = "1", features = ["net", "os-ext"] }
195-
once_cell = { version = "1", features = ["unstable"] }
197+
once_cell = { version = "1", default-features = false, features = ["unstable"] }
196198
rustix = { version = "0.38", features = ["fs", "stdio", "termios"] }
197199
rustls-pki-types = { version = "1", features = ["std"] }
198200
spin = { version = "0.9", default-features = false, features = ["once", "spin_mutex"] }

0 commit comments

Comments
 (0)