Skip to content

Releases: kevin-lee/just-semver

v1.1.0

13 Oct 07:00
849940f
Compare
Choose a tag to compare

1.1.0 - 2024-10-13

New Feature

  • Support Scala Native (#239)

v1.0.0

26 Aug 00:23
5dc3adc
Compare
Choose a tag to compare

1.0.0 - 2024-08-26

New Feature

  • Add just-semver-decver module (#221)

  • [just-semver-decver] Add DecVerExt which is DecVer with pre-release and build metadata (#223)

  • Add DecVerExtMatcher, the matcher for DecVerExt (#225)

    DecVerExtMatchers.unsafeParse("1.0 - 2.0").matches(DecVerExt.unsafeParse("1.0")) // true
    DecVerExtMatchers.unsafeParse("1.0 - 2.0").matches(DecVerExt.unsafeParse("0.9")) // false
    DecVerExtMatchers.unsafeParse("1.0 - 2.0").matches(DecVerExt.unsafeParse("2.0")) // true
    DecVerExtMatchers.unsafeParse("1.0 - 2.0").matches(DecVerExt.unsafeParse("2.1")) // false
    
    // and more...

  • Replace DecVer with DecVerExt, and rename DecVerExt to DecVer (#230)

  • Unable to parse version "25.1-jre-graal-sub-1" (#216)

    SemVer.parse("25.1-jre-graal-sub-1")

    Results in

    InvalidVersionStringError(25.1-jre-graal-sub-1)
    

    This can be handled by DecVer now.

    import just.decver.*
    
    DecVer.parse("25.1-jre-graal-sub-1")
    // Either[DecVer.ParseError, DecVer] = Right(DecVer(Major(25),Minor(1),Some(PreRelease(List(Dsv(List(Alphabet(jre), Hyphen, Alphabet(graal), Hyphen, Alphabet(sub), Hyphen, Num(1)))))),None))
    
    val version = DecVer.unsafeParse("25.1-jre-graal-sub-1")
    // DecVer = DecVer(Major(25),Minor(1),Some(PreRelease(List(Dsv(List(Alphabet(jre), Hyphen, Alphabet(graal), Hyphen, Alphabet(sub), Hyphen, Num(1)))))),None)
    
    version.render
    // String = 25.1-jre-graal-sub-1

v0.13.0

12 Oct 10:52
5757765
Compare
Choose a tag to compare

0.13.0 - 2023-10-12

New Feature

  • Support Scala Native (#208)

v0.12.0

01 Oct 09:23
Compare
Choose a tag to compare

0.12.0 - 2023-10-01

Internal Housekeeping

  • Bump Scala 3 to 3.3.1 (LTS) (#202)

v0.11.0

01 Oct 06:30
Compare
Choose a tag to compare

0.11.0 - 2023-10-01

Internal Housekeeping

  • Bump bump Scala 3 to 3.3.0 (LTS) to solve #186 (#198)
    • Bump Scala version to 3.3.0+ to avoid lazy val not working properly under GraalVM Native Image (#186)

v0.10.0

01 Oct 04:45
Compare
Choose a tag to compare

0.10.0 - 2023-10-01

Internal Housekeeping

  • Bump Scala (#191)

    Bump Scala to

    • 2.12.18
    • 2.13.12
    • 3.2.2

v0.9.0

01 Oct 03:44
Compare
Choose a tag to compare

0.9.0 - 2023-10-01

NOTE: This release is exactly the same as 0.7.0 and 0.8.0.

0.9.0 was released because 0.7.0 and 0.8.0 were not released properly.

Internal Housekeeping

  • Bump sbt and Scala, and drop Scala 2.11 (#187)
    • Bump sbt to 1.9.6
    • Bump Scala to
      • 2.12.17
      • 2.13.11
      • 3.1.3
    • Drop Scala 2.11 support

v0.6.0

10 Oct 09:32
9bd54b3
Compare
Choose a tag to compare

0.6.0 - 2022-10-10

New Support

  • Support Scala.js (#160)

Internal Housekeeping

v0.5.0

11 Jun 07:10
b270a07
Compare
Choose a tag to compare

0.5.0 - 2022-06-11

Done

  • Add decimal version DecVer (major.minor) (#140)
    import just.decver.DecVer
    
    val decVer1 = DecVer.parse("1.17")
    // Either[DecVer.ParseError, DecVer] = Right(DecVer(1,17))
    
    decVer1.map(_.render)
    // Either[DecVer.ParseError, String] = Right(1.17)
    
    val decVer2 = DecVer.unsafeParse("1.17")
    // DecVer = DecVer(1,17)
    
    decVer2.render
    // String = 1.17
    
    val semVer = decVer2.toSemVer
    // just.semver.SemVer = SemVer(1,17,0,None,None)
    
    semVer.toDecVer
    // just.decver.DecVer = DecVer(1,17)
    
    DecVer.unsafeParse("1.16") < DecVer.unsafeParse("1.17")
    // Boolean = true
    
    DecVer.unsafeParse("1.16") == DecVer.unsafeParse("1.17")
    // Boolean = false
    
    DecVer.unsafeParse("1.16") > DecVer.unsafeParse("1.17")
    // Boolean = false
    
    val decVer = DecVer.unsafeParse("1.0")
    // DecVer = DecVer(1,0)
    
    decVer.increaseMinor
    // DecVer = DecVer(1,1)
    
    decVer.increaseMajor
    // DecVer = DecVer(2,0)
  • Set up WartRemover for Scala 3 (#138)

v0.4.0

10 Apr 16:51
611481e
Compare
Choose a tag to compare

0.4.0 - 2022-04-11

Done

  • Rename SemVer.parseUnsafe to SemVer.unsafeParse to keep the consistency with other unsafe methods (#131)
  • Replace Major, Minor and Patch value classes with opaque type in Scala 3 (#129)
  • Add SemVerMatchers, SemVer.matches() and SemVer.unsafeMatches() (#125)
  • Remove can-equal (#102)
  • Use Scala 3 syntax (#91)

  • Publish to s01.oss.sonatype.org (the new Maven central) (#115)
  • Stop uploading artifacts to GitHub Release (#113)
  • Set up Codecov in GitHub Actions (#111)
  • Upgrade sbt-devoops from 2.6.0 to 2.14.0 (#103) 2.14.0 => 2.15.0 (#121) 2.15.0 => 2.16.0 (#126)