Skip to content

semver v2.1.0

Compare
Choose a tag to compare
@WalkerCodeRanger WalkerCodeRanger released this 19 Mar 21:51
· 389 commits to master since this release

A minor release to improve parsing, construction, and modification.

  • Greatly improved doc comments
  • New Parse() and TryParse() overloads taking SemVersionStyles
    • SemVersionStyles provide greater flexibility in what formats to accept (feature #38)
    • Improved performance and more detailed exception messages (feature #62)
    • New methods enforce rule about leading zeros in prerelease identifiers (bug #16)
    • Old Parse() and TryParse() overloads marked obsolete
  • New With(), WithParsedFrom(), WithX(), WithoutX() methods to replace Change() method (feature #65)
    • New methods fully validate parameters to prevent invalid versions
    • New method names clearly indicate that the method does not mutate the existing SemVersion
    • Old Change() method marked obsolete
  • Added PrereleaseIdentifiers property providing access to individual identifiers (feature #37)
  • Added MetadataIdentifiers property providing access to individual identifiers (feature #37)
  • New Metadata property for consistent terminology use matching the semver spec
    • Marked Build property obsolete
  • Added IsPrerelease and IsRelease properties (feature #44)
  • New constructor overloads and SemVersion.ParsedFrom() method (bugs #40, #41)
    • New overloads accept prerelease portion and metadata as individual identifiers
    • New overloads validate all parameters to prevent invalid semantic versions
    • Marked old constructor overload obsolete
  • SemVersion now implements IEquatable<SemVersion> (feature #34)
  • New SemVersion.FromVersion() and ToVersion() methods for conversion from and to System.Version (bug #32)
    • Corrects the mapping between version parts
    • Marked old constructor obsolete
  • Added .NET Standard 2.0 assembly version to avoid warnings about .NET Standard 1.0 (feature #30)
  • Assembly version fixed at 2.1.0.0 until v3.0 (bug #61)
  • Marked implicit conversion from string obsolete (feature #46)
  • Improved hash code calculation