tempfile breaking changes

cargo

36 curated breaking changes across major versions of tempfile. Use this as a migration checklist before bumping dependencies.

36
changes
Breaking changes by transition
  • 3.6.0 \u2192 3.7.0breaking

    Update rustix to 0.38

  • 3.6.0 \u2192 3.7.0breaking

    Updates the MSRV to 1.63.

  • 3.6.0 \u2192 3.7.0breaking

    Provide AsFd/AsRawFd on wasi.

  • 3.6.0 \u2192 3.7.0breaking

    Update fastrand from 1.6 to 2.0

  • 3.4.0 \u2192 3.5.0breaking

    Update rustix from 0.36 to 0.37.1. This makes wasi work on rust stable

  • 3.4.0 \u2192 3.5.0breaking

    Update `windows-sys`, `redox_syscall`

  • 3.4.0 \u2192 3.5.0removed

    BREAKING: Remove the implementation of `Write for &NamedTempFile<F> where &F: Write`. Unfortunately, this can cause compile issues in unrelated code (https://github.com/Stebalien/tempfile/issues/224).

  • 3.3.0 \u2192 3.4.0api

    The new type parameter in `NamedTempFile` may lead to type inference issues in some cases.

  • 3.3.0 \u2192 3.4.0api

    Add generic parameter to `NamedTempFile` to support wrapping non-File types.

  • 3.3.0 \u2192 3.4.0behavior

    Uses direct syscalls on linux by default, instead of libc.

  • 3.3.0 \u2192 3.4.0breaking

    The minimum rust version is now `1.48.0`.

  • 3.3.0 \u2192 3.4.0breaking

    Mark most functions as `must_use`.

  • 3.3.0 \u2192 3.4.0breaking

    Generalized temporary files: `NamedTempFile` can now abstract over different kinds of files (e.g.,

  • 3.3.0 \u2192 3.4.0breaking

    Add `Builder::make` and `Builder::make_in` for generalized temp file

  • 3.3.0 \u2192 3.4.0breaking

    Add `NamedTempFile::from_parts` to complement `NamedTempFile::into_parts`.

  • 3.3.0 \u2192 3.4.0breaking

    Don't try to create a temporary file multiple times if the file path has been fully specified by

  • 3.3.0 \u2192 3.4.0breaking

    Fix compiler warnings on windows.

  • 3.3.0 \u2192 3.4.0breaking

    Switch from `libc` to `rustix` on wasi/unix. This now makes direct syscalls instead of calling

  • 3.3.0 \u2192 3.4.0breaking

    Switch to official windows-sys windows bindings.

  • 3.3.0 \u2192 3.4.0removed

    Remove `remove_dir_all` dependency. The rust standard library has optimized their internal version

  • 3.3.0 \u2192 3.4.0renamed

    `NamedTempFile::persist_noclobber` is now always atomic on linux when `renameat_with` is

  • 3.1.0 \u2192 3.2.0breaking

    Bump rand dependency to `0.8`.

  • 3.1.0 \u2192 3.2.0breaking

    Bump cfg-if dependency to `1.0`

  • 3.0.9 \u2192 3.1.0breaking

    Bump rand dependency to `0.7`.

  • 3.0.8 \u2192 3.0.9breaking

    Add an example for reopening a named temporary file.

  • 3.0.8 \u2192 3.0.9breaking

    Flesh out the security documentation.

  • 3.0.8 \u2192 3.0.9breaking

    Introduce an `append` option to the builder.

  • 3.0.8 \u2192 3.0.9breaking

    Implement `source` instead of `cause`.

  • 3.0.8 \u2192 3.0.9deprecated

    No longer implement the soft-deprecated `description`.

  • 3.0.6 \u2192 3.0.7breaking

    `Builder::prefix` and `Builder::suffix` now accept a generic `&AsRef<OsStr>`.

  • 3.0.6 \u2192 3.0.7breaking

    Temporary files (except unnamed temporary files on Windows and Linux >= 3.11)

  • 3.0.6 \u2192 3.0.7breaking

    Accept anything implementing `&AsRef<OsStr>` in the builder: &OsStr, &OsString, &Path, etc.

  • 3.0.6 \u2192 3.0.7breaking

    Fix LFS support.

  • 3.0.6 \u2192 3.0.7breaking

    Use absolute paths for named temporary files to guard against changes in the

  • 3.0.6 \u2192 3.0.7breaking

    Use absolute paths when creating unnamed temporary files on platforms that

  • 3.0.6 \u2192 3.0.7breaking

    Use modern stdlib features to avoid custom unsafe code. This reduces the

API access

Get this data programmatically \u2014 free, no authentication.

curl https://depscope.dev/api/breaking/cargo/tempfile
tempfile breaking changes — Cargo migration guide | DepScope