trailofbits / siderophile

Find the ideal fuzz targets in a Rust codebase
https://blog.trailofbits.com/2019/07/01/siderophile-expose-your-crates-unsafety/
MIT License
201 stars 13 forks source link

Bump tempfile from 3.3.0 to 3.6.0 #261

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Bumps tempfile from 3.3.0 to 3.6.0.

Changelog

Sourced from tempfile's changelog.

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

3.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<F> where &F: Write. Unfortunately, this can cause compile issues in unrelated code (Stebalien/tempfile#224).

3.4.0

SECURITY: Prior tempfile releases depended on remove_dir_all version 0.5.0 which was vulnerable to a TOCTOU race. 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.
Commits
  • 86b3136 chore: release 3.6.0
  • a2b45b3 fix(docs): Change dir and file variable names to match existing comments ...
  • f474e6a Remove comment on SetFileInformationByHandle (#236)
  • 141c773 feat: implement default methods for SpooledTempFile Read/Write (#232)
  • 3590dbf chore: modern rust (#231)
  • c76b783 feat: implement AsFd/AsHandle to mirror the AsRaw* variants (#230)
  • ae4f4c8 chore: bump rustix min version to 0.37.11 (#229)
  • 9488362 Forward default NamedTempFile methods (#226)
  • c41ee48 build(deps): update windows-sys requirement from 0.45 to 0.48 (#227)
  • c773849 chore: release 3.5.0
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)