Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Jan 28, 2025

Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.

This PR contains the following updates:

Package Type Update Change
tempfile (source) dependencies minor 3.8.1 -> 3.23.0

Release Notes

Stebalien/tempfile (tempfile)

v3.23.0

Compare Source

  • Remove need for the "nightly" feature to compile with "wasip2".

v3.22.0

Compare Source

  • Updated windows-sys requirement to allow version 0.61.x
  • Remove unstable-windows-keep-open-tempfile feature.

v3.21.0

Compare Source

  • Updated windows-sys requirement to allow version 0.60.x

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.

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.

v3.13.0

Compare Source

  • Add with_suffix constructors for easily creating new temporary files with a specific suffix (e.g., a specific file extension). Thanks to @​Borgerr.
  • Update dependencies (fastrand & rustix).

v3.12.0

Compare Source

  • Add a keep(keep: bool) function to builder that suppresses delete-on-drop behavior (thanks to @​RalfJung).
  • Update windows-sys from 0.52 to 0.59.

v3.11.0

Compare Source

  • 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

Compare Source

  • 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 @​stoeckmann for finding and fixing both of these issues.

v3.10.0

Compare Source

  • Drop redox_syscall dependency, we now use rustix for Redox.
  • Add Builder::permissions for setting the permissions on temporary files and directories (thanks to @​Byron).
  • Update rustix to 0.38.31.
  • Update fastrand to 2.0.1.

v3.9.0

Compare Source

  • Updates windows-sys to 0.52
  • Updates minimum rustix version to 0.38.25

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 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.


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

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from 40f6118 to 05d27ea Compare February 16, 2025 22:54
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.16.0 fix(deps): update rust crate tempfile to v3.17.0 Feb 16, 2025
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.17.0 fix(deps): update rust crate tempfile to v3.17.1 Feb 17, 2025
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from 05d27ea to 693d5c9 Compare February 17, 2025 19:07
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.17.1 fix(deps): update rust crate tempfile to v3.18.0 Mar 6, 2025
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from 693d5c9 to 4193287 Compare March 6, 2025 22:25
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from 4193287 to bf9a0db Compare March 14, 2025 02:11
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.18.0 fix(deps): update rust crate tempfile to v3.19.0 Mar 14, 2025
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from bf9a0db to 7033f6e Compare March 19, 2025 19:47
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.19.0 fix(deps): update rust crate tempfile to v3.19.1 Mar 19, 2025
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.19.1 fix(deps): update rust crate tempfile to v3.20.0 May 11, 2025
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from 7033f6e to fbbed7a Compare May 11, 2025 21:38
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from fbbed7a to ab795f6 Compare August 10, 2025 14:14
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from ab795f6 to dd37ddd Compare August 20, 2025 00:11
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.20.0 fix(deps): update rust crate tempfile to v3.21.0 Aug 20, 2025
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from dd37ddd to c0ab038 Compare September 9, 2025 18:00
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.21.0 fix(deps): update rust crate tempfile to v3.22.0 Sep 9, 2025
@renovate renovate bot force-pushed the renovate/tempfile-3.x-lockfile branch from c0ab038 to f4d3c8a Compare September 23, 2025 11:10
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.22.0 fix(deps): update rust crate tempfile to v3.23.0 Sep 23, 2025
@renovate renovate bot changed the title fix(deps): update rust crate tempfile to v3.23.0 chore(deps): update rust crate tempfile to v3.23.0 Sep 25, 2025
@renovate
Copy link
Contributor Author

renovate bot commented Sep 25, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package tempfile@3.8.1 --precise 3.23.0
error: failed to acquire package cache lock

Caused by:
  failed to open: /home/ubuntu/.cargo/.package-cache

Caused by:
  failed to create directory `/home/ubuntu/.cargo`

Caused by:
  File exists (os error 17)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants