Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

libc 1.0 release readiness

Metadata
Point of contactYuki Okushi
StatusProposed
Tracking issue
Other tracking issuesrust-lang/libc#3248(https://github.com/rust-lang/libc/issues/3248)
Zulip channelN/A
Teamslibs
Task owners(none)

Summary

Prepare and ship libc 1.0 by resolving long-standing ABI and API inconsistencies, finishing the new testing infrastructure rollout, and making the policy decisions required for a stable major release.

Motivation

libc is the canonical Rust FFI layer for C libraries and is widely depended on across the ecosystem. It is still 0.2 because there are outstanding ABI mismatches, unsound trait implementations, and unclear policy guarantees that make a 1.0 promise premature.

The status quo

  • On 32-bit targets, time_t and off_t can be 32- or 64-bit depending on C library headers and macro configuration, but libc can only define one variant.
  • Several early mistakes require breaking changes (e.g., iconv, vfork, placeholder constants, incorrect type definitions) and are tracked as breakage candidates.
  • musl 1.2 and time64 support is implemented but it still needs some additional work.
  • Some libc types want anonymous struct/union support that is not yet fully available in stable Rust.
  • GSoC 2025 delivered a modern replacement for the old ctest2 harness, but some issues remain.

What we propose to do about it

Focus 2026 work on the explicit 1.0 blockers in the tracking issue: land targeted breaking fixes, remove inappropriate trait impls, and complete the ctest rewrite. In parallel, we will define and publish libc’s MSRV and platform-support policies to make 1.0’s guarantees clear and durable. We also have to triage the polls on Zulip and address them.

Work items over the next year

TaskOwner(s)Notes
Define MSRV and platform-support policiesYuki Okushi Trevor Gross
Address remaining breaking changes listed in the tracking issueYuki Okushi Trevor Gross
Triage polls on ZulipYuki Okushi Trevor Gross
Complete ctest rewriteAbdul Muiz

Team asks

TeamSupport levelNotes
libsSmall

Frequently asked questions

TODO - will fill in based on the review comments