github moonrepo/moon @moonrepo/cli@0.20.0

latest releases: v1.34.3, @moonrepo/core-windows-x64-msvc@1.34.3, @moonrepo/core-macos-x64@1.34.3...
2 years ago

💥 Breaking

  • Moved the node and typescript settings from .moon/workspace.yml to a new config,
    .moon/toolchain.yml.
  • Moved the workspace.node and workspace.typescript settings in moon.yml to toolchain.node
    and toolchain.typescript.

🚀 Updates

  • Added runner.archivableTargets to .moon/workspace.yml to control which targets are cached as
    archives.
  • Added vcs.remoteCandidates to .moon/workspace.yml to customize the remotes for git to query
    against.
  • Added support for moduleSuffixes and moduleDetection in TypeScript tsconfig.json compiler
    options.
  • Added Google Cloud Build and AWS CodeBuild to the list of CI providers to detect. results.
Toolchain
  • Implemented a new toolchain, that is more efficient and performant.
  • Will now log to the terminal when node, npm, etc, are being installed for the first time.
Runner
  • Updated the terminal output to include a shortened version of each task hash.
  • Reworked the terminal output when running multiple tasks in parallel, or for long-running
    processes.
  • Implemented a new file tree diffing algorithm that speeds up task output hydration by 10x.
  • Updated pnpm to no longer run pnpm prune while deduping dependencies, as it produces unexpected
    results.
Generator
  • Added path_join and path_relative template filters.
  • Added pre-defined template variables for the working dir, destination, and workspace root.

🐞 Fixes

  • When writing JSON files, it will now respect the indent_style = tab setting in the closest
    .editorconfig.
  • When writing YAML files, indentation and formatting will be inferred from the closest
    .editorconfig as best as possible.
  • Fixed an issue where parsing yarn.lock would panic on certain Windows machines.
  • Fixed an issue where moon docker prune would remove required node modules.

⚙️ Internal

  • Migrated our json/yaml libraries to the official serde crates.
  • Migrated to nextest for better testing performance.

Don't miss a new moon release

NewReleases is sending notifications on new releases.