Skip to main content
Back to timeline
Hugging Face - BlogSource publication:

llama.cpp ships v1.0.0: major version numbers now flag C API and ABI breaks so downstream apps can pin interfaces

Synopsis

llama.cpp and its underlying tensor library ggml both reach v1.0.0, tying semantic versioning to the public C interface: a major bump marks a breaking change to the public C API under ./include, a minor bump covers backward-compatible features, backend updates, model support or API additions, and a patch covers bug fixes with no API change. After 3.5 years of adoption, interface stability becomes the point of release management, a promise earlier version numbers did not carry.

AI-generated editorial illustration: llama.cpp v1.0.0 : A stronger foundation for the local AI ecosystem

Interpretation

Version numbers for llama.cpp and ggml now carry an interface promise: a major bump means the public C API or ABI is incompatible. The project had run for 3.5 years and gathered many downstream applications depending on its library interfaces, but the version number itself did not mark those boundaries for developers. The release states the rule: a breaking change to the public C API in ./include bumps the major version, a backward-compatible feature, backend update, model support or API addition bumps the minor version, and a bug fix with no API change bumps the patch version.

The two libraries ship together under the same version number, with public headers in llama.cpp/include and ggml/include. llama.cpp handles C/C++ large language model inference, while ggml is the machine-learning tensor library beneath it, each with its own public headers. The release maps llama.cpp v1.0.0 to libllama and llama.cpp/include, and ggml v1.0.0 to libggml and ggml/include.

Distribution covers pre-release artifacts plus Docker, Debian, Homebrew, conda-forge, MacPorts, Winget and XCFramework. Pre-release artifacts target Linux, macOS, Windows, Android and iOS, while the other channels are listed per platform. The release lists platforms by channel: Docker and Debian for Linux, Homebrew for macOS and Linux, conda-forge for Windows, macOS and Linux, MacPorts for macOS, Winget for Windows, and XCFramework for iOS and macOS.

Perspective

The release addresses downstream developers who depend on the llama.cpp and ggml library interfaces, and the rules apply to all ggml-org projects that use semantic versioning; it gives no count of downstream applications and no list of interface changes.

The release says the project will be stricter about making these boundaries visible to downstream consumers as adoption grows, without stating how or on what schedule; its use of LLMs in the development cycle is described only as continued thoughtful and reasonable integration.