·
14 commits
to master
since this release
A major release to support arbitrary-sized version numbers, prevent invalid version numbers, remove obsolete functionality, and strong name the assembly.
Breaking Changes:
SemVersion.ParseandSemVersion.TryParsenow default to strict parsing. UseSemVersionStylesto control parsingSemVersion.Major,SemVersion.Minor,SemVersion.Patch, andPrereleaseIdentifier.NumericValueproperties are nowBigInteger(#73)- Removed obsolete methods (#70, #47), including:
- Implicit conversion from
string(#47). UseSemVersion.Parseinstead SemVersion(int major, int minor = 0, int patch = 0, string prerelease = "", string build = "")constructor. Use another constructor orSemVersion.ParsedFrominsteadSemVersion.ParseandSemVersion.TryParseoverloads with thestrictparameter. They now default to strict. UseSemVersionStylesto control parsing- Comparison with
SemVersion.CompareTo,SemVersion.Compare,SemVersion.CompareByPrecedence,<,<=,>,>=, orSemVersion.PrecedenceMatches. UseSemVersion.ComparePrecedenceTo,SemVersion.CompareSortOrderTo,SemVersion.ComparePrecedence, orSemVersion.CompareSortOrderinstead. SemVersion.Build. UseSemVersion.MetadatainsteadSemVersion.Change. UseSemVersion.WithorSemVersion.WithXmethods insteadSemVersion(Version)constructor. UseSemVersion.FromVersioninstead
- Implicit conversion from
SemVersionno longer implementsIComparable<SemVersion>orIComparable. UseSemVersion.PrecedenceComparerorSemVersion.SortOrderComparerinstead- Added strong name to assembly (#23)
- Dropped support for frameworks older than .NET Standard 2.0 (i.e., .NET Framework < 4.6.2 & .NET Core < 2.0) (#68)
- Construction of versions with negative major, minor, or patch is no longer allowed (#40)
- Negative
maxLengthparameter values now throwArgumentOutOfRangeException(#72)
Other Changes:
- Arbitrary-sized version numbers are now supported, including in prerelease identifiers (#73)