-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(release): add conventional commits configurability for version and changelog #22004
feat(release): add conventional commits configurability for version and changelog #22004
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
☁️ Nx Cloud ReportCI is running/has finished running commands for commit 777c361. As they complete they will appear below. Click to see the status, the terminal output, and the build insights. 📂 See all runs for this CI Pipeline Execution ✅ Successfully ran 6 targets
Sent with 💌 from NxCloud. |
|
||
## Configure Commit Types | ||
|
||
Commit types are configured in the `release.conventionalCommits.types` property in `nx.json`: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like it to be made clearer that this is an advanced case and that most folks are perfectly fine/happy with the default behavior and no configuration should be required for most people (i.e. should just be "conventionalCommits": true
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can add something about this being an advanced use case, but I want to point out that the release.conventionalCommits
property they are setting here is different than the existing release.version.conventionalCommits
property that is frequently set to true
to enable it for versioning. Most users will never set release.conventionalCommits
, as its only valid value is an advanced config option outlined in this doc. It is invalid (and meaningless) for release.conventionalCommits
to be set to true
.
The reason there are two different properties is because this new one affects both version
and changelog
commands, so it didn't make sense to extend the existing release.version.conventionalCommits
property to accept a configuration object.
docs/shared/recipes/nx-release/customize-conventional-commit-types.md
Outdated
Show resolved
Hide resolved
docs/shared/recipes/nx-release/customize-conventional-commit-types.md
Outdated
Show resolved
Hide resolved
docs/shared/recipes/nx-release/customize-conventional-commit-types.md
Outdated
Show resolved
Hide resolved
Co-authored-by: Isaac Mann <isaacplmann@users.noreply.github.com>
…nd changelog (nrwl#22004) Co-authored-by: Isaac Mann <isaacplmann@users.noreply.github.com>
This pull request has already been merged/closed. If you experience issues related to these changes, please open a new issue referencing this pull request. |
Current Behavior
nx release version
will only usefeat
andfix
commit types when determining the specifier (whenspecifierSource
isconventional-commits
). It will also always assume that fixes are patches and feats are minor bumps.nx release changelog
will only includefeat
,fix
, andperf
changes in changelogs.Expected Behavior
nx release version
will consider user configuration when picking the specifier whenspecifierSource
isconventional-commits
.nx release changelog
will consider user configuration when filtering commits to appear in the changelog. It will also consider the configured section title.