All notable changes to caxe will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.3.9 - 2026-02-16
- Clarified framework support levels in
cx frameworkwith explicit statuses:daxe:integratedfmt,spdlog,json,catch2:dependency-alias
cx framework add <name>now rejects dependency-alias entries with non-zero exit and exactcx add <name>guidance- Improved framework info/list output with recommended commands per entry
- Kept backward compatibility for existing
[build].frameworkalias values:- Build continues with warning
- Explicit migration hint to
cx add <name>is shown
- Replaced fragile framework config editing with section-aware
[build]key mutation/removal logic - Kept
cx target add/remove/defaultvisible while marking them deferred in v0.3.x help and runtime output - Standardized deferred target mutation failures to non-zero with explicit profile-first guidance:
- configure
[profile:<name>] - run
cx build --profile <name>
- configure
- Improved
cx target listUX with a clear deferred-status banner and profile-based setup hint - Added dedicated CI lint gate:
cargo clippy --all-targets --all-features -- -D warnings
- Aligned CI test execution to explicit target coverage:
cargo test --all-targets --verbose
- Added targeted regression coverage for framework metadata/mutation behavior and target deferred messaging/help surface
- Included dependency and workflow updates already present in
HEAD(cargo deps + GitHub Actions deps bumps)
0.3.8 - Defects-First Stabilization & Governance 🛠️
- Canonicalized artifact paths to
.cx/<profile>/binacross build/package/IDE/docker flows - Updated
cx watchnon-test mode to rebuild-only behavior (no auto-run) - Made
cx lock --checkstrict (missing/extra/URL mismatch) andcx syncfail-fast on stale lockfiles - Made
cx target add/remove/defaultexplicit deferred operations with non-zero exit and--profileguidance - Added deterministic object naming and improved test recompilation freshness logic
- Persisted import source scanning for non-
srcproject layouts - Improved performance in cache pruning, dependency fetching, and package zip streaming
- Added dual licensing (
MIT OR Apache-2.0) withLICENSE-MITandLICENSE-APACHE - Added contributor/community governance docs and templates (
CONTRIBUTING.md,SECURITY.md,CODE_OF_CONDUCT.md, issue/PR templates) - Expanded test coverage and module documentation
- Improved CLI maintainability with extracted command handlers and safer progress-style fallbacks
0.3.7 - Faster Builds with Prebuilt Cache ⚡
- Prebuilt binary cache for faster dependency builds
- SDL3 project template
- Fix: Script mode binary path handling
0.3.6 - Cross-Compilation Profiles & Enhanced Formatting 🎯
- Cross-compilation profile support with
--profileflag - Enhanced code formatting options
0.3.5 - Arduino & Cross-Platform Support 🤖
- Arduino CLI integration (
cx build --arduino,cx upload) - Cross-platform target management (
cx target) - Toolchain enhancements
0.3.4 - Toolchain Management 🔋
- Interactive toolchain installer (
cx toolchain install) - Renamed
cx build --profiletocx build --trace
0.3.3 - Script Mode & Polish 📜
- Script mode for running single C/C++ files directly
0.3.2 - Polish & Registry Expansion ✨
- Expanded library registry
0.3.1 - Speed, Safety, and Polish 🚀
- Advanced optimizations (LTO, sanitizers)
0.3.0 - Parallel Builds & TDD 🚀
- Lock-free parallel compilation with rayon
- Test-driven development support
- Modern CLI with colors and Unicode
0.2.10 - Symmetric Box Styling 🎨
- Fix: Box styling symmetry issues
0.2.9 - Dry-Run Mode & Modern Styling 🔍
- Dry-run mode (
cx build --dry-run) - Modern CLI styling
0.2.8 - Verbose Mode & Philosophy 🔍
- Verbose mode (
-v,--verbose) - PHILOSOPHY.md
0.2.7 - Doctor Command & Toolchain Improvements 🩺
cx doctorcommand- Toolchain improvements
0.2.6 - Toolchain Discovery System 🔧
- Automatic toolchain discovery
- Interactive toolchain selection
- Enhanced
cx info
0.2.5 - Graphics Ready (SDL2 & OpenGL) 🎨
- SDL2 and OpenGL support
0.2.4 - Documentation Made Easy 📚
cx doccommand (Doxygen)
0.2.3 - Scriptable Builds with Rhai 📜
- Rhai scripting support
0.2.2 - Windows Native Support 🖥️
- Native Windows/MSVC support
0.2.1 - Smart Header Tracking 🧠
- Header dependency tracking
0.2.0 - Parallel Builds, Rich Progress Bars & Linting 🚀
- Parallel build engine
- Rich progress interface
- Static analysis (
cx check)
0.1.9 - Init & Cache Management 📦
- Project initialization (
cx init) - Cache management
0.1.8 - Search & Lockfiles 🔐
- Registry search
- Lockfile support (
cx.lock)
0.1.7 - Remote Registry & Self-Upgrades 📡
- Remote registry
- Self-update (
cx upgrade)
0.1.6 - Registry Aliases & Easy Installers 📦
- Registry aliases
- Automatic installers
0.1.5 - Stability & Smart Linking 🚀
- Smart linking
0.1.4 - Distribution, Formatting & System Packages 🚀
cx packagecommandcx fmtcommand- System package support
0.1.3 - Scripts & C Support 📜
- Pre/post build scripts
- C language support
0.1.2 - Better Build Artifacts 🏗️
- Improved build artifacts
0.1.1 - Compiler Selection & System Info
- Compiler selection
- System info display
0.1.0 - Initial Release 🚀
- Zero-config C/C++ project creation
- Automatic toolchain detection
- Basic build and run commands