Skip to content

Prepare semver support#7307

Open
alfonso-noriega wants to merge 2 commits intomainfrom
prepare-semver-support
Open

Prepare semver support#7307
alfonso-noriega wants to merge 2 commits intomainfrom
prepare-semver-support

Conversation

@alfonso-noriega
Copy link
Copy Markdown
Contributor

@alfonso-noriega alfonso-noriega commented Apr 15, 2026

WHY are these changes introduced?

The release infrastructure was hardcoded for major version 3 (branch patterns stable/3.*, packaging directory packaging/3/, Homebrew template version "3"). This prepares the tooling for future major versions so that a version bump doesn't require touching release plumbing.

WHAT is this pull request doing?

  • Renames packaging/3/packaging/stable/ to remove the version coupling from the directory name
  • Updates GitHub Actions branch patterns from stable/3.* to stable/* in the release and test workflows
  • Updates bin/create-homebrew-pr.js to match any stable semver string (not just 3.x.x) and to only update the shopify-cli@3.rb versioned formula while still on major version 3 — once we move to v4+, that formula stays frozen at the last 3.x release
  • Updates the Homebrew commit message to be version-agnostic
  • Adds CONTRIBUTING.md documenting changesets, bump type selection, what counts as a breaking change, and the deprecation policy
  • Tightens the PR template checklist item to make the bump-type decision self-contained

How to test your changes?

No behaviour change for the current v3 release flow. To verify:

  1. Confirm packaging/stable/ contains the two Liquid templates previously under packaging/3/
  2. Run node bin/create-homebrew-pr.js --help to ensure the script loads without errors
  3. Inspect that getTemplateVersion('3.x.x') returns 'stable' and getTemplateVersion('4.0.0') also returns 'stable'

Checklist

  • I've considered possible cross-platform impacts (Mac, Linux, Windows)
  • I've considered possible documentation changes
  • I've considered analytics changes to measure impact
  • The change is user-facing, so I've added a changelog entry with pnpm changeset add
  • If I added a changeset, the bump type is correct: patch for bug fixes, minor for new features, major for breaking changes to a stable interface

Copy link
Copy Markdown
Contributor Author

alfonso-noriega commented Apr 15, 2026

@alfonso-noriega alfonso-noriega force-pushed the prepare-semver-support branch 3 times, most recently from b443520 to 51b313f Compare April 15, 2026 12:52
@alfonso-noriega alfonso-noriega marked this pull request as ready for review April 15, 2026 13:07
@alfonso-noriega alfonso-noriega requested a review from a team as a code owner April 15, 2026 13:07
- Rename packaging/3/ to packaging/stable/ so the template directory
  is not tied to the CLI major version
- Update getTemplateVersion() to match any stable semver (was hardcoded to ^3.x)
- Stop updating shopify-cli@3.rb when the major version is 4+; that
  formula stays frozen at the last 3.x release
- Fix hardcoded 'Shopify CLI 3 formula' in the Homebrew PR commit message
- Merge changeset bump-type reflection into a single PR template checkbox
@alfonso-noriega alfonso-noriega force-pushed the prepare-semver-support branch from 51b313f to c24f37c Compare April 16, 2026 15:01
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.

3 participants