Skip to content

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.

The canonical changelog lives in CHANGELOG.md at the repository root - this page mirrors it for navigability.

0.1.3 - 2026-05-10

Fixed

  • npm OIDC publishing: switched to Node 24.x (npm >= 11.5.1) for native OIDC trusted publishing support.
  • Homebrew formula update: fixed SHA256 substitution regex in release workflow.
  • Release workflow: removed invalid --access public flag for unscoped npm package.

0.1.2 - 2026-05-07

Fixed

  • CI formatting check: ran cargo fmt --all to fix formatting across the entire codebase.
  • CI doc warnings: fixed bare URL rustdoc warning in src/trace.rs.
  • README badges: added npm, PyPI, and CI badges.

0.1.1 - 2026-05-07

Fixed

  • Cache restore now works: cache hits actually restore output files from blob storage instead of being a no-op stub.
  • Environment variables in cache keys: CC, CXX, CFLAGS, LDFLAGS, etc. are now included in action keys, preventing stale cache hits after compiler flag changes.
  • State machine enforcement for NodeState, SessionState, ConnectionState, and WatcherState - invalid transitions are now rejected at compile time or logged at runtime.
  • Removed panic! in production path in cache server handler.
  • BuildLog::save now resets the dirty flag after successful writes.
  • Blocking NNG calls moved off the async runtime via tokio::task::spawn_blocking.
  • Admin tools no longer unwrap JSON serialization.
  • handle_query deduplication in daemon server.

Added

  • Homebrew formula available via brew tap neul-labs/tap.
  • Pre-built binaries for macOS (Intel & Apple Silicon) and Linux (x86_64 & aarch64).
  • NPM wrapper for global installation via npm install -g rninja-cli.
  • PyPI wrapper for installation via pip install rninja-cli.

0.1.0 - 2024-12-01

Added

  • Initial release of rninja
  • Full Ninja build file compatibility
  • Local build cache with BLAKE3 hashing
  • Content-addressed blob storage using sled
  • Remote cache support via nng transport
  • Daemon mode for faster subsequent builds
  • All standard ninja subtools (clean, compdb, graph, deps, query, etc.)
  • Cache management tools (cache-stats, cache-gc, cache-health)
  • Configuration via TOML files and environment variables
  • Chrome trace output for build profiling
  • JSON output mode for scripting and automation
  • CMake, Meson, and GN generator compatibility

Performance

  • 23x faster no-op builds compared to ninja
  • 2-5x faster warm incremental builds with caching
  • 1.3-2x faster cold builds with improved parallelism