Skip to content

fix(deps): update rust crate tempfile to v3.20.0#50

Merged
GangGreenTemperTatum merged 2 commits intomainfrom
renovate/tempfile-3.x-lockfile
Jul 13, 2025
Merged

fix(deps): update rust crate tempfile to v3.20.0#50
GangGreenTemperTatum merged 2 commits intomainfrom
renovate/tempfile-3.x-lockfile

Conversation

@dreadnode-renovate-bot
Copy link
Copy Markdown
Contributor

@dreadnode-renovate-bot dreadnode-renovate-bot Bot commented Jun 30, 2025

This PR contains the following updates:

Package Type Update Change
tempfile (source) dependencies minor 3.13.0 -> 3.20.0

Release Notes

Stebalien/tempfile (tempfile)

v3.20.0

Compare Source

This release mostly unifies the behavior/capabilities around "keeping" temporary files:

  • Rename Builder::keep(bool) (via deprecation) to Builder::disable_cleanup(bool) to make it clear that behaves differently from NamedTempFile::keep(). The former disables automatic cleanup while the latter consumes the NamedTempFile object entirely and unsets the "temporary file" attribute (on Windows).
  • Rename TempDir::into_path (via deprecation) to TempDir::keep to mirror NamedTempFile::keep.
  • Add TempDir::disable_cleanup, NamedTempFile::disable_cleanup, and TempPath::disable_cleanup making it possible to disable automatic cleanup in-place after creating a temporary file/directory (equivalent to calling Builder::disable_cleanup before creating the file/directory).

Additionally, it adds a few spooled temporary file features:

  • Add SpooledTempFile::into_file for turning a SpooledTempFile into a regular unnamed temporary file, writing it to the backing storage ("rolling" it) if it was still stored in-memory.
  • Add spooled_tempfile_in and SpooledTempFile::new_in methods for creating spooled temporary files in a specific directory. This makes it possible to choose the backing device for your spooled temporary file which is rather important on Linux where the default temporary directory is likely backed by memory (defeating the entire point of having a spooled temporary file).

Finally, this release improves documentation, especially the top-level documentation explaining which temporary file type to use.

BREAKING for those with deny(warnings):

  • Builder::keep deprecated in favor of Builder::disable_cleanup.
  • TempDir::into_path is deprecated in favor of TempDir::keep.

BREAKING:

v3.19.1

Compare Source

  • Don't unlink temporary files immediately on Windows (fixes #​339). Unfortunately, this seemed to corrupt the file object (possibly a Windows kernel bug) in rare cases and isn't strictly speaking necessary.

v3.19.0

Compare Source

  • 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 #​339.

v3.18.0

Compare Source

  • 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

Compare Source

  • Fix build with windows-sys 0.52. Unfortunately, we have no CI for older windows-sys versions at the moment...

v3.17.0

Compare Source

  • 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

Compare Source

  • Update getrandom to 0.3.0 (thanks to @​paolobarbolini).
  • Allow windows-sys versions 0.59.x in addition to 0.59.0 (thanks @​ErichDonGubler).
  • Improved security documentation (thanks to @​n0toose for collaborating with me on this).

v3.15.0

Compare Source

Re-seed the per-thread RNG from system randomness when we repeatedly fail to create temporary files (#​314). This resolves a potential DoS vector (#​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.

v3.14.0

Compare Source

  • Make the wasip2 target work (requires tempfile's "nightly" feature to be enabled). #​305.
  • Allow older windows-sys versions #​304.

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.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@dreadnode-renovate-bot dreadnode-renovate-bot Bot requested a review from a team as a code owner June 30, 2025 16:14
@dreadnode-renovate-bot dreadnode-renovate-bot Bot added the type/digest Dependency digest updates label Jun 30, 2025
@dreadnode-renovate-bot dreadnode-renovate-bot Bot force-pushed the renovate/tempfile-3.x-lockfile branch from 66f9d01 to a432173 Compare July 2, 2025 00:22
@dreadnode-renovate-bot dreadnode-renovate-bot Bot force-pushed the renovate/tempfile-3.x-lockfile branch from a432173 to a30990e Compare July 9, 2025 00:23
| datasource | package  | from   | to     |
| ---------- | -------- | ------ | ------ |
| crate      | tempfile | 3.13.0 | 3.20.0 |
@dreadnode-renovate-bot dreadnode-renovate-bot Bot force-pushed the renovate/tempfile-3.x-lockfile branch from a30990e to aa4bc61 Compare July 13, 2025 00:25
@GangGreenTemperTatum GangGreenTemperTatum merged commit ce2fa4f into main Jul 13, 2025
2 checks passed
@GangGreenTemperTatum GangGreenTemperTatum deleted the renovate/tempfile-3.x-lockfile branch July 13, 2025 00:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type/digest Dependency digest updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant