rbtcollins / fs_at

Filesystem 'at' implementations for Unix and Windows
13 stars 15 forks source link

Update Rust crate tempfile to 3.8.0 #91

Closed renovate[bot] closed 1 year ago

renovate[bot] commented 1 year ago

Mend Renovate

This PR contains the following updates:

Package Type Update Change
tempfile (source) dev-dependencies minor 3.3.0 -> 3.8.0

Release Notes

Stebalien/tempfile (tempfile) ### [`v3.8.0`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#380) [Compare Source](https://togithub.com/Stebalien/tempfile/compare/v3.7.1...v3.8.0) - Added `with_prefix` and `with_prefix_in` to `TempDir` and `NamedTempFile` to make it easier to create temporary files/directories with nice prefixes. - Misc cleanups. ### [`v3.7.1`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#371) [Compare Source](https://togithub.com/Stebalien/tempfile/compare/v3.7.0...v3.7.1) - Tempfile builds on haiku again. - Under the hood, we've switched from the unlinkat/linkat syscalls to the regular unlink/link syscalls where possible. ### [`v3.7.0`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#370) [Compare Source](https://togithub.com/Stebalien/tempfile/compare/v3.6.0...v3.7.0) BREAKING: This release updates the MSRV to 1.63. This isn't an API-breaking change (so no major release) but it's still a breaking change for some users. - Update fastrand from 1.6 to 2.0 - Update rustix to 0.38 - Updates the MSRV to 1.63. - Provide AsFd/AsRawFd on wasi. ### [`v3.6.0`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#360) [Compare Source](https://togithub.com/Stebalien/tempfile/compare/v3.5.0...v3.6.0) - Update windows-sys to 0.48. - Update rustix min version to 0.37.11 - Forward some `NamedTempFile` and `SpooledTempFile` methods to the underlying `File` object for better performance (especially vectorized writes, etc.). - Implement `AsFd` and `AsHandle`. - Misc documentation fixes and code cleanups. ### [`v3.5.0`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#350) [Compare Source](https://togithub.com/Stebalien/tempfile/compare/v3.4.0...v3.5.0) - Update rustix from 0.36 to 0.37.1. This makes wasi work on rust stable - Update `windows-sys`, `redox_syscall` - BREAKING: Remove the implementation of `Write for &NamedTempFile where &F: Write`. Unfortunately, this can cause compile issues in unrelated code ([https://github.com/Stebalien/tempfile/issues/224](https://togithub.com/Stebalien/tempfile/issues/224)). ### [`v3.4.0`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#340) [Compare Source](https://togithub.com/Stebalien/tempfile/compare/v3.3.0...v3.4.0) SECURITY: Prior `tempfile` releases depended on `remove_dir_all` version 0.5.0 which was vulnerable to a [TOCTOU race](https://togithub.com/XAMPPRocky/remove_dir_all/security/advisories/GHSA-mc8h-8q98-g5hr). This same race is present in rust versions prior to 1.58.1. Features: - Generalized temporary files: `NamedTempFile` can now abstract over different kinds of files (e.g., unix domain sockets, pipes, etc.): - Add `Builder::make` and `Builder::make_in` for generalized temp file creation. - Add `NamedTempFile::from_parts` to complement `NamedTempFile::into_parts`. - Add generic parameter to `NamedTempFile` to support wrapping non-File types. Bug Fixes/Improvements: - Don't try to create a temporary file multiple times if the file path has been fully specified by the user (no random characters). - `NamedTempFile::persist_noclobber` is now always atomic on linux when `renameat_with` is supported. Previously, it would first link the new path, then unlink the previous path. - Fix compiler warnings on windows. Trivia: - Switch from `libc` to `rustix` on wasi/unix. This now makes direct syscalls instead of calling through libc. - Remove `remove_dir_all` dependency. The rust standard library has optimized their internal version significantly. - Switch to official windows-sys windows bindings. Breaking: - The minimum rust version is now `1.48.0`. - Mark most functions as `must_use`. - Uses direct syscalls on linux by default, instead of libc. - The new type parameter in `NamedTempFile` may lead to type inference issues in some cases.

Configuration

šŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

šŸš¦ Automerge: Enabled.

ā™» 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.



This PR has been generated by Mend Renovate. View repository job log here.