Skip to content

feat(hermit): Upgrade moon to v2.0.0#928

Open
mvgijssel wants to merge 3 commits intomainfrom
feat/upgrade-moon-to-v2
Open

feat(hermit): Upgrade moon to v2.0.0#928
mvgijssel wants to merge 3 commits intomainfrom
feat/upgrade-moon-to-v2

Conversation

@mvgijssel
Copy link
Member

@mvgijssel mvgijssel commented Feb 19, 2026

Summary

This PR upgrades moon from v1.41.8 to v2.0.0, following the major release announced at https://moonrepo.dev/blog/moon-v2.0.

Changes Made

  • ✅ Updated hermit manifest (third_party/hermit/moon.hcl) for moon v2.0.0
  • ✅ Updated binary naming from moon-* to moon_cli-*
  • ✅ Updated packaging from standalone binaries to .tar.xz archives
  • ✅ Removed darwin amd64 platform (not available in moon v2.0.0)
  • ✅ Updated all SHA256 checksums for v2.0.0 release
  • ✅ Simplified manifest by using strip=1 for tar.xz extraction

Breaking Changes in Moon v2.0.0

Per the official release notes:

  • New plugin-based toolchain system: The legacy platform system has been completely replaced
  • Command syntax changes: The shorthand moon <target> is deprecated; use moonx app:build instead
  • Task command parsing: Now stricter - only supports simple commands, no pipes/redirects/conditionals
  • Extensions config: Moved from workspace settings to standalone .moon/extensions.* files
  • darwin-amd64 removed: Intel macOS binaries are no longer provided in moon v2.0.0

Migration Notes

The workspace configuration appears compatible with v2.0.0:

  • No experiments.gitV2 setting to remove (already using default)
  • No extension configurations that need migration
  • Toolchain is managed by Hermit, not moon

After merging: Users will need to reinstall moon to pick up the new version:

rm bin/moon bin/.moon-1.41.8.pkg
hermit install moon
moon --version  # Should show 2.0.0

Test Plan

  • Hermit successfully installs moon v2.0.0
  • moon --version shows v2.0.0
  • Basic moon commands work (moon query projects, etc.)
  • CI passes on Linux environments
  • macOS ARM64 environments can install and use moon v2.0.0

🤖 Generated with Claude Code

@mvgijssel mvgijssel force-pushed the feat/upgrade-moon-to-v2 branch from f34ab1f to 37f2fd0 Compare February 19, 2026 16:33
- Update moon from v1.41.8 to v2.0.0
- Update binary naming from moon-* to moon_cli-*
- Update packaging from standalone binaries to tar.xz archives
- Remove darwin amd64 platform (not available in v2.0.0)
- Update all SHA256 checksums for v2.0.0 release
- Simplify manifest by using strip=1 for tar.xz extraction

Breaking changes in moon v2.0.0:
- New plugin-based toolchain system
- Command syntax changes (moon <target> deprecated, use moonx)
- Task command parsing now stricter (no pipes/redirects)
- Extensions config moved to .moon/extensions.* files

See https://moonrepo.dev/blog/moon-v2.0 for full migration guide

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@mvgijssel mvgijssel force-pushed the feat/upgrade-moon-to-v2 branch from 37f2fd0 to 70b1839 Compare February 19, 2026 16:36
After upgrading to moon v2.0.0, the old symlinks are removed.
Add explicit hermit install step to ensure moon is available in CI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments