build: use placeholder version for semantic-release#204
Merged
arbrandes merged 3 commits intoopenedx:mainfrom Mar 26, 2026
Merged
build: use placeholder version for semantic-release#204arbrandes merged 3 commits intoopenedx:mainfrom
arbrandes merged 3 commits intoopenedx:mainfrom
Conversation
semantic-release manages the version at publish time, so the version in package.json is not manually maintained. Use 1.999.0 as a placeholder that satisfies any ^1.X.Y range in workspace consumers without a prerelease suffix (which would break semver matching). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
When the package.json version is the semantic-release placeholder (0.0.0-dev), the CLI now appends the short git hash in parentheses so the exact checkout is identifiable. For published packages, the real version set by semantic-release is shown as before. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
brian-smith-tcril
approved these changes
Mar 26, 2026
Contributor
brian-smith-tcril
left a comment
There was a problem hiding this comment.
One small comment with a question but LGTM!
tools/cli/openedx.ts
Outdated
Comment on lines
+21
to
+24
| const candidates = [ | ||
| path.resolve(__dirname, '../../package.json'), | ||
| path.resolve(__dirname, '../../../package.json'), | ||
| ]; |
Contributor
There was a problem hiding this comment.
I know we had the "it could be in ../../ or ../../../ logic before this, but it's not fully clear to me why. Not blocking, just curious/looking for possible ways to simplify this.
Contributor
Author
There was a problem hiding this comment.
Good instincts. This was only necessary before the move to publishing everything under dist/. Now we only need the one path. 👍🏼
The compiled CLI always lives at dist/tools/cli/openedx.js, now, so the package root is always exactly three levels up. The previous candidate-list approach included a two-level path that could never match once we adopted this layout. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
🎉 This PR is included in version 1.0.0-alpha.17 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Now that semantic-release manages versioning, the version in package.json is no longer manually maintained. This sets it to
0.0.0-devto make that explicit.The CLI's version display is also updated to detect the placeholder: when it matches
0.0.0-*, the short git hash is appended in parentheses (e.g.,0.0.0-dev (3a1b2c4)) so the exact checkout is identifiable. For published packages, the real version set by semantic-release is shown as before.LLM usage notice
Built with assistance from Claude models (mostly Opus 4.6).