From 89f19bc12178d24e96531cef2871a1603ba515fa Mon Sep 17 00:00:00 2001 From: Matthias Glauch Date: Thu, 20 May 2021 12:03:01 +0200 Subject: [PATCH] (GH-2679) Support release branch naming with MAJOR SemVer number only --- .../VersionCalculation/SemanticVersionTests.cs | 2 ++ .../VersionCalculation/SemanticVersioning/SemanticVersion.cs | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/GitVersion.Core.Tests/VersionCalculation/SemanticVersionTests.cs b/src/GitVersion.Core.Tests/VersionCalculation/SemanticVersionTests.cs index cba8885aab..1637227ffd 100644 --- a/src/GitVersion.Core.Tests/VersionCalculation/SemanticVersionTests.cs +++ b/src/GitVersion.Core.Tests/VersionCalculation/SemanticVersionTests.cs @@ -34,6 +34,8 @@ public class SemanticVersionTests : TestBase [TestCase("v1.2.3", 1, 2, 3, null, null, null, null, null, null, "1.2.3", Config.DefaultTagPrefix)] [TestCase("V1.2.3", 1, 2, 3, null, null, null, null, null, null, "1.2.3", Config.DefaultTagPrefix)] [TestCase("version-1.2.3", 1, 2, 3, null, null, null, null, null, null, "1.2.3", "version-")] + [TestCase("1", 1, 0, 0, null, null, null, null, null, null, "1.0.0", null)] + [TestCase("1.1", 1, 1, 0, null, null, null, null, null, null, "1.1.0", null)] public void ValidateVersionParsing( string versionString, int major, int minor, int patch, string tag, int? tagNumber, int? numberOfBuilds, string branchName, string sha, string otherMetaData, string fullFormattedVersionString, string tagPrefixRegex) diff --git a/src/GitVersion.Core/VersionCalculation/SemanticVersioning/SemanticVersion.cs b/src/GitVersion.Core/VersionCalculation/SemanticVersioning/SemanticVersion.cs index 65494749ed..3975a634f8 100644 --- a/src/GitVersion.Core/VersionCalculation/SemanticVersioning/SemanticVersion.cs +++ b/src/GitVersion.Core/VersionCalculation/SemanticVersioning/SemanticVersion.cs @@ -8,7 +8,7 @@ public class SemanticVersion : IFormattable, IComparable private static SemanticVersion Empty = new SemanticVersion(); private static readonly Regex ParseSemVer = new Regex( - @"^(?(?\d+)(\.(?\d+))(\.(?\d+))?)(\.(?\d+))?(-(?[^\+]*))?(\+(?.*))?$", + @"^(?(?\d+)?(\.(?\d+))?(\.(?\d+))?)(\.(?\d+))?(-(?[^\+]*))?(\+(?.*))?$", RegexOptions.Compiled); public int Major;