cats v2.13.0 Release Notes

Release Date: 2025-01-20 // over 1 year ago
  • 🚀 Cats v2.13.0 is a binary-compatible release in the 2.x series. It is published for Scala 2.12, 2.13, and 3.3 with Scala.js 1.17 and Scala Native 0.5.

    What's Changed

    The release comes with new APIs, as well as bugfixes and optimizations. While it is binary- and source- compatible, it is recommended for downstream projects to start replacing calls to sequence_ and traverse_ functions (along with their unordered* and par* counterparts) with sequenceVoid, traverseVoid, etc., correspondingly.

    🔋 Features

    • ➕ Add FunctionN.liftN, parLiftN by @kubukoz in #4340
    • ➕ Add distinctBy to NonEmptyCollection and all impls by @cybersaurus in #4608
    • ➕ Add Hash and Order Instances for NonEmptyVector by @isomarcte in #4612
    • Semigroup object additions by @igstan in #4625
    • Issue #4631: Make Later covariant by @yanns in #4632
    • ➕ Add EitherOps#leftMapOrKeep and EitherOps#leftFlatMapOrKeep by @danicheg in #4638
    • ➕ Add Defer.recursiveFn to aid in recursion by @johnynek in #4656
    • ➕ Add unorderedFoldMapA method by @m50d in #4662
    • 🗄 alleycats - Extract[F[_]] the only way to get the syntax is the deprecated one by @aluscent in #4670
    • 👉 Use alignWith in alignMergeWith by @joroKr21 in #4676
    • Aliases traverseVoid/sequenceVoid and their counterparts by @satorg in #4682
    • ➕ Add take/takeRight/drop/dropRight to Chain by @johnynek in #4694

    🛠 Bugfixes

    Optimizations

    📚 Documentation

    Behind-the-scenes

    ⚡️ Updates

    • ⚡️ Update GraalVM from 17 to 21 by @mzuehlke in #4667
    • ⚡️ Update auxlib, clib, javalib, nativelib, ... to 0.5.2 by @typelevel-steward in #4607
    • ⚡️ Update auxlib, clib, javalib, nativelib, ... to 0.5.3 by @typelevel-steward in #4609
    • ⚡️ Update auxlib, clib, javalib, nativelib, ... to 0.5.4 by @typelevel-steward in #4627
    • ⚡️ Update auxlib, clib, javalib, nativelib, ... to 0.5.5 by @typelevel-steward in #4646
    • ⚡️ Update auxlib, clib, javalib, nativelib, ... to 0.5.6 by @typelevel-steward in #4675
    • ⚡️ Update munit to 1.0.1 by @typelevel-steward in #4643
    • ⚡️ Update munit to 1.0.2 by @typelevel-steward in #4653
    • ⚡️ Update munit to 1.0.3 by @typelevel-steward in #4684
    • ⚡️ Update munit to 1.0.4 by @typelevel-steward in #4697
    • ⚡️ Update sbt to 1.10.1 by @typelevel-steward in #4633
    • ⚡️ Update sbt to 1.10.2 by @typelevel-steward in #4655
    • ⚡️ Update sbt to 1.10.3 by @typelevel-steward in #4666
    • ⚡️ Update sbt to 1.10.4 by @typelevel-steward in #4669
    • ⚡️ Update sbt to 1.10.5 by @typelevel-steward in #4672
    • ⚡️ Update sbt, scripted-plugin to 1.10.6 by @typelevel-steward in #4683
    • ⚡️ Update sbt, scripted-plugin to 1.10.7 by @typelevel-steward in #4691
    • ⚡️ Update sbt-buildinfo to 0.13.0 by @typelevel-steward in #4671
    • ⚡️ Update sbt-buildinfo to 0.13.1 by @typelevel-steward in #4674
    • ⚡️ Update sbt-doctest to 0.11.0 by @typelevel-steward in #4668
    • ⚡️ Update sbt-doctest to 0.11.1 by @typelevel-steward in #4688
    • ⚡️ Update sbt-scalajs, scalajs-compiler, ... to 1.17.0 by @typelevel-steward in #4685
    • ⚡️ Update sbt-typelevel, sbt-typelevel-site to 0.7.2 by @typelevel-steward in #4636
    • ⚡️ Update sbt-typelevel, sbt-typelevel-site to 0.7.3 by @typelevel-steward in #4651
    • ⚡️ Update sbt-typelevel, sbt-typelevel-site to 0.7.4 by @typelevel-steward in #4665
    • ⚡️ Update sbt-typelevel, sbt-typelevel-site to 0.7.5 by @typelevel-steward in #4692
    • ⚡️ Update sbt-typelevel, sbt-typelevel-site to 0.7.6 by @typelevel-steward in #4701
    • ⚡️ Update scala-library, scala-reflect to 2.12.20 by @typelevel-steward in #4649
    • ⚡️ Update scala-library, scala-reflect to 2.13.15 by @typelevel-steward in #4657
    • ⚡️ Update scala-library, scala-reflect to 2.13.16 by @typelevel-steward in #4699
    • ⚡️ Update scala3-library, ... to 3.3.4 by @typelevel-steward in #4658
    • ⚡️ Update scalacheck to 1.18.1 by @typelevel-steward in #4654
    • ⚡️ Update scalafmt-core to 3.8.2 by @typelevel-steward in #4620
    • ⚡️ Update scalafmt-core to 3.8.4 by @typelevel-steward in #4698
    • ⚡️ Update scalafmt-core to 3.8.5 by @typelevel-steward in #4700

    🆕 New Contributors

    Full Changelog : v2.12.0...v2.13.0


Previous changes from v2.12.0

  • 🚀 Cats v2.12.0 is a binary-compatible release in the 2.x series. It is published for Scala 2.12, 2.13, and 3.3+ with Scala.js 1.13+ and Scala Native 0.5.

    What's Changed

    🔋 Features

    Behind-the-Scenes

    ⚡️ Updates

    • ⚡️ Update nscplugin, sbt-scala-native to 0.5.1 by @typelevel-steward in #4585
    • ⚡️ Update discipline-munit to 2.0.0 by @typelevel-steward in #4605

    🆕 New Contributors

    Full Changelog : v2.11.0...v2.12.0