Update Rust crate libc to v0.2.189 - #75
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
October 12, 2025 16:31
44b4a32 to
0db4911
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
December 5, 2025 14:43
0db4911 to
ba64670
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
January 6, 2026 13:08
ba64670 to
14f7773
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
January 11, 2026 13:24
14f7773 to
095e312
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
March 1, 2026 14:17
095e312 to
53804cf
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
March 11, 2026 10:02
53804cf to
f526399
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
April 4, 2026 12:39
f526399 to
4748b14
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
April 16, 2026 16:02
4748b14 to
d19bf53
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
April 26, 2026 21:19
d19bf53 to
d11c30f
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
July 24, 2026 03:00
d11c30f to
2a6f762
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
July 24, 2026 11:38
2a6f762 to
847f909
Compare
renovate
Bot
force-pushed
the
renovate/libc-0.x-lockfile
branch
from
July 25, 2026 00:34
847f909 to
b95ce24
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.175→0.2.189Release Notes
rust-lang/libc (libc)
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)v0.2.186Compare Source
Added
KEVENT_FLAG_*constants (#5070)PR_SET_MEMORY_MERGEandPR_GET_MEMORY_MERGE(#5060)Changed
v0.2.185Compare Source
Added
espidf_picolibccfg for picolibcO_*flag values (#5035)sprintf,snprintf, and thescanffamily (#5024)Fixed
time64types from musl symbol redirects (#5040)POLLconstants fromc_shorttoc_int(#5045)v0.2.184Compare Source
MSRV
This release increases the MSRV of
libcto 1.65. With this update, you can now always use thecore::ffi::c_*types withlibcdefinitions, sincelibchas been changed to reexport fromcorerather than redefining them. (This usually worked before but had edge cases.)(#4972)
Added
IP_MINTTLto bsd (#5026)TIOCM_DSR(#5031)xfilestructe and file descriptor types (#5002)struct ethhdr(#4239)struct ifinfomsg(#5012)max_align_tfor riscv64 (#5029)CLOCK_constants (#5020)_SC_HOST_NAME_MAX(#5004)flockandF_*LCKconstants (#4043)_SC_*sysconf constants (#5023)Deprecated
The remaining fixed-width integer aliases,
__uint128_t,__uint128,__int128_t, and__int128,have been deprecated. Use
i128andu128instead. (#4343)Fixed
DT_*constants (#5034)RTLD_NOLOAD, some TCP constants (#5025)Padding::new(<zeroed>)rather thanPadding::uninit()(#5036)Changed
struct ptrace_syscall_info(#4966)core::ffiinteger types rather than redefining (#5015)F_DUPFD,IP, andTCPconstants to match relibc (#4990)v0.2.183Compare Source
Added
SOMAXCONN(#4993)name_to_handle_atandopen_by_handle_at(#4988)kinfo_file,kinfo_pcb, and related constants (#4985)kinfo_fileand related constants (#4991)Defaultfortimevalandtimespec(#4976)Fixed
time_tsupport andmusl_v1_2_3(#4992)Padding(#4997)sigaction.sa_flagstoc_int(#4986)blkcnt_ttype (#4994)v0.2.182Compare Source
Added
tgkill(#4970)RENAME_NOREPLACE(#4968)renameat2(#4968)v0.2.181Compare Source
Added
MADV_ZERO(#4924)makedev,major, andminor(#4928)PTRACE_SET_SYSCALL_INFO(#4933)max_align_t(#4927)_CS_PATH(#4956)ppoll(#4957)Fixed
dev_t(#4928)tc{g,s}etattr(#4938)cf{g,s}et{i,o}speedon mips{32,64}r6 (#4938)ptrace_thread_state(#4947)PTHREAD_MUTEX_{NORMAL, RECURSIVE}(#4943)Changed
SO_*constants (#4937)v0.2.180Compare Source
Added
Fixed
CMSG_NXTHDR(#4903)CMSG_NXTHDR(#4903)mcontexttype definitions (#4886)__SIZEOF_PTHREAD_COND_Ton non-L4Re uclibc (#4915)netlinkmodule to resolve build errors (#4915)v0.2.179Compare Source
With this release, we now have unstable support for 64-bit
time_ton 32-bitplatforms with both Musl and Glibc. Testing is appreciated!
For now, these can be enabled by setting environment variables during build:
Note that the exact configuration will change in the future. Setting the
MUSL_V1_2_3variable also enables some newer API unrelated totime_t.Added
XCASE(#4847)NAME_MAX(#4888)AT_EXECVE_CHECK(#4422)SUN_LENmacro (#4269)getitimerandsetitimer(#4890)pthread_tryjoin_nandpthread_timedjoin_np(#4887)time_ton 32-bit platforms (#4463)LINK_STATE_*definitions fromsys/net/if.h(#4751)Fixed
cf{g,s}et{i,o}speed(#4882)pthread(#4479)CPU_SETSIZEon musl 1.2+ (#4865)stat/stat64(#4463)SIGSTKSZ/MINSIGSTKSZ(#4884)PT_{GET,SET}FPREGS,_REG_TIPDR, and_REG_{LR,SP}(#4899)if_msghdralignment (#4902)siginfo_tlayout on 32-bit platforms (#4904)pthread_spin_tto allow arch redefinition. (#4899)Changed
pthreadstruct fields private (#4876)Paddingtype (#4862)Removed
RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64(#4865)v0.2.178Compare Source
Added
issetugid(#4744)__psw_t/fprefset_t/*context_t(#4726)AT_HWCAP{3,4}(#4734)eventfd(#4830)unistd.h(#4811)cfmakeraw(#4704)cfsetspeed(#4704)getresgidandgetresuid(#4752)setresgidandsetresuid(#4752)select.h,stat.h,poll.h,ttycom.h,utsname.h,resource.h,mman.h,udp.h,in.h,in6.h,if.h,fnmatch.h, andsioLibCommon.h(#4781)Deprecated:
TIOCREMOTE(#4764)Fixed:
Note that there were a large number of fixes on NetBSD for this
libcrelease, some of which include minor breakage.EWOULDBLOCKto make it an alias ofEAGAIN(#4790)unnecessary_transmuteswarnings (#4780)SF_SETTABLE(#4764)mcontext_t.mc_fpregs(#)gethostname(#4773)NFT_MSG_MAX(#4761)repr(align(8))forcanxl_frame(#4760)eventfdargument names match OS docs/headers (#4830)ipc_perm, split from OpenBSD asipc.rs(#4782)kinfo_vmentry.kve_path(#)uucred.cr_ngroupsfrominttoshort(#4782)kevent.udata(#4782)mcontext_t.__fpregs(#4782)PT_SUSPEND(#4782)sockaddr_dl.sdl_datafrom 12 to 24 (#4782)if_.rs, fix the definition ofifreq(#4782)time.rs, fix the values ofCLOCK_*_CPUTIME_ID(#4782)timex.rs(#4782)types.rs, correct the definition oflwpid_t(#4782)utmp_.rs, correct the definition oflastlog(#4782)utmpx_.rs, correct utmpx definitions (#4782)_cpusetan extern type (#4782)mcontexttypes (#4782)pid_t(#4825)__wasilibc_register_preopened_fd(#4837)Changed
thread_local(#3653)ucontext_tand unskip its tests (#4760)L_tmpnamandTMP_MAXto the UCRT value (#4566)Removed
SIGSTKFLT(#4749)statvfs.f_sparenon-public (#4782)*_MAXIDconstants andAT_SUN_LDPGSIZE(#4782)IFF_NOTRAILERS(#4782)vm_size_t(#4782)v0.2.177Compare Source
Added
TIOCGETA,TIOCSETA,TIOCSETAW,TIOCSETAFconstants (#4736)pthread_cond_timedwait_relative_np(#4719)_CS_PATHconstant (#4738)SIGEMTfor mips* and sparc* architectures (#4730)elf_aux_info(#4729)wcsnlen(#4721)Changed
v0.2.176Compare Source
Support
rustcsince 1.78. (#2406)Debugis now always implemented, rather than being gated behind theextra_traitsfeature. (#4624)Added
_KERNELmacro. (#4607)st_filereftostruct stat(#4642)accept4POSIX call (#4586)EM_RISCV(#4659)MS_NOSYMFOLLOW(#4389)backtrace_symbols(_fd)(#4668)SOL_PACKEToptnames (#4669)SYS_mseal(#4549)__errno(#4687)dirfd,VDISABLE, and resource consts (#4660)resource.h,fcntl.hconstants (#4666)strftimeandmkostemp[s](#4629)qsort_r(Unix), andqsort(_s)(Windows) (#4677)dlvsymfor Linux-gnu, FreeBSD, and NetBSD (#4671)sigqueue(#4620)Changed
kinfo_procas non-exhaustive (#4553)readdir_r(#4694)epoll_eventis packed (#4639)ctestwith the much more reliable new implementation (#4655 and many related PRs)Fixed
getgrnam_r([#4656](#4656P_IDLEPROCto FreeBSD 15 (#4640)mcontext_t::mc_tlsbaseto FreeBSD 15 (#4640)mcontext_t.mc_tlsbase(#4703)statfs[64](#4549)fpreg_ta union (#4549)gid_tanduid_t(#4689)MAP_FIXED(#4684)Deprecated
deprecatedattribute foriconv(a97a0b53)TIOCMGDTRWAITandTIOCMSDTRWAIT(#4685)Removed
JAIL_{GET,SET}_MASK,_MC_FLAG_MASK(#4691)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.
This change is