Releases: moonrepo/moon
Releases · moonrepo/moon
v1.33.2
🚀 Updates
- Added
MOON_REMOTE_*environment variables for manyunstable_remotesettings.
🐞 Fixes
- Fixed an issue where project toolchain detection would not take the
toolchaindisabled state in
moon.ymlinto account.
⚙️ Internal
- Updated dependencies.
v1.33.1
🐞 Fixes
- Fixed an issue where internal tasks could be ran when using the "run in closest project"
shorthand. - Fixed an issue where the task
presetwould sometimes not be inherited when usingextends.
🧩 Plugins
- Updated
typescript_toolchainto v0.1.3.- Will no longer error if a file in
extendsis missing during task hashing.
- Will no longer error if a file in
v1.33.0
💥 Breaking
- Changed the way to disable the TypeScript toolchain in
moon.yml.# Before toolchain: typescript: disabled: true # After toolchain: typescript: false # or null
- Removed the
--includeoption frommoon docker scaffold(it's been long deprecated). Use the
dockersettings instead.
🚀 Updates
- The TypeScript toolchain is now powered by a WASM plugin. This is our
first step in supporting plugins in core. We chose TypeScript as our 1st plugin because it was the
simplest of all the toolchains, and primarily was used for project syncing.- Plugins must be downloaded from the internet, so a connection is required on the first run. The
plugin is then cached locally. - Most of the code had to be rewritten but we tried to keep as much parity as possible. Please
report an issues or differences you encounter. - Because TypeScript is now a "true" toolchain, it will appear in the toolchains list for projects
and tasks. This is required since it runs operations in the context of the plugin. - All
typescriptsettings in.moon/toolchain.ymlcan now be defined as overrides in
moon.yml.
- Plugins must be downloaded from the internet, so a connection is required on the first run. The
- Added new toolchain plugin integrations for specific features.
- Integrated into the
SyncWorkspaceandSyncProjectactions. - Integrated into all
moon dockercommands. - Integrated into the task hashing process.
- Integrated into the
- Added a new
moonxexecutable, which is a shorthand formoon run.- Right now the implementation uses Bash/PowerShell shims, but will be migrated to a true binary
executable once we rework our release process. - The shims are dynamically created the first time moon runs, relative to the executed
moon
binary.
- Right now the implementation uses Bash/PowerShell shims, but will be migrated to a true binary
- Added support for
moon run ~:build, which will run thebuildtask in the closest project
(traversing upwards). - Added
$XDG_DATA_HOMEsupport when detecting the moon store. Will be used if$MOON_HOMEis not
set, and will fallback to$HOME/.moon. - Added elapsed/timing information to child processes and WASM calls within logs.
- Improved the handling of CTRL-C, CTRL-BREAK, and other signals on Windows.
- Updated
moon initwith toolchain plugin support. - Updated
toolchain.defaultinmoon.ymlto support a list of IDs. - Updated
unstable_remote.auth.headersto support environment variable interpolation. - Updated generated JSON schemas at
.moon/cache/schemasto dynamically include toolchain plugin
configuration. - Updated file hashing (via
git hash-object) to continously pipe stdin to avoid hanging processes. - Deprecated
hasher.batchSizein.moon/workspace.yml.
🧩 Plugins
- Added new toolchain WASM APIs.
register_toolchain- Registers the toolchain and provide metadata for detection and other
purposes.initialize_toolchain- Provides prompts to use duringmoon initto gather settings values.define_toolchain_config- Defines a configuration schema for use within JSON schemas.define_docker_metadata- Defines metadata related todockercommands.hash_task_contents- Injects content into the task hashing process.prune_docker- Custom operations to run duringdocker prune.scaffold_docker- Custom operations to run duringdocker scaffold.sync_project- Runs syncing operations per project (during theSyncProjectaction).sync_workspace- Runs syncing operations at the workspace root (during theSyncWorkspace
action).
- Updated
download_extensionto v0.0.9. - Updated
migrate_nx_extensionto v0.0.9.- Will no longer remove Nx configs. Pass
--cleanupto remove them.
- Will no longer remove Nx configs. Pass
- Updated
migrate_turborepo_extensionto v0.1.6.- Will no longer remove Turborepo configs. Pass
--cleanupto remove them.
- Will no longer remove Turborepo configs. Pass
🐞 Fixes
- Fixed an issue where file hashing (
git hash-object) would hang when there are too many files
being hashed.
⚙️ Internal
- Updated proto to v0.47.4 (from 0.45.2).
- Updated Rust to v1.85.
- Updated dependencies.
- Removed JSON schemas from the GitHub release.
v1.32.9
🐞 Fixes
- Reverted "Fixed an issue where task output wasn't captured for the "review" section in a run
summary." as it caused a regression.
v1.32.8
🐞 Fixes
- Fixed an issue where task output wasn't captured for the "review" section in a run summary.
- Fixed an issue where a task with a
scriptwould always be forced to the "system" toolchain.
v1.32.7
🚀 Updates
- Updated
moon task-graph,moon-project-graph, andmoon action-graphto request a port
dynamically, instead of defaulting to 8000.
🐞 Fixes
- Fixed an issue where
moon *-graphcommands could not be CTRL+C'd. - Fixed an issue where Git based template locations would fail if the initial
git clonefailed.
v1.32.6
🐞 Fixes
- Fixed an issue where aliases would not be inherited for some toolchains.
- Fixed some token variable interpolation for paths on Windows.
v1.32.5
🚀 Updates
- Updated Python uv with new features:
- Project aliases are inferred from
project.nameinpyproject.toml. - Implicit project dependencies are inferred from
project.dependenciesinpyproject.toml.- Requires a bare identifier with no version/url/origin markers.
- Currently does not support
tool.uvor workspaces.
- Project aliases are inferred from
🐞 Fixes
- Fixed an issue where no touched files would be found when pushing commits on the default branch.
- Fixed an issue where
pyproject.tomloruv.lockwould sometimes not be parsed.
v1.32.4
🐞 Fixes
- Fixed an issue where a project could be inserted into the project graph multiple times.
- Fixed an issue where touched files would sometimes not be available outside of affected scopes.
v1.32.3
🐞 Fixes
- Fixed an issue where
moon setupwouldn't load configuration. - Fixed an issue where
moon docker scaffoldwould unexpectedly install the toolchain languages. - Fixed an issue where
moon docker scaffoldwould not copyuv.tomlanduv.lockfiles. - Fixed an issue where changing
python.versionwouldn't regenerate the Python virtual environment.