Moonrepo has released moon v2.0 (codenamed "Phobos"), the first major version since v1. The headline change is a shift from a hard-coded platform system to a WASM plugin-based toolchain architecture, enabling community-built plugins for any language or runtime. Other notable additions include support for JSON, JSONC, HCL, Pkl, and TOML config formats alongside YAML; a restructured CLI with a new unified `moon exec` command underpinning `moon ci`, `moon check`, and `moon run`; reworked configuration-based task inheritance with a new `inheritedBy` setting; per-project Docker overrides with custom Dockerfile templates via Tera; and a rewritten Git VCS layer with better worktree and submodule support. Migration from v1 involves breaking changes, but a `moon migrate v2` command automates much of the process. Moon is written in Rust and targets polyglot monorepos needing reproducible toolchain management.

3m read timeFrom infoq.com
Post cover image
160 Impressions