3.3 KiB
3.3 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
0.2.0 - 2026-01-13
Added
- Workaround for automatic C library input propagation in downstream Nix builds. (#27 by @roberth)
EvalStateBuilder::load_ambient_settings()to control whether global Nix settings are loaded. (#36 by @roberth)
Fixed
- Path coercion failing with "path does not exist" errors due to missing
eval_state_builder_load()call. (#36 by @aanderse)
Changed
- Split
nix-bindings-util-sys(which contained all low-level FFI bindings) into separate per-library*-syscrates. (#27 by @Ericson2314) This allows downstream crates to depend on just the low-level bindings they need without pulling in higher-level crates.
0.1.0 - 2026-01-12
Initial release, extracted from the nixops4 repository.
Added
nix-bindings-store: Rust bindings for Nix store operations- Store opening (auto, from URI, from environment)
- Store path parsing and manipulation
Store::get_fs_closure(#12 by @RossComputerGuy, @roberth)CloneforDerivation(#25 by @Ericson2314)- Store deduplication workaround for nix#11979
- aarch64 ABI support (#26 by @RossComputerGuy)
nix-bindings-expr: Rust bindings for Nix expression evaluationEvalStatefor evaluating Nix expressions- Value creation (int, string, attrs, thunks, primops, etc.)
- Value inspection/extraction (
require_*functions) - Attribute selection and manipulation
- Thread registration for GC safety
nix-bindings-fetchers: Rust bindings for Nix fetchersnix-bindings-flake: Rust bindings for Nix flake operations- Flake locking
- Flake overriding
nix-bindings-util: Shared utilities- Context management for Nix C API error handling
- Settings access
nix-bindings-util-sys: Low-level FFI bindings for all Nix C libraries
Contributors
Thanks to everyone who contributed to the initial development, some of whom may not be listed with individual changes above: