Skip to content

fix(deps): update minor and patch dependencies#30

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/minor-and-patch-dependencies
Open

fix(deps): update minor and patch dependencies#30
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/minor-and-patch-dependencies

Conversation

@renovate
Copy link
Copy Markdown

@renovate renovate Bot commented May 23, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
clap dependencies minor 4.5.604.6.1
debian container patch trixietrixie-20260518
dialoguer dependencies minor 0.110.12
indicatif dependencies minor 0.170.18
libc dependencies patch 0.2.1830.2.186
ndarray dependencies minor 0.160.17
nix dependencies minor 0.290.31
rand (source) dependencies minor 0.80.10
reqwest dependencies minor 0.120.13
rusqlite dependencies minor 0.320.39
serde_json dev-dependencies patch 1.0.1491.0.150
serde_json dependencies patch 1.0.1491.0.150
sha2 dependencies minor 0.100.11
signal-hook dependencies minor 0.30.4
tokio (source) dependencies minor 1.50.01.52.3
toml workspace.dependencies minor 0.80.9
tracing-subscriber (source) workspace.dependencies patch 0.3.220.3.23
wayland-client dependencies patch 0.31.130.31.14
xkbcommon dependencies minor 0.80.9
zbus dependencies minor 5.14.05.15.0
zvariant dev-dependencies minor 5.10.05.11.0
zvariant dependencies minor 5.10.05.11.0

Release Notes

clap-rs/clap (clap)

v4.6.1

Compare Source

Fixes
  • (derive) Ensure rebuilds happen when an read env variable is changed

v4.6.0

Compare Source

Compatibility
  • Update MSRV to 1.85

v4.5.61

Compare Source

Internal
  • Update dependencies
console-rs/dialoguer (dialoguer)

v0.12.0: 0.12.0

Compare Source

What's Changed

console-rs/indicatif (indicatif)

v0.18.4

Compare Source

What's Changed

v0.18.3

Compare Source

What's Changed

v0.18.2

Compare Source

What's Changed

v0.18.1

Compare Source

What's Changed

v0.18.0

Compare Source

Unfortunately 0.17.12 had to be yanked because the console upgrade was a semver-incompatible change. Rerelease as 0.18.0 instead.

What's Changed

v0.17.12

Compare Source

What's Changed

rust-lang/libc (libc)

v0.2.186

Compare Source

Added
  • Apple: Add KEVENT_FLAG_* constants (#​5070)
  • Linux: Add PR_SET_MEMORY_MERGE and PR_GET_MEMORY_MERGE (#​5060)
Changed
  • CI: Migrate FreeBSD CI from Cirrus CI to GitHub Actions (#​5058)

v0.2.185

Compare Source

Added
  • EspIDF: Add espidf_picolibc cfg for picolibc O_* flag values (#​5035)
  • Hexagon: add missing constants and fix types for linux-musl (#​5042)
  • Redox: Add semaphore functions (#​5051)
  • Windows: Add sprintf, snprintf, and the scanf family (#​5024)
Fixed
  • Hexagon: Decouple time64 types from musl symbol redirects (#​5040)
  • Horizon: Change POLL constants from c_short to c_int (#​5045)

v0.2.184

Compare Source

MSRV

This release increases the MSRV of libc to 1.65. With this update, you can now always use the
core::ffi::c_* types with libc definitions, since libc has been changed to reexport from
core rather than redefining them. (This usually worked before but had edge cases.)
(#​4972)

Added
  • BSD: Add IP_MINTTL to bsd (#​5026)
  • Cygwin: Add TIOCM_DSR (#​5031)
  • FreeBSD: Added xfile structe and file descriptor types (#​5002)
  • Linux: Add CAN netlink bindings (#​5011)
  • Linux: Add struct ethhdr (#​4239)
  • Linux: Add struct ifinfomsg (#​5012)
  • Linux: Define max_align_t for riscv64 (#​5029)
  • NetBSD: Add missing CLOCK_ constants (#​5020)
  • NuttX: Add _SC_HOST_NAME_MAX (#​5004)
  • VxWorks: Add flock and F_*LCK constants (#​4043)
  • WASI: Add all _SC_* sysconf constants (#​5023)
Deprecated

The remaining fixed-width integer aliases, __uint128_t, __uint128, __int128_t, and __int128,
have been deprecated. Use i128 and u128 instead. (#​4343)

Fixed
  • breaking Redox: Fix signal action constant types (#​5009)
  • EspIDF: Correct the value of DT_* constants (#​5034)
  • Redox: Fix locale values and add RTLD_NOLOAD, some TCP constants (#​5025)
  • Various: Use Padding::new(<zeroed>) rather than Padding::uninit() (#​5036)
Changed
  • potentially breaking Linux: Add new fields to struct ptrace_syscall_info (#​4966)
  • Re-export core::ffi integer types rather than redefining (#​5015)
  • Redox: Update F_DUPFD, IP, and TCP constants to match relibc (#​4990)
rust-ndarray/ndarray (ndarray)

v0.17.2

Compare Source

===========================
Version 0.17.2 is mainly a patch fix to bugs related to the new ArrayRef implementation.

In addition, ndarray has reduced its packaging footprint to ease supply chain reviews (and shrink the binary size!).
A special thanks to @​SwishSwushPow and @​weiznich for bringing this to our attention and making the necessary changes.

Added

Fixed

Documentation

v0.17.1

Compare Source

===========================
Version 0.17.1 provides a patch to fix the originally-unsound implementation of the new array reference types.

The reference types are now all unsized.
Practically speaking, this has one major implication: writing functions and traits that accept RawRef and LayoutRef will now need a + ?Sized bound to work ergonomically with ArrayRef.
For example, the release notes for 0.17.0 said

Reading / Writing Shape: LayoutRef<A, D>

LayoutRef lets functions view or modify shape/stride information without touching data.
This replaces verbose signatures like:

fn alter_view<S>(a: &mut ArrayBase<S, Ix1>)
where S: Data<Elem = f64>;

Use AsRef / AsMut for best compatibility:

fn alter_shape<T>(a: &mut T)
where T: AsMut<LayoutRef<f64>>;

However, these functions now need an additional bound to allow for callers to pass in &ArrayRef types:

fn alter_shape<T>(a: &mut T)
where T: AsMut<LayoutRef<f64>> + ?Sized; // Added bound here

A huge thank you to Sarah Quiñones (@​sarah-quinones) for catching the original unsound bug and helping to fix it.
She does truly excellent work with faer-rs; check it out!

v0.17.0

Compare Source

===========================
Version 0.17.0 introduces a new array reference type — the preferred way to write functions and extension traits in ndarray.
This release is fully backwards-compatible but represents a major usability improvement.
The first section of this changelog explains the change in detail.

It also includes numerous new methods, math functions, and internal improvements — all credited below.

A New Way to Write Functions

TL;DR

ndarray 0.17.0 adds new reference types for writing functions and traits that work seamlessly with owned arrays and views.

When writing functions that accept array arguments:

  • Use &ArrayRef<A, D> to read elements from any array.
  • Use &mut ArrayRef<A, D> to modify elements.
  • Use &T where T: AsRef<LayoutRef<A, D>> to inspect shape/stride only.
  • Use &mut T where T: AsMut<LayoutRef<A, D>> to modify shape/stride only.

All existing function signatures continue to work; these new types are fully opt-in.

Background

ndarray has multiple ways to write functions that take arrays (a problem captured well in issue #​1059).
For example:

fn sum(a: ArrayView1<f64>) -> f64;
fn sum(a: &ArrayView1<f64>) -> f64;
fn sum(a: &Array1<f64>) -> f64;

All of these work, but having several equivalent forms causes confusion.
The most general solution, writing generically over storage types:

fn sum<S>(a: &ArrayBase<S, Ix1>) -> f64
where S: Data<Elem = f64>;

is powerful but verbose and often hard to read.
Version 0.17.0 introduces a new, simpler pattern that expresses the same flexibility more clearly.

Solution

Three new reference types make it easier to write functions that accept any kind of array while clearly expressing what kind of access (data or layout) they need.

Reading / Writing Elements: ArrayRef<A, D>

ArrayRef is the Deref target of ArrayBase.
It behaves like &[T] for Vec<T>, giving access to elements and layout.
Mutability is expressed through the reference itself (& vs &mut), not through a trait bound or the type itself.
It is used as follows:

fn sum(a: &ArrayRef1<f64>) -> f64;
fn cumsum_mut(a: &mut ArrayRef1<f64>);

(ArrayRef1 is available from the prelude.)

Reading / Writing Shape: LayoutRef<A, D>

LayoutRef lets functions view or modify shape/stride information without touching data.
This replaces verbose signatures like:

fn alter_view<S>(a: &mut ArrayBase<S, Ix1>)
where S: Data<Elem = f64>;

Use AsRef / AsMut for best compatibility:

fn alter_shape<T>(a: &mut T)
where T: AsMut<LayoutRef<f64>>;

(Accepting a LayoutRef directly can cause unnecessary copies; see #​1440.)

Reading / Writing Unsafe Elements: RawRef<A, D>

RawRef augments RawArrayView and RawArrayViewMut for power users needing unsafe element access (e.g. uninitialized buffers).
Like LayoutRef, it is best used via AsRef / AsMut.

Added

Changed

  • remove_index can now be called on views, in addition to owned arrays by @​akern40

Removed

  • Removed the serde-1, test, and docs feature flags; by @​akern40 #​1479
    • Use approx,serde,rayon instead of docs.
    • Use serde instead of serde-1

Fixed

  • last_mut() now guarantees that the underlying data is uniquely held by @​bluss #​1429
  • ArrayView is now covariant over lifetime by @​akern40 #​1480, so that the following code now compiles
fn fn_cov<'a>(x: ArrayView1<'static, f64>) -> ArrayView1<'a, f64> {
    x
}

Documentation

  • Filled missing documentation and adds warn(missing_docs) by @​akern40
  • Fixed a typo in the documentation of select by @​Drazhar
  • Fixed a typo in the documentation of into_raw_vec_and_offset by @​benliepert
  • Documented Array::zeros with how to control the return type by @​akern40

Other

nix-rust/nix (nix)

v0.31.3

Compare Source

Added
  • Enable module ioctl for Cygwin
    (#​2715)
  • Add
    CLOCK_BOOTTIME/CLOCK_PROCESS_CPUTIME_ID/CLOCK_THREAD_CPUTIME_ID/CLOCK_UPTIME
    to NetBSD-like platforms (#​2716)
  • unistd: add mkfifo for redox
    (#​2749)
  • Added kevent64 support on apple targets: Kqueue::kevent64, KEvent64,
    and Kevent64Flags. (#​2781)
Fixed
  • fix SaFlags_t definition on redox
    (#​2751)
  • Fixed EpollEvent::events() to use from_bits_retain instead of
    from_bits().unwrap(), preventing panics when the kernel returns
    unknown epoll flags. (#​2783)
  • Fixed KEvent::flags() and KEvent::fflags() to use from_bits_retain
    instead of from_bits().unwrap(), preventing panics when the kernel
    returns unknown kqueue flags.
    (#​2784)

v0.31.2

Compare Source

Added
  • Add WatchDescriptor::as_raw, to get libc id of WatchDescriptor.
    (#​2718)
  • Added process::pthread_getthreadid_np() on FreeBSD.
    (#​2725)
  • Added timerfd support on FreeBSD
    (#​2728)
Fixed
  • The libc requirement is now 0.2.181, rather than pinned to 0.2.180.
    (#​2744)

v0.31.1

Compare Source

Added
  • termios: Add definition for IUCLC to supported platforms
    (#​2702)
  • termios: Add definition for XCASE for supported platforms
    (#​2703)

v0.31.0

Compare Source

Added
  • Added the UDP GSO/GRO socket options and CMsgs on Android. This includes the
    following types:

    • UdpGsoSegment
    • UdpGroSegment
    • ControlMessage::UdpGsoSegments
    • ControlMessageOwned::UdpGroSegments

    (#​2666)

  • Define errno EWOULDBLOCK as an alias of EAGAIN to match the AIX libc
    definition. (#​2692)

  • Enable module ifaddrs on GNU Hurd
    (#​2697)

  • Add termios OutputFlags::OFILL for Linux, Android, Aix, Cygwin, Fuchsia,
    Haiku,
    GNU/Hurd, Nto, Redox, Illumos, Solaris and Apple OSes.
    (#​2701)

  • add sync() for cygwin (#​2708)

Changed
Fixed
  • Fixed nix::sys::ptrace::syscall_info, which was not setting the data
    argument properly, causing garbage values to be returned.
    (#​2653)
  • Cast the 'addr' argument of 'madvise()' to '*mut u8' on AIX to match the
    signature in the AIX libc.
    (#​2655)
  • Fixed the Dir module on NTO, Solaris, Hurd, and possibly other platforms.
    The
    d_name field was not copied correctly on those platforms. For some other
    platforms, it could be copied incorrectly for files with very long pathnames.
    (#​2674)
  • Fix the build on Illumos (#​2694)
Removed
  • Removed Eq and PartialEq implementations from SigHandler, because they
    never worked reliably. The suggested alternative is matches!. For
    example:
    let h: SigHandler = ...
    if matches!(h, SigHandler::SigIgn) {
        ...
    }
    ``` ([#&#8203;2642](https://redirect.github.com/nix-rust/nix/pull/2642))
    
  • Removed IFF_NOTRAILERS by NetBSD, as it has been removed upstream and from
    libc (#​2724)

[0.30.1] - 2025-05-04

Fixed

[0.30.0] - 2025-04-29

Added
  • Add socket option IPV6_PKTINFO for BSDs/Linux/Android, also
    IPV6_RECVPKTINFO for DragonFlyBSD
    (#​2113)
  • Add fcntl's F_PREALLOCATE constant for Apple targets.
    (#​2393)
  • Improve support for extracting the TTL / Hop Limit from incoming packets
    and support for DSCP (ToS / Traffic Class).
    (#​2425)
  • Add socket option IP_TOS (nix::sys::socket::sockopt::IpTos) IPV6_TCLASS
    (nix::sys::socket::sockopt::Ipv6TClass) on Android/FreeBSD
    (#​2464)
  • Add SeekData and SeekHole to Whence for hurd and apple targets
    (#​2473)
  • Add From trait implementation between SocketAddr and Sockaddr,
    Sockaddr6 (#​2474)
  • Added wrappers for posix_spawn API
    (#​2475)
  • Add the support for Emscripten.
    (#​2477)
  • Add fcntl constant F_RDADVISE for Apple target
    (#​2480)
  • Add fcntl constant F_RDAHEAD for Apple target
    (#​2482)
  • Add F_LOG2PHYS and F_LOG2PHYS_EXT for Apple target
    (#​2483)
  • MAP_SHARED_VALIDATE was added for all linux targets. & MAP_SYNC was added
    for linux with the exclusion of mips architecures, and uclibc
    (#​2499)
  • Add getregs()/getregset()/setregset() for Linux/musl/aarch64
    (#​2502)
  • Add FcntlArgs F_TRANSFEREXTENTS constant for Apple targets
    (#​2504)
  • Add MapFlags::MAP_STACK in sys::man for netbsd
    (#​2526)
  • Add support for libc::LOCAL_PEERTOKEN in getsockopt.
    (#​2529)
  • Add support for syslog, openlog, closelog on all unix.
    (#​2537)
  • Add the TCP_FUNCTION_BLK sockopt, on FreeBSD.
    (#​2539)
  • Implements Into<OwnedFd> for PtyMaster/Fanotify/Inotify/SignalFd/TimerFd
    (#​2548)
  • Add MremapFlags::MREMAP_DONTUNMAP to sys::mman::mremap for linux target.
    (#​2555)
  • Added sockopt_impl! to the public API. It's now possible for users to
    define
    their own sockopts without needing to make a PR to Nix.
    (#​2556)
  • Add the TCP_FUNCTION_ALIAS sockopt, on FreeBSD.
    (#​2558)
  • Add sys::mman::MmapAdvise MADV_PAGEOUT, MADV_COLD, MADV_WIPEONFORK,
    MADV_KEEPONFORK for Linux and Android targets
    (#​2559)
  • Add socket protocol Sctp, as well as MSG_NOTIFICATION for non-Android
    Linux targets. (#​2562)
  • Added from_owned_fd constructor to EventFd
    (#​2563)
  • Add sys::mman::MmapAdvise MADV_POPULATE_READ, MADV_POPULATE_WRITE for
    Linux and Android targets
    (#​2565)
  • Added from_owned_fd constructor to
    PtyMaster/Fanotify/Inotify/SignalFd/TimerFd
    (#​2566)
  • Added FcntlArg::F_READAHEAD for FreeBSD target
    (#​2569)
  • Added sockopt::LingerSec for Apple targets
    (#​2572)
  • Added sockopt::EsclBind for solarish targets
    (#​2573)
  • Exposed the std::os::fd::AsRawFd trait method for
    nix::sys::fanotify::Fanotify struct
    (#​2575)
  • Add support for syslog's setlogmask on all unix.
    (#​2579)
  • Added Fuchsia support for ioctl.
    (#​2580)
  • Add sys::socket::SockProtocol::EthIp,
    sys::socket::SockProtocol::EthIpv6,
    sys::socket::SockProtocol::EthLoop
    (#​2581)
  • Add OpenHarmony target into CI and Update documents.
    (#​2599)
  • Added the TcpMaxSeg setsockopt option for apple targets
    (#​2603)
  • Add FilAttach and FilDetach to socket::sockopt for Illumos
    (#​2611)
  • Add PeerPidfd (SO_PEERPIDFD) to socket::sockopt for Linux
    (#​2620)
  • Added socket::sockopt::AttachReusePortCbpf for Linux
    (#​2621)
  • Add ptrace::syscall_info for linux/glibc
    (#​2627)
Changed
  • Module sys/signal now adopts I/O safety
    (#​1936)
  • Change the type of the name argument of memfd_create() from &CStr to
    <P: NixPath>(name: &P) (#​2431)
  • Public interfaces in fcntl.rs and dir.rs now use I/O-safe types.
    (#​2434)
  • Module sys/stat now adopts I/O safety.
    (#​2439)
  • Module unistd now adopts I/O safety.
    (#​2440)
  • Module sys/fanotify now adopts I/O safety
    (#​2443)
  • Socket option IpTos has been renamed to Ipv4Tos, the old symbol is
    deprecated since 0.30.0 (#​2465)
  • Rename Flags EventFlag to EvFlags, and MemFdCreateFlag to MFdFlags
    (#​2476)
  • Made nix::sys::socket::UnknownCmsg public and more readable
    (#​2520)
  • recvmsg: take slice for cmsg_buffer instead of Vec
    (#​2524)
  • linkat: allow distinct types for path arguments
    (#​2582)
Fixed
  • Disable unsupported signals on sparc-linux
    (#​2454)
  • Fix cmsg_len() return type on OpenHarmony
    (#​2456)
  • The ns argument of sys::prctl::set_timerslack() should be of type
    c_ulong (#​2505)
  • Properly exclude NUL characters from OSStrings returned by getsockopt.
    (#​2557)
  • Fixes the build on OpenHarmony
    (#​2587)
Removed
  • Type SigevNotify is no longer PartialEq, Eq and Hash due to the use
    of BorrowedFd (#​1936)
  • EventFd::defuse() is removed because it does nothing, EventFd::arm() is
    also removed for symmetry reasons.
    (#​2452)
  • Removed the Copy trait from PollFd
    (#​2631)

[0.29.0] - 2024-05-24

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,
    }
    ``` ([#&#8203;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)

[0.28.0] - 2024-02-24

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)

[0.27.1] - 2023-08-28

Fixed
  • Fixed generating the documentation on docs.rs.
    (#​2111)

[0.27.0] - 2023-08-28

Added
  • Added AT_EACCESS to AtFlags on all platforms but android
    (#​1995)
  • Add PF_ROUTE to SockType on macOS, iOS, all of the BSDs, Fuchsia, Haiku, Illumos.
    (#​1867)
  • Added nix::ucontext module on aarch64-unknown-linux-gnu.
    (#1662)
  • Added CanRaw to SockProtocol and CanBcm as a separate SocProtocol constant.
    (#​1912)
  • Added Generic and NFLOG to SockProtocol.
    (#​2092)
  • Added mq_timedreceive to ::nix::mqueue.
    ([#​1966])(#​1966)
  • Added LocalPeerPid to nix::sys::socket::sockopt for macOS. (#​1967)
  • Added TFD_TIMER_CANCEL_ON_SET to ::nix::sys::time::TimerSetTimeFlags on Linux and Android.
    (#​2040)
  • Added SOF_TIMESTAMPING_OPT_ID and SOF_TIMESTAMPING_OPT_TSONLY to nix::sys::socket::TimestampingFlag.
    (#​2048)
  • Enabled socket timestamping options on Android. (#​2077)
  • Added vsock support for macOS (#​2056)
  • Added SO_SETFIB and SO_USER_COOKIE to nix::sys::socket::sockopt for FreeBSD.
    (#​2085)
  • Added SO_RTABLE for OpenBSD and SO_ACCEPTFILTER for FreeBSD/NetBSD to nix::sys::socket::sockopt.
    (#​2085)
  • Added MSG_WAITFORONE to MsgFlags on Android, Fuchsia, Linux, NetBSD,
    FreeBSD, OpenBSD, and Solaris.
    (#​2014)
  • Added SO_TS_CLOCK for FreeBSD to nix::sys::socket::sockopt.
    (#​2093)
  • Added support for prctl in Linux.
    (#1550)
  • nix::socket and nix::select are now available on Redox.
    (#​2012)

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 9am on monday"
  • 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


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

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

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