Releases: moonrepo/moon
Releases · moonrepo/moon
v1.39.1
🐞 Fixes
- Fixed a path error for
@moonrepo/clipackage.
v1.39.0
🚀 Updates
- The automatic proto install has moved into a new
SetupProtoaction, which is now part of the
action graph, and does not run on every command. It's also a bit smarter and will only install
when a toolchain requires it. - Added support for new task input formats based on the RFC: #1985
- Added URI support for files (
file://) and globs (glob://). - Added object support for files and globs.
- Added URI support for files (
- Updated task input files:
- Added a
optionalparam, which allows the file to be optional (missing) during hashing.
Defaults to true. - Added a
contentparam, which will match against the file's contents to determine affected
state.
- Added a
- Updated task input globs:
- Added a
cacheparam, which controls whether the glob results should be cached or not.
- Added a
- Updated the
@moonrepo/clinpm package to no longer rely on postinstall scripts. - Improved argument quoting for commands and scripts.
- Renamed project
typetolayer, as it better reflects what it does, a layer of access within
the projectstack. For backwards compatibility, thetypename will still be supported until
v2. The following changes have been made:type->layerinmoon.yml--type->--layerinmoon query projectsprojectType->projectLayerfor MQL$projectType->$projectLayerfor task tokensenforceProjectTypeRelationships->enforceLayerRelationshipsin.moon/workspace.yml
🐞 Fixes
- Fixed
moon query touched-files --defaultBranchrequiring a "true" or "false" explicit value.
⚙️ Internal
- Added telemetry for toolchain usage.
- Added unstable support for bubbling up logs from WASM plugins.
- Updated Rust to v1.88.0.
- Updated proto to v0.51.4 (from 0.50.1).
- Updated dependencies.
v1.38.6
v1.38.5
🚀 Updates
- Updated project locating to log the glob results for debugging purposes.
🐞 Fixes
- Fixed a
bun.lockparsing error.
v1.38.4
🚀 Updates
- Updated MCP (Model Context Protocol) implementation to use protocol version
2025-06-18from
2025-03-26- in turn, allowing Claude Code to use the MCP.- Updated
sync_projectstool to sync all projects if no IDs provided.
- Updated
📚 Documentation
- Added Claude Code to MCP documentation.
v1.38.3
🐞 Fixes
- Fixed the duplicate nodes in the action graph.
v1.38.2
🚀 Updates
- More plugin pre-loading improvements.
🐞 Fixes
- Potential fix for duplicate nodes in the action graph.
- Potential fix for the node platform panicing for a missing package manager.
- Potential fix for a fs rename error when installing proto.
- Fixed a panic that would occur during
moon cijob calculation.
v1.38.1
🚀 Updates
- Added a new setting for toolchain plugins,
versionFromPrototools, which controls how we inherit
a version from the root.prototoolsfile. By default this is enabled, but can be disabled, and configured with
a string if the IDs don't match. - Added support for toolchain plugins to replace/wrap a task script in the
extend_task_scriptWASM
API. - Updated toolchain setup to preload the proto WASM plugin. This should help to alleviate network
race conditions. - Updated
moon setupto also install toolchain plugins.
🐞 Fixes
- Fixed an issue where toolchain plugins do not inherit versions from
.prototools. - Fixed an issue where a file lock would be created for proto installation, even when it didn't need
to be installed. - Fixed an issue where
moon docker prunewould force install all toolchains. If you were relying
on this functionality, runmoon docker setupinstead.
🧩 Plugins
- WASM API
- Added
ExtendTaskScriptOutput.scriptfield.
- Added
v1.38.0
💥 Breaking
- WASM API
- Renamed
RegisterToolchainOutput.lock_file_nametoRegisterToolchainOutput.lock_file_names
and its type toVec<String>. - Renamed
RegisterToolchainOutput.manifest_file_nameto
RegisterToolchainOutput.manifest_file_namesand its type toVec<String>.
- Renamed
🚀 Updates
- Added a new Go toolchain implementation, powered entirely by our new WASM plugin system. It can be enabled with the
unstable_goidentifier.- Supports tiers 1, 2, and 3!
- Supports Go workspaces via
go.workfiles. - Extracts project dependencies and relationships from
go.modfiles. - Extracts version and lockfile information from
go.sumandgo.work.sumfiles. - Basic vendor support (
go mod vendor) during Docker prune.
- Added new tools for
moon mcp.get_touched_files- Gets touched files between base and head.sync_projects- Runs theSyncProjectaction for one or many projects.sync_workspace- Runs theSyncWorkspaceaction.
- Added new
moon toolchaincommand and sub-commands.- Add a toolchain to
.moon/toolchain.ymlwithmoon toolchain add. - View information about a toolchain plugin with
moon toolchain info.
- Add a toolchain to
- Added support for terminal desktop notifications. Can be enabled with the new
notifier.terminalNotificationssetting in.moon/workspace.yml. - Added a
notifier.webhookAcknowledgesetting, that ensures webhooks resolve with a 2xx status
code. - Updated project graph invalidation to take manifests from toolchain plugins into account.
🐞 Fixes
- Fixed an issue with task output hydration that would sometimes fail with a permission denied error
when cleaning stale files.
🧩 Plugins
- Updated
rust_toolchainto v0.2.0.- Cached the globals bin directory when extending task commands/scripts.
- Task hashing now includes the host OS, arch, and libc.
- WASM API
- Added
LocateDependenciesRootInput.toolchain_configfield. - Added
PruneDockerInput.toolchain_configfield. - Added
ScaffoldDockerInput.toolchain_configfield.
- Added
⚙️ Internal
- Updated proto to v0.50.1 (from 0.49.4).
v1.37.3
🐞 Fixes
- Fixed an issue where
git://based code generation couldn't checkout a specific commit. - Fixed incorrect casing for the
moon migrate --skipTouchedFilesCheckoption.