Update Rust crate libc to v0.2.190 - #13
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
August 15, 2026 03:42
1d42d28 to
43928f1
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
September 2, 2026 22:35
43928f1 to
6035b45
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
September 15, 2026 16:17
6035b45 to
0e4b365
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
October 1, 2026 00:27
0e4b365 to
a34ed99
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
October 2, 2026 20:27
a34ed99 to
7375aff
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.2.186→0.2.190Release Notes
rust-lang/libc (libc)
v0.2.190Compare Source
There is now a single config for enabling 64-bit
time_t:libc_unstable_time64. This can be setunconditionally; it opts in to 64-bit
time_ton the following platforms that use 32-bit bydefault:
musl v1.2.
Most other 32-bit platforms are either already using 64-bit
time_t, or are considered legacyand will not be gaining support from their upstream maintainers.
You can enable this using
RUSTFLAGS:RUSTFLAGS='--cfg=libc_unstable_time64' cargo ...Note that there may still be some changes to features gated by this config option, hence "unstable"
in its name. In the near future we will rename it to just
libc_time64. Until then, please test itout and report any bugs you find!
Support
Added
We are slowly filling out the
Defaultimplementations, to reduce the need formem::zeroed()in user code:Defaultfor a number of structs, especially on Apple platforms (#5576)statvfsaDefaultimpl (#5583)Defaultto alinux/can.rsstructs (#5257)Other additions:
libc_unstable_time64cfg (#5411)pthread_gettid_np(#5359)RTLD_NEXT(#5323)NET_RT_DUMP2(#5442)posix_spawn_file_actions_add(f)chdir(_np)(#5558)BPF_WORDALIGN(#5320)lchmodandlchflagswhere supported (#5400)minheritand related constants (#4849)AT_RENAME_*andRENAME_*constants (#5560)renameat2(#5563)rt_msghdrandrt_metrics(#5367)libc_unstable_gnu_time_bits(#5242)environ(#5339)f_typefield tostatvfsandstatvfs64(#5434)STATX_*constants (#5412)SIGEV_THREAD_ID(#5375)*_SUPER_MAGICconstants (#5453)statxalways available (#5448)max_align_t(#5389)BCACHEFS_SUPER_MAGIC(#5516)ETH_P_LLDP(#5438)FUTEX_ROBUST_UNLOCKandFUTEX_ROBUST_LIST32(#5525)NLMSG_*helpers (#5321)siginfo_tand add more getter functions (#5345)SYS_futex_waitv(#5527)__errno(#5346)RTLD_NODELETEandRTLD_NOLOAD(#5377)getexecpath(#5465)sensors.h(#5510)HW_*sysctl constants (#5371)FILENAME_MAX(#5530)clock_settimeandpause(#5363)getrandombindings (#5333)group_req/group_source_reqandMCAST_*where supported (#5236)HOST_NAME_MAX(#5531)_PATH_BSHELLand_PATH_DEFPATHwhere available (#5449)SOCK_CLOEXEC(#5336)time_ton 32-bit platforms via cfg (#5261)Deprecated
_kernel_simple_lock(#5380)*_MIN/*_MAXin favor of e.g.c_int::MAX(#5404)fallocate64, which does not exist on the platform (#5242)glob64types and routines (#5242)syscall,mincore, andKERN_NSELCOLL, all of which have been removed upstream (87992e9895c2)tmpnam,tempnam(#5478)Fixed
BPF_ALIGNMENTtosize_tto match upstream and harmonize with other platforms. (#5373)BPF_ALIGNMENTtosize_tto match upstream and harmonize with other platforms. (#5348)fileops_t.fo_select(#5380)file(#5380)ucontext_t(#5189)O_flags (#5554)mcontext_tanducontext_tand make them usable on more platforms (#5127)glob_tandstatvfs(#5127)sigeventand correct the layout of otherpthread.htypes (#5127)sem_t(#5351)statvfs64on 32-bit RISC-V (#5518)ipc_perm(#5527)uc_flagsfield inucontext_t(#5527)WIFSTOPPED(#5458)time_talias. This is a correction on Arm32 RTEMS (#5132)O_open flags (#5414)socket.hdefinitions (#5313)signal.htypes (#5436)Changed
libc_unstable_musl_v1_2_3has been renamed to a more accuratelibc_unstable_musl_v1_2. The old version will continue to work for now, but will be removed in1-2 releases. (#5376)
unsafe(#5380)POSIX_SPAWN_*flags toc_short(#5572)FD_*functions (#5528)__riscv_mc_q_ext_state.__reservedand make it private (#5533)statfields non-pub(#5542)Removed
libcexposed quite a bit of API on all Apple platforms that is not actually available anywhere other than MacOS. This release removes a number of these cases.mach.hAPI on Apple mobile OSs (e6bfb187513c)exec*andforkcalls from tvOS and watchOS (#5158)Additionally, this release cleans up a lot of API that has been deprecated since at least libc 0.2.100, released 2021-08-20.
af_alg_ivtrait implementations. The have been deprecated for a long time because they allowed out-of-bounds reads via safe functions. (444db4456f38)Other removed items:
INHERIT_ZEROthat does not exist upstream (#5587)REG_*definitions (#5527)REG_NARGS(#5527)A huge thank you to our GSoC student Adam Martinez (@dybucc) who did a
huge amount of the time64 work, as well as many of the platform fixes!
v0.2.189Compare Source
Added
pthread_sigmask,sigwait,sigwaitinfo,sigtimedwait,faccessat, andpthread_kill(#5270)clone3syscall (#4980)CLOCK_PROCESS_CPUTIME_IDandCLOCK_THREAD_CPUTIME_ID(#5274)Deprecated
CLONE_INTO_CGROUPandCLONE_CLEAR_SIGHAND. These overflow their types and will be changed to a larger size in the future. (8c6e6710458d)Fixed
wchar_tdefinition under Arm (#5245)time-related symbols (#5300)v0.2.188Compare Source
Changed
SendandSyncforDIR(35b062263401)These were removed in 0.2.187 because
libcdoes not actually makeSendandSyncguarantees about
DIR(or other extern types), but this caused some crates to break.The traits are added back for now to allow time to migrate, but will be removed again
in the future; please make sure your crates are not relying on
libc::DIR: Sendorlibc::DIR: Sync.v0.2.187Compare Source
This release contains a number of improvements related to 64-bit
time_tconfiguration.Of note the existing
RUST_LIBC_UNSTABLE_*environment variables have been replacedwith configuration options. The new way to use these is:
Being able to set this via
RUSTFLAGSmakes it easier to only apply configuration tospecific targets (and notably, not the host if build scripts are used).
There are two other notable changes:
The 32-bit
windows-gnutargets now respectlibc_unstable_gnu_time_bitsuClibc now supports a similar configuration option:
RUSTFLAGS='--cfg=libc_unstable_uclibc_time64'As a reminder, these options are under active development and may change in the future
(hence the "unstable" in the name). It likely that we will harmonize everything under a
single configuration option before considering them stable.
Support
aarch64-unknown-linux-pauthtest(#5065)Added
POSIX_SPAWN_*constants (#5104)getpwent,setpwent, andendpwent(#5160)preadv2andpwritev2(#5157)seccomp_notif*structures (#5224)timer_[create, delete, getoverrun, gettime, settime](#5108)PROC_PIDT_SHORTBSDINFOandproc_bsdshortinfo(#5110)SIOC*constants fromsockio.h(#5263)_IOR,_IOW,_IOWR(#5264)bpf_programandbpf_insn(#5235)kqueueconstants (#5077)vm_statistics64with recently added fields (#5253)IN6_IFF_*andSIOCGIFAFLAG_IN6(#5239)O_*,POSIX_FADV_*,NI*, and a few other missing constants (#5116)fdatasync,dlvsym,reallocarray,qsort_r,pthread_*affinity_np,ftok,extattr_*, anddup3(#5116)in6_pktinfo(#5256)DLT_*constants (#5235)PROC_LOGSIGEXIT_*andPPROT_*(#4657)SO_RERROR(#5260)IN6_IFF_*,in6_ifreq, andSIOCGIFAFLAG_IN6(#5239)_IO*helpers fromsys/ioccom.h(#5239)PTHREAD_*_MUTEX_INITIALIZER_NPfor riscv64 (#5094)struct tcp_info(#5215)OPEN_TREE_NAMESPACE(#5145)SECCOMP_IOCTL_*constants (#5224)SO_DETACH_REUSEPORT_BPF(#5081)futex_waitv(#5125)fsopen,fsconfig,fsmount, andfspick(#5145)statxpresent since 6.16 (#4621)ifaddrmsgandrtattr(#5234)sockaddr_iucv(#5041)ENOTCAPABLE(#4925)renameat2(#5113)F_SETFD(#5258)POLLRD*andPOLLWR*constants (#5258)SO_KEEPALIVEand TCP keepalive constants (#5111)TCP_MAXSEG(#5258)eventfdandEFD_*constants (#5258)pipe2(#5258)strerror_r(#5258)netinetstructs and constants (#5258)*atanddirentfunctions (#5117)port_alertandPORT_ALERT*constants (#5203)Deprecated
CPUCTL_RSMSRandUTX_DB_LASTLOG(#5116)Fixed
tsfrom*const timespecto*mut timespecin _lwp_park` (#5169)PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIGconstants fromu8toc_uint(#4936)cpuset_ttypo inCPU_ZERO(#5098)ifaddrs, pthread barriers, process sizing fields, andmcontextalignment (#5116)CPUCTL_CPUID*,EV_HUP, andEV_SYSFLAGS(#5116)POLLOUT(#5090)EPIOC[GS]PARAMSwith nonstandard _IOC (#5188)unsafe(#3727)__getmntinfo13(#5251)PTHREAD_MUTEX_INITIALIZER(#5241)Changed
-> c_void(#5240)AIO_LISTIO_MAXto account for changes in macOS 27 (#5253)MS_NOUSER(#5215)SW_MAXandSW_CNT(#5215)swapped_counttovm_statistics64(#4926)libc_unstable_gnu_time_bitsfor 64-bittime_tconfig (#5062)Removed
Elf32_Lword,ip_mreq_source, andIP_constants (#5116)KERN_REALROOTDEVandVM_LAPTOP_MODE(#5177)Other
LIBC_BUILD_VERBOSEis set (#5272)*LASTconstants as potentially changing (#5120)*MAXconstants as potentially changing (#5122)ELASTconstants as potentially changing (#5118)RAND_MAXas potentially changing (#5119)*NUMconstants as potentially changing (#5123)*COUNTconstants as potentially changing (#5121)time_t(#5046)RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64(#5197)RUST_LIBC_UNSTABLEenv withlibc_unstable*cfg (#4977)Configuration
📅 Schedule: (UTC)
🚦 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.
This PR was generated by Mend Renovate. View the repository job log.