Skip to content

feat(output): rename pre-release output variables - #5102

Merged
mergify[bot] merged 2 commits into
GitTools:mainfrom
arturcic:feature/4603-rename-pre-release-variables
Aug 1, 2026
Merged

feat(output): rename pre-release output variables#5102
mergify[bot] merged 2 commits into
GitTools:mainfrom
arturcic:feature/4603-rename-pre-release-variables

Conversation

@arturcic

Copy link
Copy Markdown
Member

Description

  • rename the ambiguous pre-release output variables so PreReleaseLabel represents the full label and PreReleaseLabelName represents only its name
  • carry the breaking contract through CLI output, format variables, build agents, MSBuild, generated source/WiX output, public APIs, build tooling, and the v7 schemas
  • add focused coverage for named, numeric-only, and stable pre-release values, including serialization and MSBuild outputs
  • document the v6-to-v7 migration and update affected examples

Related Issue

Closes #4603

Motivation and Context

The existing output contract still used the pre-v6 tag terminology and gave PreReleaseLabel the narrower label-name value. This aligns the public variables with SemVer terminology and removes the ambiguity for GitVersion v7.

How Has This Been Tested?

  • dotnet build ./src/GitVersion.slnx --no-restore
  • dotnet format ./src/GitVersion.slnx --verify-no-changes --no-restore
  • GitVersion.Output.Tests: 128 passed
  • GitVersion.App.Tests: 347 passed
  • GitVersion.Configuration.Tests: 99 passed
  • GitVersion.BuildAgents.Tests: 91 passed
  • GitVersion.MsBuild.Tests: affected tests passed; one unrelated Buildalyzer logging race in the full run passed on isolated rerun
  • GitVersion.Core.Tests: 36,127 passed; the single performance-threshold failure passed on isolated rerun
  • CLI JSON and --show-variable smoke tests for all four replacement variables
  • regenerated and validated the v7 output and configuration schemas

Checklist

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@arturcic
arturcic requested a review from asbjornu July 30, 2026 17:35
@arturcic

Copy link
Copy Markdown
Member Author

@asbjornu could you please have a look?

@arturcic
arturcic force-pushed the feature/4603-rename-pre-release-variables branch from 9ab9692 to 73e964b Compare July 30, 2026 20:45
@arturcic arturcic changed the title feat!: rename pre-release output variables feat(output): rename pre-release output variables Jul 31, 2026
@arturcic
arturcic force-pushed the feature/4603-rename-pre-release-variables branch from 73e964b to 35e70ca Compare July 31, 2026 14:48
@sonarqubecloud

Copy link
Copy Markdown

@asbjornu asbjornu left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👏🏼

@mergify

mergify Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Queued — the merge queue status continues in this comment ↓.

@arturcic
arturcic enabled auto-merge August 1, 2026 19:13
@arturcic

arturcic commented Aug 1, 2026

Copy link
Copy Markdown
Member Author

@Mergifyio refresh

@mergify

mergify Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

refresh

✅ Pull request refreshed

@arturcic

arturcic commented Aug 1, 2026

Copy link
Copy Markdown
Member Author

@Mergifyio queue

@mergify

mergify Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • Entered queue2026-08-01 20:49 UTC · Rule: default · triggered by @arturcic with the @mergifyio queue command
  • Checks skipped · PR is already up-to-date
  • Merged2026-08-01 20:49 UTC · at 35e70ca42d1bcae5773a55c79db5a37d2709b504 · merge

This pull request spent 12 seconds in the queue, including 1 second running CI.

Required conditions to merge
  • github-review-approved [🛡 GitHub repository ruleset rule main branch rule]
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/DotNet Format
    • check-neutral = @github-actions/DotNet Format
    • check-skipped = @github-actions/DotNet Format
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Release
    • check-neutral = @github-actions/Release
    • check-skipped = @github-actions/Release
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Build & Test (new-cli)
    • check-neutral = @github-actions/Build & Test (new-cli)
    • check-skipped = @github-actions/Build & Test (new-cli)
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Build & Package / macos-26
    • check-neutral = @github-actions/Build & Package / macos-26
    • check-skipped = @github-actions/Build & Package / macos-26
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Build & Package / ubuntu-24.04
    • check-neutral = @github-actions/Build & Package / ubuntu-24.04
    • check-skipped = @github-actions/Build & Package / ubuntu-24.04
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Build & Package / windows-2025-vs2026
    • check-neutral = @github-actions/Build & Package / windows-2025-vs2026
    • check-skipped = @github-actions/Build & Package / windows-2025-vs2026
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Test / macos-26 - net10.0
    • check-neutral = @github-actions/Test / macos-26 - net10.0
    • check-skipped = @github-actions/Test / macos-26 - net10.0
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Test / ubuntu-24.04 - net10.0
    • check-neutral = @github-actions/Test / ubuntu-24.04 - net10.0
    • check-skipped = @github-actions/Test / ubuntu-24.04 - net10.0
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @github-actions/Test / windows-2025-vs2026 - net10.0
    • check-neutral = @github-actions/Test / windows-2025-vs2026 - net10.0
    • check-skipped = @github-actions/Test / windows-2025-vs2026 - net10.0
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-neutral = Mergify Merge Protections
    • check-skipped = Mergify Merge Protections
    • check-success = Mergify Merge Protections
  • any of [🛡 GitHub repository ruleset rule main branch rule]:
    • check-success = @sonarqubecloud/SonarCloud Code Analysis
    • check-neutral = @sonarqubecloud/SonarCloud Code Analysis
    • check-skipped = @sonarqubecloud/SonarCloud Code Analysis

@mergify mergify Bot added the queued label Aug 1, 2026
@mergify
mergify Bot merged commit 761bdb7 into GitTools:main Aug 1, 2026
59 checks passed
@mergify mergify Bot removed the queued label Aug 1, 2026
@mergify

mergify Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Thank you @arturcic for your contribution!

@arturcic
arturcic deleted the feature/4603-rename-pre-release-variables branch August 1, 2026 20:50
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

Successfully merging this pull request may close these issues.

Rename PreReleaseTag and PreReleaseLabel

2 participants