Skip to content
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

Cannot understand how release verison is calculated #1084

Open
paolomainardi opened this issue Mar 4, 2024 · 2 comments
Open

Cannot understand how release verison is calculated #1084

paolomainardi opened this issue Mar 4, 2024 · 2 comments

Comments

@paolomainardi
Copy link

Hi everyone, just having some confusion about how release-it is calculating the next version number.

This is the release-it.json file:

{
  "git": {
    "commitMessage": "chore: release v${version}",
    "changelog": "npx auto-changelog --stdout --commit-limit false --unreleased --template https://raw.githubusercontent.com/release-it/release-it/main/templates/changelog-compact.hbs",
    "requireCleanWorkingDir": false
  },
  "npm": false,
  "gitlab": {
    "release": true
  },
  "hooks": {
    "before:init": "git fetch --prune --prune-tags origin",
    "after:bump": "npx auto-changelog -p app/package.json --output CHANGELOG.md --template keepachangelog"
  }
}

I have a package.json file located under app/package.json:

{
  "name": "ts-cli",
  "description": "Test cli",
  "version": "0.7.3",
  ....

The latest git tags:

0.4.3
0.4.4
0.4.5
0.5.0
0.6.0
0.6.1
0.6.2
0.7.0
0.7.1
0.7.2
0.7.3
0.7.3-dev.0
0.7.3-dev.1
0.7.3-dev.2
0.7.3-dev.3
0.7.3-dev.4

As you can see there are many dev releases done before the 0.7.3, now I want to release a 0.7.4 but when I run release-it it happens this:

❯ npx release-it --dry-run --release-version
! git fetch --prune --prune-tags origin
$ git rev-parse --abbrev-ref HEAD
$ git config --get branch.develop.remote
$ git remote get-url origin
! git fetch
$ git rev-parse --abbrev-ref HEAD  [cached]
$ git describe --tags --match=* --abbrev=0
$ git symbolic-ref HEAD
$ git for-each-ref --format="%(upstream:short)" refs/heads/develop
$ git rev-parse --abbrev-ref HEAD  [cached]
$ git config --get branch.develop.remote  [cached]
$ git remote get-url origin  [cached]
! git fetch
$ git rev-parse --abbrev-ref HEAD  [cached]
$ git describe --tags --match=* --abbrev=0  [cached]
$ npx auto-changelog --stdout --commit-limit false --unreleased --template https://raw.githubusercontent.com/release-it/release-it/main/templates/changelog-compact.hbs
0.7.3

He still wants to release the 0.7.3 version.

Even the preRelease seems to be confused:

❯ npx release-it --preRelease dev --dry-run --release-version
! git fetch --prune --prune-tags origin
$ git rev-parse --abbrev-ref HEAD
$ git config --get branch.develop.remote
$ git remote get-url origin
! git fetch
$ git rev-parse --abbrev-ref HEAD  [cached]
$ git describe --tags --match=* --abbrev=0
$ git symbolic-ref HEAD
$ git for-each-ref --format="%(upstream:short)" refs/heads/develop
$ git rev-parse --abbrev-ref HEAD  [cached]
$ git config --get branch.develop.remote  [cached]
$ git remote get-url origin  [cached]
! git fetch
$ git rev-parse --abbrev-ref HEAD  [cached]
$ git describe --tags --match=* --abbrev=0  [cached]
$ npx auto-changelog --stdout --commit-limit false --unreleased --template https://raw.githubusercontent.com/release-it/release-it/main/templates/changelog-compact.hbs
0.7.3-dev.5

What am I doing wrong here ?

@juancarlosjr97
Copy link
Contributor

I think if I understood correctly, if you want to handle releases such with dev or beta as preRelease you need to set the git.tagExclude to handle them. You can read more here https://github.com/release-it/release-it/blob/main/docs/pre-releases.md

@webpro
Copy link
Collaborator

webpro commented Apr 5, 2024

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

No branches or pull requests

3 participants