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

Bump GitVersion.MsBuild from 5.12.0 to 6.0.0 #165

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jul 23, 2024

Bumps GitVersion.MsBuild from 5.12.0 to 6.0.0.

Release notes

Sourced from GitVersion.MsBuild's releases.

6.0.0

As part of this release we had 1594 commits.

The changes that were introduced can be found within each of the pre-releases:

6.0.0-alpha.1 6.0.0-beta.1 6.0.0-beta.2 6.0.0-beta.3 6.0.0-beta.4 6.0.0-beta.5 6.0.0-beta.6 6.0.0-beta.7 6.0.0-rc.1 6.0.0-rc.2

For additional information check the BREAKING_CHANGES.md

Breaking changes

Bugs

... (truncated)

Changelog

Sourced from GitVersion.MsBuild's changelog.

v6.0.0

Platforms

  • Drop support for .NET Framework 4.8, .NET Core 3.1 and .NET 5.0. Changed the project targets to .NET 6.0 or later.

Caching

  • Refactor caching system in GitVersion to use json files instead of yaml files. This change is not backwards compatible with the old caching system.

Configuration changes:

  • The configuration properties continuous-delivery-fallback-tag, tag-number-pattern, and tag were renamed to continuous-delivery-fallback-label, label-number-pattern, and label respectively. tag-pre-release-weight and tag-prefix remained as they were as they are referring to a Git tag.

  • When using a commit message that matches both *-version-bump-message and no-bump-message, there is no increment for that commit. In other words, no-bump-message now takes precedence over *-version-bump-message.

  • The fallback version strategy now returns 0.0.0 and is flagged with ShouldIncrement equal to true. This yields the version 0.1.0 on the develop branch (IncrementStrategy.Minor by default) and 0.0.1 on the main branch (IncremetnStrategy.Patch by default).

  • The current branch (child) inherits its configuration from the source (parent) branch if the increment strategy is set to Inherit. This makes branch configuration recursive, simpler, more intuitive, more flexible, and more robust.

  • Instead of having a single effective configuration, we now have one effective configuration per branch where the increment strategy is not set to inherit.

  • The new implementation of the branch configuration inheritance affects per default only the pull-requests, hotfix and feature branches. In this case the next version will be generated like the child branch is not existing and the commits have been made on the source branch.

    • The following example illustrates this behavior. On the feature branch the semantic version 1.1.0-just-a-test.1+2 will now be generated instead of version 1.0.0-just-a-test.1+3 previously:

      * 1f1cfb4 52 minutes ago  (HEAD -> feature/just-a-test)
      * 1f9654d 54 minutes ago  (release/1.1.0)
      * be72411 56 minutes ago  (develop)
      * 14800ff 58 minutes ago  (tag: 1.0.0, main)
      
  • A new unknown branch magic string has been introduced to give the user the possibility to specify the branch configuration for a branch which is not known. A branch is not known if only the regular expression of the branch configuration with the name unknown is matching. Please notice that this branch configuration behaves like any other branch configurations.

  • Additional fallback branch configuration properties have been introduced at the root to define base properties which will be inherit to the branch configurations. That means if no other branch configuration in the inheritance line defines the given property the fallback property applies. Notice that the inheritance tree can be controlled using the increment strategy property in the branch configuration section.

    • The following example illustrates this behavior. The hotfix branch configuration overrides the main branch configuration and the result overrides the fallback branch configuration.

      * 1f1cfb4 52 minutes ago  (HEAD -> hotfix/just-a-test)
      * 14800ff 58 minutes ago  (tag: 1.0.0, main)
      
  • When overriding the configuration with e.g. GitVersion.yaml the software distinguishes between properties who are not existent and properties who are null. This is especially important if the user wants to define branch related configuration which are marked with increment strategy Inherit.

  • Following root configuration properties have been removed:

    • continuous-delivery-fallback-tag
  • A new branch related property with name track-merge-message has been introduced. Consider we have a main branch and a release/1.0.0 branch and merge changes from release/1.0.0 to the main branch. In this scenario the merge message will be interpreted as a next version 1.0.0 when track-merge-message is set to true otherwise 0.0.1.

  • The pre-release tags are only considered when they are matching with the label name of the branch. This has an effect on the way how the CommitCountSource will be determined.

  • The process of increasing the version with bump message when CommitMessageIncrementing is enabled and increment strategy is None has been changed.

  • A new configuration property with name version-in-branch-pattern has been introduced. This setting only applies on branches where the option is-release-branch is set to true. Please notice that the branch name needs to be defined after the version number by default (instead of support/lts-2.0.0 please name the branch like support/2.0.0-lts).

  • The is-release-branch property of the hotfix branch setting has been changed from false to true. If present the hotfix number will be considered now by default.

  • In the GitHub and the Git Flow workflows the label property is by default set to an empty string on the main branch. This yields to a pre-release version on main with an empty tag. Instead of for instance 1.0.1+46 GitVersion generates the full semantic version 1.0.1-46 instead. This behavior can be changed to generate only stable versions (no pre-release version) with setting the label to null (Please keep in mind that the label property on root needs to be set to null as well, otherwise the fallback applies). This change is caused by issue #2347.

  • The useBranchName magic string has been removed. Instead use {BranchName} for label.

  • The BranchPrefixToTrim configuration property has been removed. RegularExpression is now used to capture named groups instead.

    • Default RegularExpression for feature branches is changed from ^features?[/-] to ^features?[/-](https://github.com/GitTools/GitVersion/blob/main/?<BranchName>.+) to support using {BranchName} out-of-the-box
    • Default RegularExpression for unknown branches is changed from .* to (?<BranchName>.+) to support using {BranchName} out-of-the-box
  • The Mainline mode and the related implementation has been removed completely. The new Mainline version strategy should be used instead.

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [GitVersion.MsBuild](https://github.com/GitTools/GitVersion) from 5.12.0 to 6.0.0.
- [Release notes](https://github.com/GitTools/GitVersion/releases)
- [Changelog](https://github.com/GitTools/GitVersion/blob/main/BREAKING_CHANGES.md)
- [Commits](GitTools/GitVersion@5.12.0...6.0.0)

---
updated-dependencies:
- dependency-name: GitVersion.MsBuild
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added .NET Pull requests that update .net code dependencies Pull requests that update a dependency file labels Jul 23, 2024
Copy link
Contributor Author

dependabot bot commented on behalf of github Aug 6, 2024

Superseded by #166.

@dependabot dependabot bot closed this Aug 6, 2024
@dependabot dependabot bot deleted the dependabot/nuget/GitVersion.MsBuild-6.0.0 branch August 6, 2024 03:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file .NET Pull requests that update .net code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

0 participants