pmowrer / semantic-release-monorepo

Apply semantic-release's automatic publishing to a monorepo.
MIT License
503 stars 78 forks source link

analyzeCommits not detecting major releases (Breaking Change/refactor). #157

Open pof-jhansilva opened 2 weeks ago

pof-jhansilva commented 2 weeks ago

analyzeCommits might not be analyzing the commits properly if I read this output correctly?

I'm trying to use semantic-release-monorepo in conjunction to semantic-release and I get the following when trying to release a BREAKING CHANGE (major). feat/fix work just fine...

[8:32:00 PM] [semantic-release] › ℹ  Found 2 commits since last release
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Start step "analyzeCommits" of plugin "@semantic-release/commit-analyzer"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Found 2 commits for package module_name since last release
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Analyzing commit: BREAKING CHANGE: something that breaks the change.
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  The commit should not trigger a release
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Analyzing commit: BREAKING CHANGE: Exercise
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  The commit should not trigger a release
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Analysis of 2 commits complete: no release
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Completed step "analyzeCommits" of plugin "@semantic-release/commit-analyzer"
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Plugin "@semantic-release/release-notes-generator" does not provide step "analyzeCommits"
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Plugin "@semantic-release/npm" does not provide step "analyzeCommits"
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  Plugin "@semantic-release/github" does not provide step "analyzeCommits"
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  No more plugins
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  No more plugins
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  No more plugins
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  No more plugins
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  No more plugins
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  Start step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] [[Function: semantic-release-monorepo]] › ℹ  No more plugins
[8:32:00 PM] [semantic-release] › ✔  Completed step "analyzeCommits" of plugin "[Function: semantic-release-monorepo]"
[8:32:00 PM] [semantic-release] › ℹ  There are no relevant changes, so no new version is released.

This works just fine when I release something like feat: feature or fix: patch.

This is how my package.json looks like:

{
    "name": "module_name",
    "private": true,
    "version": "1.0.0",
    "description": "Module description",
    "repository": {
      "type": "git",
      "url": "git+https://repo.com"
    },
    "dependencies": {
      "semantic-release": "^21.1.2"
    },
    "release": {
      "branches": [
        "main"
      ],
      "tagFormat": "module_name_v${version}",
      "extends": "semantic-release-monorepo"
    },
    "plugins": [
      "@semantic-release/commit-analyzer",
      "@semantic-release/release-notes-generator",
      "@semantic-release/github",
      "@semantic-release/npm", {
        "npmPublish": false
      }
    ],
    "author": "@someone",
    ....
  }

Thank you.

pof-jhansilva commented 2 weeks ago

(This is using semantic-release v24.0.0) and (semantic-release-monorepo latest).