Comments (8)
This is due to the way we process rules. For each commit we evaluate evaluate each of your rules, and if we find one that match we use it. IF we don't find then we look at the default rules.
Your commit is a fix
and a BREAKING CHANGE
. Because you have a rule that match fix
and not that match a breaking change we use the fix
one which trigger a patch
.
In the default rules we have one (at the top) to match braking changes, but it's never evaluated as you have in your custom rule one that match your commit.
This is explained in the documentation: https://github.com/semantic-release/commit-analyzer#releaserules
To solve your problem you have to add {breaking: true, release: 'major'}
at the top of your custom rules.
from commit-analyzer.
If you're using Angular preset don't forget to add a Colon : after the keyword BREAKING CHANGE to trigger major release:
BREAKING CHANGE: foo
from commit-analyzer.
Hello @pvdlg ! Thank you very much for the swift reply! It is as always very much appreciated!
Fixed in blackflux/robo-config-plugin#478
Cheers, L~
from commit-analyzer.
I do have the same problem, patch and minor version are triggered correctly but major version is never updated when adding "BREAKING CHANGE" to commit message
from commit-analyzer.
@AlexisMasseron Unlikely that you're have the same issue unless you're using a custom config. I suspect that you're not using the correct syntax instead. Take a look at the docs and check out my previous commit messages that correctly triggered a breaking change.
from commit-analyzer.
@pvdlg Hi 👋 I think that's very unintuitive behavior. What about in detail describe this case in the readme? Actually, README.md at master for now contains releaseRules
without breaking: true
but says that emit major release when BREAKING CHANGE
exists in the commit message.
from commit-analyzer.
I also can't get this to work. I'm not using a custom config and none of the following commit messages cause a major version bump.
BREAKING CHANGE: foo
breaking: foo
feat: this is a BREAKING CHANGE
feat: this is a breaking change
from commit-analyzer.
@abohannon if you are not using a custom config, your issue is different from what was being asked in this closed issue. in the future, please open a new issue instead.
are you trying to create your commits with only a subject? be sure to instead include the BREAKING CHANGE:
in the body of your commit since any type of commit could potentially be breaking for consumers, and is therefore independent of the commit type
from commit-analyzer.
Related Issues (20)
- Release type should not be case sensitive HOT 2
- The type field in the release rules doesn't seem to work if there is a space HOT 4
- "Fix: " prefix dominates over "feat: " one if latter used as a second line in commit message HOT 7
- How to pin the commit-analyzer version HOT 5
- Step analyzeCommits suddenly exits 0 without analyzing commits HOT 20
- This plugin just silently quits HOT 4
- promisify crashing node HOT 6
- Providing a PR description breaks custom releaseRules HOT 1
- deps changes do not trigger release HOT 7
- Use @commitlint/config-conventional with the new preset format HOT 3
- [Feature Request] Add feature to pass an already imported conventional_changelog_**** HOT 1
- Cannot find module 'conventional-changelog-*' HOT 8
- Use the standard `conventional-changelog-preset-loader` to load presets HOT 1
- Question: after merging from a prerelease branch into a release branch
- Feature request HOT 1
- Prevent semantic release from being triggered by certain default prefixes HOT 4
- Revert commit is not triggering a new release HOT 4
- Allow custom function in `releaseRules`
- Uppercase scope not triggering a release (anymore) HOT 2
- `The commit should not trigger a release` after recent updates HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from commit-analyzer.