github moonrepo/moon v1.41.0

5 hours ago

💥 Breaking

  • WASM API
    • Removed ParseLockOutput.packages field.

🚀 Updates

  • Added a new Deno toolchain implementation, powered entirely by our new WASM plugin system. It can be enabled with the unstable_deno identifier.
    • Supports tiers 1, 2, and 3!
    • Parses deno.json and deno.jsonc manifest files.
    • Parses deno.lock lock files.
    • Will install dependencies with deno install.
    • Pairs with the unstable_javascript toolchain.
    • And much more!
  • Added a new task input type that allows you to depend on changes to a project's files directly,
    instead of depending on a project's task.
    • Added URI support: project://<id>
    • Added object support: project: '<id>'
    • Can filter with globs or by file group.
    • Can reference all project dependencies with ^.
  • Added a new task input type for referencing file groups within the owning project.
    • Added URI support: group://<name>
    • Added object support: group: '<name>'
    • This is similar to the @files, @globs, etc, token functions.
  • Added URI and object support for task output types, similar to inputs.
    • file://<path> and file: '<path>'
    • glob://<pattern> and glob: '<pattern>'
    • Added optional support to file outputs.
  • Added new values to the runInCI task option:
    • only - Only run the task in CI, and not locally, when affected.
    • skip - Skip running in CI but run locally and allow task relationships to be valid.

🧰 Toolchains

  • JavaScript
    • Added Deno support. Can customize packageManager with deno.
    • Added workspace member caching to reduce fs operations.
    • Updated install_dependencies and setup_environment to take project toolchain configuration
      into account.

🧩 Plugins

  • WASM API
    • Added ManifestDependencyConfig.reference field.
    • Added SyncProjectInput.toolchain_workspace_config field.

⚙️ Internal

  • Updated proto to v0.53.0 (from 0.52.3).
  • Updated Rust to v1.90.0.
  • Updated dependencies.

Don't miss a new moon release

NewReleases is sending notifications on new releases.