PackageTrack
Sign in Get early access

nix

Rust friendly bindings to *nix APIs

0.31.3 742M downloads/mo #105 most downloaded on crates.io nix-rust/nix

What this package is like to depend on

Last release 3 months ago

11 May 2026

Release timing varies

gaps range from 4 weeks to 11 months

Rarely documented

notes for 10 of 77 stable releases

2 versions withdrawn

withdrawn after publishing

12 years old

79 releases · first in 2014

4 releases in the last 12 months

see the full history below

Release timeline

79 releases · Nov 2014 to May 2026
2015 2017 2019 2021 2023 2025
Release Pre-release Withdrawn

Releases

latest 60 of 79
  1. 0.31.3 11 May 2026
    Release notes

    chore: Release nix version 0.31.3

    Open source →
    Release notes

    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)
    Open source →
  2. 0.31.2 28 Feb 2026
    Release notes

    chore: Release nix version 0.31.2

    Open source →
    Release notes

    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)
    Open source →
  3. 0.31.1 23 Jan 2026
    Release notes

    chore: Release nix version 0.31.1

    Open source →
    Release notes

    Added

    • termios: Add definition for IUCLC to supported platforms (#2702)
    • termios: Add definition for XCASE for supported platforms (#2703)
    Open source →
  4. 0.31.0 22 Jan 2026
    Release notes

    chore: Release nix version 0.31.0

    Open source →
    Release notes

    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) {
          ...
      }
      ``` ([#2642](https://github.com/nix-rust/nix/pull/2642))
      
    • Removed IFF_NOTRAILERS by NetBSD, as it has been removed upstream and from libc (#2724)
    Open source →
  5. 0.30.1 04 May 2025
    Release notes

    chore: Release nix version 0.30.1

    Open source →
    Release notes

    Fixed

    Open source →
  6. 0.30.0 29 Apr 2025
    Release notes

    chore: Release nix version 0.30.0

    Open source →
    Release notes

    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,
      }
      ``` ([#2315](https://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])(https://github.com/nix-rust/nix/pull/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)
    • Implemented AsFd, AsRawFd, FromRawFd, and IntoRawFd for mqueue::MqdT. (#2097)
    • Add the ability to set kevent_flags on SigEvent. (#1731)

    Changed

    • All Cargo features have been removed from the default set. Users will need to specify which features they depend on in their Cargo.toml. (#2091)

    • Implemented I/O safety for many, but not all, of Nix's APIs. Many public functions argument and return types have changed:

      Original Type New Type
      AsRawFd AsFd
      RawFd BorrowedFd or OwnedFd

      (#1906)

    • Use I/O safety with copy_file_range, and expose it on FreeBSD. (#1906)

    • The MSRV is now 1.65 (#1862) (#2104)

    • The epoll interface now uses a type. (#1882)

    • With I/O-safe type applied in pty::OpenptyResult and pty::ForkptyResult, users no longer need to manually close the file descriptors in these types. (#1921)

    • Refactored name parameter of mq_open and mq_unlink to be generic over NixPath. (#2102).

    • Made clone unsafe, like fork. (#1993)

    Removed

    • sys::event::{kevent, kevent_ts} are deprecated in favor of sys::kevent::Kqueue::kevent, and sys::event::kqueue is deprecated in favor of sys::kevent::Kqueue::new. (#1943)
    • Removed deprecated IoVec API. (#1855)
    • Removed deprecated net APIs. (#1861)
    • nix::sys::signalfd::signalfd is deprecated. Use nix::sys::signalfd::SignalFd instead. (#1938)
    • Removed SigEvent support on Fuchsia, where it was unsound. (#2079)
    • Removed flock from ::nix::fcntl on Solaris. (#2082)

    [0.26.3] - 2023-08-27

    Fixed

    • Fix: send ETH_P_ALL in htons format (#1925)
    • Fix: recvmsg now sets the length of the received sockaddr_un field correctly on Linux platforms. (#2041)
    • Fix potentially invalid conversions in SockaddrIn::from<std::net::SocketAddrV4>, SockaddrIn6::from<std::net::SockaddrV6>, IpMembershipRequest::new, and Ipv6MembershipRequest::new with future Rust versions. (#2061)
    • Fixed an incorrect lifetime returned from recvmsg. (#2095)

    [0.26.2] - 2023-01-18

    Fixed

    • Fix SockaddrIn6 bug that was swapping flowinfo and scope_id byte ordering. (#1964)

    [0.26.1] - 2022-11-29

    Fixed

    • Fix UB with sys::socket::sockopt::SockType using SOCK_PACKET. (#1821)

    [0.26.0] - 2022-11-29

    Added

    • Added SockaddrStorage::{as_unix_addr, as_unix_addr_mut} (#1871)
    • Added MntFlags and unmount on all of the BSDs.
    • Added any() and all() to poll::PollFd. (#1877)
    • Add MntFlags and unmount on all of the BSDs. (#1849)
    • Added a Statfs::flags method. (#1849)
    • Added NSFS_MAGIC FsType on Linux and Android. (#1829)
    • Added sched_getcpu on platforms that support it. (#1825)
    • Added sched_getaffinity and sched_setaffinity on FreeBSD. (#1804)
    • Added line_discipline field to Termios on Linux, Android and Haiku (#1805)
    • Expose the memfd module on FreeBSD (memfd was added in FreeBSD 13) (#1808)
    • Added domainname field of UtsName on Android and Linux (#1817)
    • Re-export RLIM_INFINITY from libc (#1831)
    • Added syncfs(2) on Linux (#1833)
    • Added faccessat(2) on illumos (#1841)
    • Added eaccess() on FreeBSD, DragonFly and Linux (glibc and musl). (#1842)
    • Added IP_TOS SO_PRIORITY and IPV6_TCLASS sockopts for Linux (#1853)
    • Added new_unnamed and is_unnamed for UnixAddr on Linux and Android. (#1857)
    • Added SockProtocol::Raw for raw sockets (#1848)
    • added IP_MTU (IpMtu) IPPROTO_IP sockopt on Linux and Android. (#1865)

    Changed

    • The MSRV is now 1.56.1 (#1792)
    • The addr argument of sys::mman::mmap is now of type Option<NonZeroUsize>. (#1870)
    • The length argument of sys::mman::mmap is now of type NonZeroUsize. (#1873)

    Fixed

    • Fixed using SockaddrStorage to store a Unix-domain socket address on Linux. (#1871)
    • Fix microsecond calculation for TimeSpec. (#1801)
    • Fix User::from_name and Group::from_name panicking when given a name containing a nul. (#1815)
    • Fix User::from_uid and User::from_name crash on Android platform. (#1824)
    • Workaround XNU bug causing netmasks returned by getifaddrs to misbehave. (#1788)

    Removed

    • Removed deprecated error constants and conversions. (#1860)

    [0.25.0] - 2022-08-13

    Added

    • Added faccessat (#1780)
    • Added memfd on Android. (#1773)
    • Added ETH_P_ALL to SockProtocol enum (#1768)
    • Added four non-standard Linux SysconfVar variants (#1761)
    • Added const constructors for TimeSpec and TimeVal (#1760)
    • Added chflags. (#1758)
    • Added aio_writev and aio_readv. (#1713)
    • impl From<uid_t> for Uid and From<gid_t> for Gid (#1727)
    • impl From<SockaddrIn> for std::net::SocketAddrV4 and impl From<SockaddrIn6> for std::net::SocketAddrV6. (#1711)
    • Added support for the x86_64-unknown-haiku target. (#1703)
    • Added ptrace::read_user and ptrace::write_user for Linux. (#1697)
    • Added getrusage and helper types UsageWho and Usage (#1747)
    • Added the DontRoute SockOpt (#1752)
    • Added signal::SigSet::from_sigset_t_unchecked(). (#1741)
    • Added the Ipv4OrigDstAddr sockopt and control message. (#1772)
    • Added the Ipv6OrigDstAddr sockopt and control message. (#1772)
    • Added the Ipv4SendSrcAddr control message. (#1776)

    Changed

    • Reimplemented sendmmsg/recvmmsg to avoid allocations and with better API (#1744)

    • Rewrote the aio module. The new module:

      • Does more type checking at compile time rather than runtime.
      • Gives the caller control over whether and when to Box an aio operation.
      • Changes the type of the priority arguments to i32.
      • Changes the return type of aio_return to usize. (#1713)
    • nix::poll::ppoll: sigmask parameter is now optional. (#1739)

    • Changed gethostname to return an owned OsString. (#1745)

    • signal:SigSet is now marked as repr(transparent). (#1741)

    Removed

    • Removed support for resubmitting partially complete lio_listio operations. It was too complicated, and didn't fit Nix's theme of zero-cost abstractions. Instead, it can be reimplemented downstream. (#1713)

    [0.24.2] - 2022-07-17

    Fixed

    • Fixed buffer overflow in nix::sys::socket::recvfrom. (#1763)
    • Enabled SockaddrStorage::{as_link_addr, as_link_addr_mut} for Linux-like operating systems. (#1729)
    • Fixed SockaddrLike::from_raw implementations for VsockAddr and SysControlAddr. (#1736)

    [0.24.1] - 2022-04-22

    Fixed

    • Fixed UnixAddr::size on Linux-based OSes. (#1702)

    [0.24.0] - 2022-04-21

    Added

    • Added fine-grained features flags. Most Nix functionality can now be conditionally enabled. By default, all features are enabled. (#1611)
    • Added statfs FS type magic constants for target_os = "android" and synced constants with libc v0.2.121. (#1690)
    • Added fexecve on DragonFly. (#1577)
    • sys::uio::IoVec is now Send and Sync (#1582)
    • Added EPOLLEXCLUSIVE on Android. (#1567)
    • Added fdatasync for FreeBSD, Fuchsia, NetBSD, and OpenBSD. (#1581)
    • Added sched_setaffinity and sched_getaffinity on DragonFly. (#1537)
    • Added posix_fallocate on DragonFly. (#1621)
    • Added SO_TIMESTAMPING support (#1547)
    • Added getter methods to MqAttr struct (#1619)
    • Added the TxTime sockopt and control message. (#1564)
    • Added POSIX per-process timer support (#1622)
    • Added sendfile on DragonFly. (#1615)
    • Added UMOUNT_NOFOLLOW, FUSE_SUPER_MAGIC on Linux. (#1634)
    • Added getresuid, setresuid, getresgid, and setresgid on DragonFly, FreeBSD, and OpenBSD. (#1628)
    • Added MAP_FIXED_NOREPLACE on Linux. (#1636)
    • Added fspacectl on FreeBSD (#1640)
    • Added accept4 on DragonFly, Emscripten, Fuchsia, Illumos, and NetBSD. (#1654)
    • Added AsRawFd implementation on OwningIter. (#1563)
    • Added process_vm_readv and process_vm_writev on Android. (#1557)
    • Added nix::ucontext module on s390x. (#1662)
    • Implemented Extend, FromIterator, and IntoIterator for SigSet and added SigSet::iter and SigSetIter. (#1553)
    • Added ENOTRECOVERABLE and EOWNERDEAD error codes on DragonFly. (#1665)
    • Implemented Read and Write for &PtyMaster (#1664)
    • Added MSG_NOSIGNAL for Android, Dragonfly, FreeBSD, Fuchsia, Haiku, Illumos, Linux, NetBSD, OpenBSD and Solaris. (#1670)
    • Added waitid. (#1584)
    • Added Ipv6DontFrag for android, iOS, linux and macOS.
    • Added IpDontFrag for iOS, macOS. (#1692)

    Changed

    • mqueue functions now operate on a distinct type, nix::mqueue::MqdT. Accessors take this type by reference, not by value. (#1639)
    • Removed SigSet::extend in favor of <SigSet as Extend<Signal>>::extend. Because of this change, you now need use std::iter::Extend to call extend on a SigSet. (#1553)
    • Removed the the PATH_MAX restriction from APIs accepting paths. Paths will now be allocated on the heap if they are too long. In addition, large instruction count improvements (~30x) were made to path handling. (#1656)
    • Changed getrlimit and setrlimit to use rlim_t directly instead of Option<rlim_t>. (#1668)
    • Deprecated InetAddr and SockAddr in favor of SockaddrIn, SockaddrIn6, and SockaddrStorage. (#1684)
    • Deprecated IpAddr, Ipv4Addr, and Ipv6Addr in favor of their equivalents from the standard library. (#1685)
    • uname now returns a Result<UtsName> instead of just a UtsName and ignoring failures from libc. And getters on the UtsName struct now return an &OsStr instead of &str. (#1672)
    • Replaced IoVec with IoSlice and IoSliceMut, and replaced IoVec::from_slice with IoSlice::new. (#1643)

    Fixed

    • InetAddr::from_std now sets the sin_len/sin6_len fields on the BSDs. (#1642)
    • Fixed a panic in LinkAddr::addr. That function now returns an Option. (#1675) (#1677)

    Removed

    • Removed public access to the inner fields of NetlinkAddr, AlgAddr, SysControlAddr, LinkAddr, and VsockAddr. (#1614)
    • Removed EventFlag::EV_SYSFLAG. (#1635)

    [0.23.1] - 2021-12-16

    Changed

    • Relaxed the bitflags requirement from 1.3.1 to 1.1. This partially reverts #1492. From now on, the MSRV is not guaranteed to work with all versions of all dependencies, just with some version of all dependencies. (#1607)

    Fixed

    • Fixed soundness issues in FdSet::insert, FdSet::remove, and FdSet::contains involving file descriptors outside of the range 0..FD_SETSIZE. (#1575)

    [0.23.0] - 2021-09-28

    Added

    • Added the LocalPeerCred sockopt. (#1482)
    • Added TimeSpec::from_duration and TimeSpec::from_timespec (#1465)
    • Added IPV6_V6ONLY sockopt. (#1470)
    • Added impl From<User> for libc::passwd trait implementation to convert a User into a libc::passwd. Consumes the User struct to give ownership over the member pointers. (#1471)
    • Added pthread_kill. (#1472)
    • Added mknodat. (#1473)
    • Added setrlimit and getrlimit. (#1302)
    • Added ptrace::interrupt method for platforms that support PTRACE_INTERRUPT (#1422)
    • Added IP6T_SO_ORIGINAL_DST sockopt. (#1490)
    • Added the PTRACE_EVENT_STOP variant to the sys::ptrace::Event enum (#1335)
    • Exposed SockAddr::from_raw_sockaddr (#1447)
    • Added TcpRepair (#1503)
    • Enabled pwritev and preadv for more operating systems. (#1511)
    • Added support for TCP_MAXSEG TCP Maximum Segment Size socket options (#1292)
    • Added Ipv4RecvErr and Ipv6RecvErr sockopts and associated control messages. (#1514)
    • Added AsRawFd implementation on PollFd. (#1516)
    • Added Ipv4Ttl and Ipv6Ttl sockopts. (#1515)
    • Added MAP_EXCL, MAP_ALIGNED_SUPER, and MAP_CONCEAL mmap flags, and exposed MAP_ANONYMOUS for all operating systems. (#1522) (#1525) (#1531) (#1534)
    • Added read/write accessors for 'events' on PollFd. (#1517)

    Changed

    • FdSet::{contains, highest, fds} no longer require a mutable reference. (#1464)
    • User::gecos and corresponding libc::passwd::pw_gecos are supported on 64-bit Android, change conditional compilation to include the field in 64-bit Android builds (#1471)
    • eventfds are supported on Android, change conditional compilation to include sys::eventfd::eventfd and sys::eventfd::EfdFlagsfor Android builds. (#1481)
    • Most enums that come from C, for example Errno, are now marked as #[non_exhaustive]. (#1474)
    • Many more functions, mostly contructors, are now const. (#1476) (#1492)
    • sys::event::KEvent::filter now returns a Result instead of being infalliable. The only cases where it will now return an error are cases where it previously would've had undefined behavior. (#1484)
    • Minimum supported Rust version is now 1.46.0. (#1492)
    • Rework UnixAddr to encapsulate internals better in order to fix soundness issues. No longer allows creating a UnixAddr from a raw sockaddr_un. (#1496)
    • Raised bitflags to 1.3.0 and the MSRV to 1.46.0. (#1492)

    Fixed

    • posix_fadvise now returns errors in the conventional way, rather than as a non-zero value in Ok(). (#1538)
    • Added more errno definitions for better backwards compatibility with Nix 0.21.0. (#1467)
    • Fixed potential undefined behavior in Signal::try_from on some platforms. (#1484)
    • Fixed buffer overflow in unistd::getgrouplist. (#1545)

    Removed

    • Removed a couple of termios constants on redox that were never actually supported. (#1483)
    • Removed nix::sys::signal::NSIG. It was of dubious utility, and not correct for all platforms. (#1484)
    • Removed support for 32-bit Apple targets, since they've been dropped by both Rustc and Xcode. (#1492)
    • Deprecated SockAddr/InetAddr::to_str in favor of ToString::to_string (#1495)
    • Removed SigevNotify on OpenBSD and Redox. (#1511)

    [0.22.3] - 22 January 2022

    Changed

    • Relaxed the bitflags requirement from 1.3.1 to 1.1. This partially reverts #1492. From now on, the MSRV is not guaranteed to work with all versions of all dependencies, just with some version of all dependencies. (#1607)

    [0.22.2] - 28 September 2021

    Fixed

    • Fixed buffer overflow in unistd::getgrouplist. (#1545)
    • Added more errno definitions for better backwards compatibility with Nix 0.21.0. (#1467)

    [0.22.1] - 13 August 2021

    Fixed

    • Locked bitflags to < 1.3.0 to fix the build with rust < 1.46.0.

    Removed

    • Removed a couple of termios constants on redox that were never actually supported. (#1483)

    [0.22.0] - 9 July 2021

    Added

    • Added if_nameindex (#1445)
    • Added nmount for FreeBSD. (#1453)
    • Added IpFreebind socket option (sockopt) on Linux, Fuchsia and Android. (#1456)
    • Added TcpUserTimeout socket option (sockopt) on Linux and Fuchsia. (#1457)
    • Added renameat2 for Linux (#1458)
    • Added RxqOvfl support on Linux, Fuchsia and Android. (#1455)

    Changed

    • ptsname_r now returns a lossily-converted string in the event of bad UTF, just like ptsname. (#1446)
    • Nix's error type is now a simple wrapper around the platform's Errno. This means it is now Into<std::io::Error>. It's also Clone, Copy, Eq, and has a small fixed size. It also requires less typing. For example, the old enum variant nix::Error::Sys(nix::errno::Errno::EINVAL) is now simply nix::Error::EINVAL. (#1446)

    [0.21.2] - 29 September 2021

    Fixed

    • Fixed buffer overflow in unistd::getgrouplist. (#1545)

    [0.21.1] - 13 August 2021

    Fixed

    • Locked bitflags to < 1.3.0 to fix the build with rust < 1.46.0.

    Removed

    • Removed a couple of termios constants on redox that were never actually supported. (#1483)

    [0.21.0] - 31 May 2021

    Added

    • Added getresuid and getresgid (#1430)
    • Added TIMESTAMPNS support for linux (#1402)
    • Added sendfile64 (#1439)
    • Added MS_LAZYTIME to MsFlags (#1437)

    Changed

    • Made forkpty unsafe, like fork (#1390)
    • Made Uid, Gid and Pid methods from_raw and as_raw a const fn (#1429)
    • Made Uid::is_root a const fn (#1429)
    • AioCb is now always pinned. Once a libc::aiocb gets sent to the kernel, its address in memory must not change. Nix now enforces that by using std::pin. Most users won't need to change anything, except when using aio_suspend. See that method's documentation for the new usage. (#1440)
    • LioCb is now constructed using a distinct LioCbBuilder struct. This avoids a soundness issue with the old LioCb. Usage is similar but construction now uses the builder pattern. See the documentation for details. (#1440)
    • Minimum supported Rust version is now 1.41.0. (#1440)
    • Errno aliases are now associated consts on Errno, instead of consts in the errno module. (#1452)

    Fixed

    • Allow sockaddr_ll size, as reported by the Linux kernel, to be smaller then it's definition (#1395)
    • Fix spurious errors using sendmmsg with multiple cmsgs (#1414)
    • Added Errno::EOPNOTSUPP to FreeBSD, where it was missing. (#1452)

    Removed

    • Removed sys::socket::accept4 from Android arm because libc removed it in version 0.2.87. (#1399)
    • AioCb::from_boxed_slice and AioCb::from_boxed_mut_slice have been removed. They were useful with earlier versions of Rust, but should no longer be needed now that async/await are available. AioCbs now work exclusively with borrowed buffers, not owned ones. (#1440)
    • Removed some Errno values from platforms where they aren't actually defined. (#1452)

    [0.20.2] - 28 September 2021

    Fixed

    • Fixed buffer overflow in unistd::getgrouplist. (#1545)

    [0.20.1] - 13 August 2021

    Fixed

    • Locked bitflags to < 1.3.0 to fix the build with rust < 1.46.0.

    Removed

    • Removed a couple of termios constants on redox that were never actually supported. (#1483)

    [0.20.0] - 20 February 2021

    Added

    • Added a passwd field to Group (#1338)
    • Added mremap (#1306)
    • Added personality (#1331)
    • Added limited Fuchsia support (#1285)
    • Added getpeereid (#1342)
    • Implemented IntoIterator for Dir (#1333).

    Changed

    • Minimum supported Rust version is now 1.40.0. (#1356)
    • i686-apple-darwin has been demoted to Tier 2 support, because it's deprecated by Xcode. (#1350)
    • Fixed calling recvfrom on an AddrFamily::Packet socket (#1344)

    Fixed

    • TimerFd now closes the underlying fd on drop. (#1381)
    • Define *_MAGIC filesystem constants on Linux s390x (#1372)
    • mqueue, sysinfo, timespec, statfs, test_ptrace_syscall() on x32 (#1366)

    Removed

    • Dir, SignalFd, and PtyMaster are no longer Clone. (#1382)
    • Removed SockLevel, which hasn't been used for a few years (#1362)
    • Removed both Copy and Clone from TimerFd. (#1381)

    [0.19.1] - 28 November 2020

    Fixed

    • Fixed bugs in recvmmsg. (#1341)

    [0.19.0] - 6 October 2020

    Added

    • Added Netlink protocol families to the SockProtocol enum (#1289)
    • Added clock_gettime, clock_settime, clock_getres, clock_getcpuclockid functions and ClockId struct. (#1281)
    • Added wrapper functions for PTRACE_SYSEMU and PTRACE_SYSEMU_SINGLESTEP. (#1300)
    • Add support for Vsock on Android rather than just Linux. (#1301)
    • Added TCP_KEEPCNT and TCP_KEEPINTVL TCP keepalive options. (#1283)

    Changed

    • Expose SeekData and SeekHole on all Linux targets (#1284)
    • Changed unistd::{execv,execve,execvp,execvpe,fexecve,execveat} to take both &[&CStr] and &[CString] as its list argument(s). (#1278)
    • Made unistd::fork an unsafe funtion, bringing it in line with libstd's decision. (#1293)

    [0.18.0] - 26 July 2020

    Added

    • Added fchown(2) wrapper. (#1257)
    • Added support on linux systems for MAP_HUGE_SIZE family of flags. (#1211)
    • Added support for F_OFD_* fcntl commands on Linux and Android. (#1195)
    • Added env::clearenv(): calls libc::clearenv on platforms where it's available, and clears the environment of all variables via std::env::vars and std::env::remove_var on others. (#1185)
    • FsType inner value made public. (#1187)
    • Added unistd::setfsuid and unistd::setfsgid to set the user or group identity for filesystem checks per-thread. (#1163)
    • Derived Ord, PartialOrd for unistd::Pid (#1189)
    • Added select::FdSet::fds method to iterate over file descriptors in a set. (#1207)
    • Added support for UDP generic segmentation offload (GSO) and generic receive offload (GRO) (#1209)
    • Added support for sendmmsg and recvmmsg calls (#1208)
    • Added support for SCM_CREDS messages (UnixCredentials) on FreeBSD/DragonFly (#1216)
    • Added BindToDevice socket option (sockopt) on Linux (#1233)
    • Added EventFilter bitflags for EV_DISPATCH and EV_RECEIPT on OpenBSD. (#1252)
    • Added support for Ipv4PacketInfo and Ipv6PacketInfo to ControlMessage. (#1222)
    • CpuSet and UnixCredentials now implement Default. (#1244)
    • Added unistd::ttyname (#1259)
    • Added support for Ipv4PacketInfo and Ipv6PacketInfo to ControlMessage for iOS and Android. (#1265)
    • Added support for TimerFd. (#1261)

    Changed

    • Changed fallocate return type from c_int to () (#1201)
    • Enabled sys::ptrace::setregs and sys::ptrace::getregs on x86_64-unknown-linux-musl target (#1198)
    • On Linux, ptrace::write is now an unsafe function. Caveat programmer. (#1245)
    • execv, execve, execvp and execveat in ::nix::unistd and reboot in ::nix::sys::reboot now return Result<Infallible> instead of Result<Void> (#1239)
    • sys::socket::sockaddr_storage_to_addr is no longer unsafe. So is offset_of!.
    • sys::socket::sockaddr_storage_to_addr, offset_of!, and Errno::clear are no longer unsafe.
    • SockAddr::as_ffi_pair,sys::socket::sockaddr_storage_to_addr, offset_of!, and Errno::clear are no longer unsafe. (#1244)
    • Several Inotify methods now take self by value instead of by reference (#1244)
    • nix::poll::ppoll: timeout parameter is now optional, None is equivalent for infinite timeout.

    Fixed

    • Fixed getsockopt. The old code produced UB which triggers a panic with Rust 1.44.0. (#1214)

    • Fixed a bug in nix::unistd that would result in an infinite loop when a group or user lookup required a buffer larger than 16KB. (#1198)

    • Fixed unaligned casting of cmsg_data to af_alg_iv (#1206)

    • Fixed readlink/readlinkat when reading symlinks longer than PATH_MAX (#1231)

    • PollFd, EpollEvent, IpMembershipRequest, Ipv6MembershipRequest, TimeVal, and IoVec are now repr(transparent). This is required for correctness's sake across all architectures and compilers, though now bugs have been reported so far. (#1243)

    • Fixed unaligned pointer read in Inotify::read_events. (#1244)

    Removed

    • Removed sys::socket::addr::from_libc_sockaddr from the public API. (#1215)

    • Removed sys::termios::{get_libc_termios, get_libc_termios_mut, update_wrapper from the public API. These were previously hidden in the docs but still usable by downstream. (#1235)

    • Nix no longer implements NixPath for Option<P> where P: NixPath. Most Nix functions that accept NixPath arguments can't do anything useful with None. The exceptions (mount and quotactl_sync) already take explicitly optional arguments. (#1242)

    • Removed unistd::daemon and unistd::pipe2 on OSX and ios (#1255)

    • Removed sys::event::FilterFlag::NOTE_EXIT_REPARENTED and sys::event::FilterFlag::NOTE_REAP on OSX and ios. (#1255)

    • Removed sys::ptrace::ptrace on Android and Linux. (#1255)

    • Dropped support for powerpc64-unknown-linux-gnu (#1266)

    [0.17.0] - 3 February 2020

    Added

    • Add CLK_TCK to SysconfVar (#1177)

    Removed

    • Removed deprecated Error::description from error types (#1175)

    [0.16.1] - 23 December 2019

    Fixed

    • Fixed the build for OpenBSD (#1168)

    [0.16.0] - 1 December 2019

    Added

    • Added ptrace::seize(): similar to attach() on Linux but with better-defined semantics. (#1154)

    • Added Signal::as_str(): returns signal name as &'static str (#1138)

    • Added posix_fallocate. (#1105)

    • Implemented Default for FdSet (#1107)

    • Added NixPath::is_empty. (#1107)

    • Added mkfifoat ([#1133](https://github.com/nix

    Open source →
  7. 0.29.0 24 May 2024
    Release notes

    chore: Release nix version 0.29.0

    Open source →
  8. 0.28.0 24 Feb 2024
    Release notes

    chore: Release nix version 0.28.0

    Open source →
  9. 0.27.1 28 Aug 2023
    Release notes

    chore: Release nix version 0.27.1

    Open source →
  10. 0.27.0 28 Aug 2023
    Release notes

    chore: Release nix version 0.27.0

    Open source →
  11. 0.26.4 28 Aug 2023

    Nothing published for this version

  12. 0.26.3 27 Aug 2023 withdrawn

    Nothing published for this version

  13. 0.26.2 18 Jan 2023

    Nothing published for this version

  14. 0.26.1 29 Nov 2022

    Nothing published for this version

  15. 0.26.0 29 Nov 2022

    Nothing published for this version

  16. 0.25.1 02 Dec 2022

    Nothing published for this version

  17. 0.25.0 13 Aug 2022

    Nothing published for this version

  18. 0.24.3 02 Dec 2022

    Nothing published for this version

  19. 0.24.2 17 Jul 2022

    Nothing published for this version

  20. 0.24.1 22 Apr 2022

    Nothing published for this version

  21. 0.24.0 21 Apr 2022

    Nothing published for this version

  22. 0.23.2 03 Dec 2022

    Nothing published for this version

  23. 0.23.1 17 Dec 2021

    Nothing published for this version

  24. 0.23.0 29 Sep 2021

    Nothing published for this version

  25. 0.22.3 23 Jan 2022

    Nothing published for this version

  26. 0.22.2 29 Sep 2021

    Nothing published for this version

  27. 0.22.1 14 Aug 2021

    Nothing published for this version

  28. 0.22.0 09 Jul 2021

    Nothing published for this version

  29. 0.21.2 29 Sep 2021

    Nothing published for this version

  30. 0.21.1 14 Aug 2021

    Nothing published for this version

  31. 0.21.0 31 May 2021

    Nothing published for this version

  32. 0.20.2 29 Sep 2021

    Nothing published for this version

  33. 0.20.1 14 Aug 2021

    Nothing published for this version

  34. 0.20.0 20 Feb 2021

    Nothing published for this version

  35. 0.19.1 29 Nov 2020

    Nothing published for this version

  36. 0.19.0 13 Oct 2020

    Nothing published for this version

  37. 0.18.0 27 Jul 2020

    Nothing published for this version

  38. 0.17.0 04 Feb 2020

    Nothing published for this version

  39. 0.16.1 24 Dec 2019

    Nothing published for this version

  40. 0.16.0 02 Dec 2019

    Nothing published for this version

  41. 0.15.0 10 Aug 2019

    Nothing published for this version

  42. 0.14.1 07 Jun 2019

    Nothing published for this version

  43. 0.14.0 22 May 2019

    Nothing published for this version

  44. 0.13.1 11 Jun 2019

    Nothing published for this version

  45. 0.13.0 15 Jan 2019

    Nothing published for this version

  46. 0.12.1 08 Jun 2019

    Nothing published for this version

  47. 0.12.0 28 Nov 2018

    Nothing published for this version

  48. 0.11.1 07 Jun 2019

    Nothing published for this version

  49. 0.11.0 02 Jun 2018

    Nothing published for this version

  50. 0.10.0 26 Jan 2018

    Nothing published for this version

  51. 0.9.0 24 Jul 2017

    Nothing published for this version

  52. 0.8.1 17 Apr 2017

    Nothing published for this version

  53. 0.8.0 02 Mar 2017

    Nothing published for this version

  54. 0.7.0 09 Sep 2016

    Nothing published for this version

  55. 0.6.0 10 Jun 2016

    Nothing published for this version

  56. 0.5.1 11 Jun 2016

    Nothing published for this version

  57. 0.5.1-pre 10 Jun 2016 pre-release withdrawn

    Nothing published for this version

  58. 0.5.0 02 Mar 2016

    Nothing published for this version

  59. 0.4.3 12 Jun 2016

    Nothing published for this version

  60. 0.4.2 04 Dec 2015

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive