Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

chore(deps): Update Rust crate nix to 0.29 #137

Merged
merged 1 commit into from
Dec 4, 2024
Merged

chore(deps): Update Rust crate nix to 0.29 #137

merged 1 commit into from
Dec 4, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 1, 2024

This PR contains the following updates:

Package Type Update Change
nix dependencies minor 0.27 -> 0.29

Release Notes

nix-rust/nix (nix)

v0.29.0

Compare Source

Added
  • Add getregset()/setregset() for Linux/glibc/x86/x86_64/aarch64/riscv64 and
    getregs()/setregs() for Linux/glibc/aarch64/riscv64
    (#​2044)
  • Add socket option Ipv6Ttl for apple targets.
    (#​2287)
  • Add socket option UtunIfname.
    (#​2325)
  • make SigAction repr(transparent) & can be converted to the libc raw type
    (#​2326)
  • Add From trait implementation for conversions between sockaddr_in and
    SockaddrIn, sockaddr_in6 and SockaddrIn6
    (#​2328)
  • Add socket option ReusePortLb for FreeBSD.
    (#​2332)
  • Added support for openat2 on linux.
    (#​2339)
  • Add if_indextoname function.
    (#​2340)
  • Add mount and unmount API for apple targets.
    (#​2347)
  • Added _PC_MIN_HOLE_SIZE for pathconf and fpathconf.
    (#​2349)
  • Added impl AsFd for pty::PtyMaster
    (#​2355)
  • Add open flag O_SEARCH to AIX, Empscripten, FreeBSD, Fuchsia, solarish,
    WASI (#​2374)
  • Add prctl function prctl_set_vma_anon_name for Linux/Android.
    (#​2378)
  • Add sync(2) for apple_targets/solarish/haiku/aix/hurd, syncfs(2) for
    hurd and fdatasync(2) for aix/hurd
    (#​2379)
  • Add fdatasync support for Apple targets.
    (#​2380)
  • Add fcntl::OFlag::O_PATH for FreeBSD and Fuchsia
    (#​2382)
  • Added PathconfVar::MIN_HOLE_SIZE for apple_targets.
    (#​2388)
  • Add open flag O_SEARCH to apple_targets
    (#​2391)
  • O_DSYNC may now be used with aio_fsync and fcntl on FreeBSD.
    (#​2404)
  • Added Flock::relock for upgrading and downgrading locks.
    (#​2407)
Changed
  • Change the ForkptyResult type to the following repr so that the
    uninitialized
    master field won't be accessed in the child process:

    pub enum ForkptyResult {
        Parent {
            child: Pid,
            master: OwnedFd,
        },
        Child,
    }
    ``` ([#​2315](https://redirect.github.com/nix-rust/nix/pull/2315))
  • Updated cfg_aliases dependency from version 0.1 to 0.2
    (#​2322)

  • Change the signature of ptrace::write and ptrace::write_user to make them
    safe (#​2324)

  • Allow use of SignalFd through shared reference

    Like with many other file descriptors, concurrent use of signalfds is safe.
    Changing the signal mask of and reading signals from a signalfd can now be
    done
    with the SignalFd API even if other references to it exist.
    (#​2367)

  • Changed tee, splice and vmsplice RawFd arguments to AsFd.
    (#​2387)

  • Added I/O safety to the sys/aio module. Most functions that previously
    accepted a AsRawFd argument now accept an AsFd instead.
    (#​2401)

  • RecvMsg::cmsgs() now returns a Result, and checks that cmsgs were not
    truncated. (#​2413)

Fixed
  • No longer panics when the fanotify queue overflows.
    (#​2399)
  • Fixed ControlMessageOwned::UdpGroSegments wrapped type from u16 to i32 to
    reflect the used kernel's one.
    (#​2406)

v0.28.0

Compare Source

Added
  • Added mkdtemp wrapper (#​1297)

  • Add associated constants UTIME_OMIT UTIME_NOW for TimeSpec
    (#​1879)

  • Added EventFd type. (#​1945)

    • Added impl From<Signal> for SigSet.
    • Added impl std::ops::BitOr for SigSet.
    • Added impl std::ops::BitOr for Signal.
    • Added impl std::ops::BitOr<Signal> for SigSet

    (#​1959)

  • Added TlsGetRecordType control message type and corresponding enum for
    linux (#​2065)

  • Added Ipv6HopLimit to ::nix::sys::socket::ControlMessage for Linux,
    MacOS, FreeBSD, DragonflyBSD, Android, iOS and Haiku.
    (#​2074)

  • Added Icmp and IcmpV6 to SockProtocol
    (#​2103)

  • Added rfork support for FreeBSD in unistd
    (#​2121)

  • Added MapFlags::map_hugetlb_with_size_log2 method for Linux targets
    (#​2125)

  • Added mmap_anonymous function
    (#​2127)

  • Added mips32r6 and mips64r6 support for signal, ioctl and ptrace
    (#​2138)

  • Added F_GETPATH FcntlFlags entry on Apple/NetBSD/DragonflyBSD for
    ::nix::fcntl. (#​2142)

  • Added F_KINFO FcntlFlags entry on FreeBSD for ::nix::fcntl.
    (#​2152)

  • Added F_GETPATH_NOFIRMLINK and F_BARRIERFSYNC FcntlFlags entry
    on Apple for ::nix::fcntl.
    (#​2155)

  • Added newtype Flock to automatically unlock a held flock upon drop.
    Added Flockable trait to represent valid types for Flock.
    (#​2170)

  • Added SetSockOpt impls to enable Linux Kernel TLS on a TCP socket and to
    import TLS parameters. (#​2175)

    • Added the ::nix::sys::socket::SocketTimestamp enum for configuring the
      TsClock (a.k.a SO_TS_CLOCK) sockopt
    • Added FreeBSD's ScmRealtime and ScmMonotonic as new options in
      ::nix::sys::socket::ControlMessageOwned

    (#​2187)

  • Added new fanotify API: wrappers for fanotify_init and fanotify_mark
    (#​2194)

  • Added SpecialCharacterindices support for haiku.
    (#​2195)

  • Added sys::sendfile support for solaris/illumos.
    (#​2198)

  • impl Display for InterfaceFlags
    (#​2206)

  • Added sendfilev in sys::sendfile for solarish
    (#​2207)

  • Added fctrl::SealFlag::F_SEAL_FUTURE_WRITE
    (#​2213)

  • Added Ipv6MulticastHops as socket option to set and read.
    (#​2234)

  • Enable ControlMessageOwned::Ipv4RecvIf and
    ControlMessageOwned::Ipv4RecvDstAddr for DragonFlyBSD
    (#​2240)

  • ClockId::set_time() and time::clock_settime() are now enabled on macOS
    (#​2241)

  • Added IpBindAddressNoPort sockopt to support IP_BIND_ADDRESS_NO_PORT
    available on linux. (#​2244)

  • Enable MapFlags::map_hugetlb_with_size_log2 method for Android/Fuchsia
    (#​2245)

  • Added TcpFastOpenConnect sockopt to support TCP_FASTOPEN_CONNECT
    available on linux. (#​2247)

  • Add reboot(2) for OpenBSD/NetBSD
    (#​2251)

  • Added new MemFdCreateFlag constants to sys::memfd on Linux and Android
    related to hugetlbfs support.
    (#​2252)

  • Expose the inner fd of Kqueue through:

    • impl AsFd for Kqueue
    • impl From<Kqueue> for OwnedFd

    (#​2258)

  • Added sys::eventfd support on FreeBSD
    (#​2259)

  • Added MmapFlags::MAP_FIXED constant in sys::mman for netbsd and openbsd
    (#​2260)

  • Added the SO_LISTENQLIMIT sockopt.
    (#​2263)

  • Enable the AT_EMPTY_PATH flag for the fchownat() function
    (#​2267)

  • Add AtFlags::AT_EMPTY_PATH for FreeBSD and Hurd
    (#​2270)

  • Enable `OFlag::O_DIRECTORY for Solarish
    (#​2275)

  • Added the Backlog wrapper type for the listen call.
    (#​2276)

  • Add clock_nanosleep() (#​2277)

  • Enabled O_DIRECT in fcntl::OFlags for solarish
    (#​2278)

  • Added a new API sigsuspend.
    (#​2279)

    • Added errno::Errno::set function
    • Added errno::Errno::set_raw function
    • Added errno::Errno::last_raw function
    • Added errno::Errno::from_raw function

    (#​2283)

  • Enable the AT_EMPTY_PATH flag for the linkat() function
    (#​2284)

  • Enable unistd::{sync, syncfs} for Android
    (#​2296)

Changed
  • poll now takes PollTimeout replacing libc::c_int.
    (#​1876)

  • Deprecated sys::eventfd::eventfd.
    (#​1945)

  • mmap, mmap_anonymous, munmap, mremap, madvise, msync, mprotect,
    munlock and mlock updated to use NonNull.
    (#​2000)

  • mmap function now accepts F instead of Option<F>
    (#​2127)

  • PollFd::new now takes a BorrowedFd argument, with relaxed lifetime
    requirements relative to the previous version.
    (#​2134)

  • FdSet::{insert, remove, contains} now take BorrowedFd arguments, and have
    relaxed lifetime requirements relative to 0.27.1.
    (#​2136)

  • The following APIs now take an implementation of AsFd rather than a
    RawFd:

    • unistd::tcgetpgrp
    • unistd::tcsetpgrp
    • unistd::fpathconf
    • unistd::ttyname
    • unistd::getpeereid (#​2137)
  • Changed openat() and Dir::openat(), now take optional dirfds
    (#​2139)

  • The MSRV is now 1.69 (#​2144)

  • Changed function SockaddrIn::ip() to return net::Ipv4Addr and refactored
    SocketAddrV6::ip() to be const
    (#​2151)

  • The following APIs now take optional dirfds:

    • readlinkat()
    • fstatat()
    • mknodat()
    • mkdirat()
    • execveat()

    (#​2157)

  • Epoll::wait now takes EpollTimeout replacing isize.
    (#​2202)

    • Deprecated errno::errno() function (use Errno::last_raw())
    • Deprecated errno::from_i32() function (use Errno::from_raw())
    • Deprecated errno::Errno::from_i32() function (use Errno::from_raw())

    (#​2283)

Fixed
  • Fix SigSet incorrect implementation of Eq, PartialEq and Hash
    (#​1946)
  • Fixed ::sys::socket::sockopt::IpMulticastTtl by fixing the value of optlen
    passed to libc::setsockopt and added tests.
    (#​2072)
  • Fixed the function signature of recvmmsg, potentially causing UB
    (#​2119)
  • Fix SignalFd::set_mask. In 0.27.0 it would actually close the file
    descriptor. (#​2141)
  • Fixed UnixAddr::new for haiku, it did not record the sun_len value as
    needed.
    Fixed sys::socket::addr::from_raw_parts and
    sys::socket::Sockaddrlike::len build for solaris.
    (#​2242)
  • Fixed solaris build globally.
    (#​2248)
  • Changed the dup3 wrapper to perform a real call to dup3 instead of
    emulating it via dup2 and fcntl to get rid of race condition
    (#​2268)
  • Fixed ::unistd::Group::members using read_unaligned to avoid crash on
    misaligned pointers (#​2311)
Removed
  • The FchownatFlags type has been deprecated, please use AtFlags instead.
    (#​2267)
  • Removed the dup3 wrapper on macOS, which was emulated via dup2 and
    fcntl and could cause a race condition. The dup3 system call is not
    supported on macOS. (#​2268)
  • The LinkatFlags type has been deprecated, please use AtFlags instead.
    (#​2284)

Configuration

📅 Schedule: Branch creation - "before 5am on the first day of the month" (UTC), 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.

@coveralls
Copy link

Pull Request Test Coverage Report for Build 12101349701

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 79.848%

Totals Coverage Status
Change from base Build 12088225034: 0.0%
Covered Lines: 210
Relevant Lines: 263

💛 - Coveralls

@renovate renovate bot force-pushed the renovate/nix-0.x branch from 219f633 to 8e63160 Compare December 4, 2024 17:56
@epage epage merged commit be7f1ab into main Dec 4, 2024
16 of 17 checks passed
@epage epage deleted the renovate/nix-0.x branch December 4, 2024 17:57
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants