Unclaimed project
Are you a maintainer of cats? Claim this project to take control of your public changelog and roadmap.
Claim this projectChangelog
cats
Lightweight, modular, and extensible library for functional programming.
Back to changelogNew
v2.9.0
Cats v2.9.0 is a binary-compatible release in the 2.x series. It is published for Scala 2.12, 2.13, and 3.2+ with Scala.js 1.8+ and Scala Native 0.4.
What's Changed
Features
- Added
updated to Traverse by @nikololiahim in https://github.com/typelevel/cats/pull/4248
- Added
zipWithLongIndex, mapWithLongIndex and traverseWithLongIndexM by @nikololiahim in https://github.com/typelevel/cats/pull/4247
- Add
collectFirst to the NonEmptyCollection interface by @DavidGregory084 in https://github.com/typelevel/cats/pull/4275
- Added discipline tests for the new
Traverse laws by @nikololiahim in https://github.com/typelevel/cats/pull/4283
- Add
traverseCollect to TraverseFilter typeclass by @emilhotkowski in https://github.com/typelevel/cats/pull/4277
- Add
NonEmptyList#prependAll by @saeltz in https://github.com/typelevel/cats/pull/4267
- Add
EitherT#biSemiflatTap which combines leftSemiflatTap and by @exp0nge in https://github.com/typelevel/cats/pull/4293
semiflatTap
Optimize Alternative (part 3): add prependK/appendK specializations for Cats NE wrappers by @satorg in https://github.com/typelevel/cats/pull/4055Added parFlatMapN by @TonioGela in https://github.com/typelevel/cats/pull/4243Added Align instances for Id and Kleisli by @atnoya in https://github.com/typelevel/cats/pull/4287Add ApplicativeError#voidError by @armanbilge in https://github.com/typelevel/cats/pull/4324Optimizations
- Change the ordering of invocations in
Defer#fix by @TimWSpence in https://github.com/typelevel/cats/pull/4252
- Optimise boilerplate generators, use instance constructors by @joroKr21 in https://github.com/typelevel/cats/pull/3871
- Avoid using
NonFatal.unapply by @jhnsmth in https://github.com/typelevel/cats/pull/4282
- Use SAM syntax for typeclass instances where possible by @joroKr21 in https://github.com/typelevel/cats/pull/4279
- Singleton monoid instances by @TimWSpence in https://github.com/typelevel/cats/pull/4314
- Avoid allocations for
Monoid instances where possible by @bplommer in https://github.com/typelevel/cats/pull/4309
- Make string building a bit more efficient for
NonEmptySeq by @danicheg in https://github.com/typelevel/cats/pull/4326
Fixes
- Don't require
Order for the value on Cogen for SortedMap and NonEmptyMap by @cquiroz in https://github.com/typelevel/cats/pull/4296
- Make
cats.compat a package object for for2_13Use3 compatibility by @TonioGela in https://github.com/typelevel/cats/pull/4315
- Fix ambiguous
contains_ syntax by @armanbilge in https://github.com/typelevel/cats/pull/4320
Deprecations
- Deprecate
HashLaws#sameAsUniversalHash by @armanbilge in https://github.com/typelevel/cats/pull/4319
Documentation
- Remove LEGO from adopters list by @hejfelix in https://github.com/typelevel/cats/pull/4242
- Fix Free Monad example by @youta32449999 in https://github.com/typelevel/cats/pull/4253
- Mention
asRight and asLeft for constructing Either values by @benhutchison in https://github.com/typelevel/cats/pull/4257
- Fix comment in Free Monad example by @youta32449999 in https://github.com/typelevel/cats/pull/4259
- Add proof of inconsistency for a
Validated Monad by @TonioGela in https://github.com/typelevel/cats/pull/4255
- Mention
tupled syntax, a Cats workhorse that deserves to be more well known by @benhutchison in https://github.com/typelevel/cats/pull/4269
- Add missing
scala modifier to code block by @armanbilge in https://github.com/typelevel/cats/pull/4274
- Build docs on 2.13 by @armanbilge in https://github.com/typelevel/cats/pull/4238
- Fix list formatting in docs / site by @valencik in https://github.com/typelevel/cats/pull/4290
- Move the adopters' companies list to a separate file/page by @danicheg in https://github.com/typelevel/cats/pull/4291
- Keep the cats version up to date on the website by @danicheg in https://github.com/typelevel/cats/pull/4294
- Include laws in published API docs by @armanbilge in https://github.com/typelevel/cats/pull/4318
- Fix markdown syntax for link to
Applicative in OptionT by @yoshinorin in https://github.com/typelevel/cats/pull/4321
- Add more DocTests for
OptionT by @timo-schmid in https://github.com/typelevel/cats/pull/4311
Behind-the-scenes
- Ignore updates to cats-core by @armanbilge in https://github.com/typelevel/cats/pull/4241
- Bump base version to 2.9 by @armanbilge in https://github.com/typelevel/cats/pull/4239
- Refactored
Chain and CollectiveMonoid benchmarks by @TonioGela in https://github.com/typelevel/cats/pull/4264
- Fix obvious and straightforward warnings by @satorg in https://github.com/typelevel/cats/pull/4323
- Add commits to
.git-blame-ignore-revs by @armanbilge in https://github.com/typelevel/cats/pull/4334
- Add stack-safety test for
ContT#map by @eigenvariable in https://github.com/typelevel/cats/pull/4335
- Add release notes config by @armanbilge in https://github.com/typelevel/cats/pull/4330
Updates
- Update sbt-scalajs, scalajs-compiler, ... to 1.10.1 by @typelevel-steward in https://github.com/typelevel/cats/pull/4254
- Update nscplugin, sbt-scala-native, ... to 0.4.7 by @typelevel-steward in https://github.com/typelevel/cats/pull/4289
- Update scalacheck to 1.17.0 by @typelevel-steward in https://github.com/typelevel/cats/pull/4297
- Update scala3-library, ... to 3.2.1 by @typelevel-steward in https://github.com/typelevel/cats/pull/4337
New Contributors
- @hejfelix made their first contribution in https://github.com/typelevel/cats/pull/4242
- @youta32449999 made their first contribution in https://github.com/typelevel/cats/pull/4253
- @nikololiahim made their first contribution in https://github.com/typelevel/cats/pull/4248
- @TonioGela made their first contribution in https://github.com/typelevel/cats/pull/4255
- @emilhotkowski made their first contribution in https://github.com/typelevel/cats/pull/4277
- @valencik made their first contribution in https://github.com/typelevel/cats/pull/4290
- @exp0nge made their first contribution in https://github.com/typelevel/cats/pull/4293
- @cquiroz made their first contribution in https://github.com/typelevel/cats/pull/4296
- @atnoya made their first contribution in https://github.com/typelevel/cats/pull/4287
- @yoshinorin made their first contribution in https://github.com/typelevel/cats/pull/4321
- @eigenvariable made their first contribution in https://github.com/typelevel/cats/pull/4335
- @timo-schmid made their first contribution in https://github.com/typelevel/cats/pull/4311
Full Changelog: https://github.com/typelevel/cats/compare/v2.8.0...v2.9.0