Skip to content

Manny 0.3.0-dev

Pre-release
Pre-release

Choose a tag to compare

@MicroRJ MicroRJ released this 28 Sep 12:34
· 27 commits to master since this release

Manny 0.3.0-dev

This is an early Windows x64 preview of Manny, a programmable build system and parallel graph executor written in C.

Manny reads an elf program that creates ordinary task descriptions. It turns those tasks into a dependency graph, schedules independent work concurrently, and records enough state to make later builds incremental and explainable.

Highlights

  • A reusable C graph executor with arbitrary node callbacks.
  • Parallel command execution with dependency and failure propagation.
  • Compiler-generated dependency tracking for clang, clang-cl, and GCC-family commands.
  • BLAKE3 task fingerprints for configuration changes that timestamps cannot detect.
  • Normalized, interned paths and a compact binary build-state stream.
  • Incremental state updates that survive interrupted builds.
  • Per-task working directories.
  • --explain output for rebuild and no-op decisions.
  • General-purpose elf scripts instead of a build-specific DSL.
  • A bundled c.elf module for C and C++ executables, static libraries, generated files, and tests.

Try it

Download manny-0.3.0-dev-windows-x64.zip, extract it, and open a command prompt in its hello directory.

..\manny.exe
..\manny.exe run
..\manny.exe --explain

The included example requires Visual Studio C++ build tools and clang-cl on PATH.

SHA-256 (manny-0.3.0-dev-windows-x64.zip):
30cf1487dde0d79aa1fd8959a6addcc529b3ecaccf25c2e60e4983f0e52598d5

Preview status

Manny is still changing. This package currently targets Windows x64, and its C API, elf interface, and persistent-state format should be treated as unstable.