Releases: typelevel/cats-effect
v2.0.0-M5
Milestone v2.0.0-M5
release.
This release is compatible with v2.0.0-M4`. Core binary compatiblity with 1.x, except Scala 2.11 and static forwarders for Java interop. See #566, #584 for a deeper discussion.
Changes
Features:
- #566: Restore binary compatibility in core on Scala >= 2.12, except for static forwarder.
- #568: Make default scheduler remove cancelled tasks
- #574: Add
Resource.liftK
- #591: Add
Async.fromFuture
Chores:
- #564: Use
λ
syntax from kind-projector - #571: Update sbt-coursier to 1.0.3
- #572: Update sbt-scoverage to 1.6.0
- #573: Update sbt-sonatype to 2.5
- #581: Update sbt-scalajs-crossproject to 0.6.1
- #575: Update sbt-tpolecat to 0.1.7
- #590: Update sbt-microsites to 0.9.2 (builds on #589)
- #584: Update sbt-mima-plugin to 0.5.0
Documentation:
- #567: Align scaladoc with examples from the official docs for IO.shift
- #578: Get rid of N.B. in documentation
- #586: Fix typo in
bracketCase
doc
Special Thanks
This release was made possible by:
- @amohrland
- @asakaev
- @CucumisSativus
- @Daenyth
- @djspiewak
- @julien-truffaut
- @kubukoz
- @rossabaker
- @theiterators
- @TomTriple
Thanks to all those involved!
v1.4.0
This release is binary compatible with the 1.x series. It exclusively contains backports from master.
Changes
Enhancements:
- #568 (backport): Make default scheduler remove cancelled tasks.
- #554 (backport): Add
Invariant
instance forRef
- #556 (backport): Add
Blocker
.ContextShift#evalOn
omitted for binary compatibility. - #498 (backport): Add
parTraverseN
andparSequenceN
. Syntax omitted for binary compatibility. - #560 (backport): Renamed
Blocker#evalOn(Blocker)
toblockOn
and changedBlocker
to a value class - #574 (backport): Add
Resource.liftK
- #591 (backport): Add
Async.fromFuture
Documentation
- #567 (backport): Align scaladoc with examples from the official docs for
IO.shift
- #568 (backport): Fix typo in
bracketCase
doc
Special Thanks
This release was made possible by:
- @avakhrenev
- @Daenyth
- @Jacoby6000
- @julien-truffaut
- @kubukoz
- @mpilquist
- @rossabaker
- @sideeffffect
- @TomTriple
Thanks to all those involved!
v2.0.0-M4
Milestone v2.0.0-M4
release.
This release breaks binary compatibility with v2.0.0-M3
and the 1.x series due to #546. It is source compatible except where IO.fromFuture
is called without a ContextShift[IO]
in scope.
Changes
Breaking:
- #546: Enforce shifting within IO.fromFuture, which now requires an implicit ContextShift[IO]
Features:
- #553: Shift on errors in IO.fromFuture
- #547: Replace global with a fixed thread pool as the default IOApp Timer and ContextShift (JVM only)
- #554: Add Invariant instance for Ref
- #556, #560 : Added Blocker, a new type for blocking execution contexts
- #498: Add parTraverseN and parSequenceN
Chores:
- #561: use advertised syntax from the docs for FunctionK
- #562: Scala 2.13.0 support, with related dependencies
Documentation:
- #551: Copy editing of docs
- #557: Fix typo in basics.md
- #558: Remove logical/native threads distinction from Concurrency Basics doc
Special Thanks
This release was made possible by:
Thanks to all those involved!
v2.0.0-M3
v2.0.0-M2
Milestone v2.0.0-M2
release.
This release is source compatible with the 1.x
series, except cats-effect-laws
.
Changes
Features:
Chores:
- #524: Update Discipline version
- #527: Update scalatest to 3.1.0-SNAPSHOT
- #538: Update sbt to 1.2.8
- #540: Use sbt-tpolecat, fix ensuing warnings
Tests:
- #542: Increased all the sleeps in Timer tests by an order of magnitude
Documentation changes:
- #525: Code of Conduct link tweaks
- #531: Fix broken sentence in SyncIO doc
- #536: Fix typo in mvar doc
- #534: Update Resource docs after the change from #496
Special Thanks
This release was made possible by:
Thanks to all those involved!
v1.3.1
General 1.3.1
release.
This release is binary compatible with the 1.x
series.
Changes
Fixes:
- #543: Backport Scala.js IOApp signal handler fix from #540
- #533: Fix IORunLoop#step bug (backported from master)
- #537: Concurrent.memoize is well behaved under cancellation (backported from master)
Documentation changes:
- #522: Fix version references on the README
Special Thanks
This release was made possible by:
Thanks to all those involved!
v2.0.0-M1
Milestone v2.0.0-M1
release.
This release is binary compatible with the 1.x
series, except cats-effect-laws
.
Changes
Features:
- #508: Scala-2.13.0-RC1 support with cats-2.0.0-M1 and scalacheck-1.14
Fixes:
- #513: Remove unused
Eq[IO[Either[F[A], A]]]
fromEffectTests
Chores:
- #514: Remove unused ec in tests
Documentation changes:
Special Thanks
This release was made possible by:
Thanks to all those involved!
v1.3.0
General 1.3.0
release.
This release is binary compatible with the 1.x
series.
Changes
Features:
- #482: Suspend vars in
SyncLaws
- #494: Add
IO.fromTry
- #491: Add
LiftIO
instance forResource
- #492: Add
LiftIO.liftK
,Effect.toIOK
- #490: Add
Resource.evalTap
- #472: Make
IO.Par
's applicative commutative - #511: Add
Resource.fromDestroyable
Fixes:
- #496: Make
Resource.liftF
interruptible - #499: Fix infinitely waiting cancellation of a bracket which failed to acquire
Chores:
- #484: Update cats-core, cats-laws to 1.6.0
- #501: Update sbt-travisci to 1.2.0
- #505: Update sbt-scalajs, scalajs-compiler to 0.6.27
- #495: Update sbt-header to 5.2.0
- #471: Fix shell test to makeMicrosite
- #510: Update sbt-jmh to 0.3.6
- #518: Switch to xenial and openjdk8
Documentation changes:
- #478: Fix typo in Resource scaladoc
- #506: Remove redundant brace
- #504: Fix fib in cats-effect/datatypes documentation
- #497: Remove unnecessary Parallel instance in semaphore docs
- #489: Use ContextShift.apply in the tutorial
- #516: Clear up Resource docs
Special Thanks
This release was made possible by:
- @aaabramov
- @alexandru
- @ChristopherDavenport
- @Daron666
- @djspiewak
- @jooohn
- @kartavtcev
- @ksonj
- @kubukoz
- @lrodero
- @mpurins
- @nigredo-tori
- @RafalSumislawski
- @rossabaker
- @scala-steward
- @SystemFw
- @tixxit
Thanks to all those involved!
v1.2.0
General 1.2.0
release.
This release is binary compatible with 1.1.0
and the 1.x
series.
Changes
Features:
- #395: Adds
Deferred.tryGet
, via a newTryableDeferred
interface - #437: Adds a
map
method directly onResource
- #439: Adds an
evalMap
method toResource
- #464: Adds
mapK
ontoResource
Fixes:
- #442: Fixes #441, the law
bracketReleaseIsCalledOnCompletedError
assumes generators never fail - #443: Uses
parSequence
rather thansequence
inRefTests
- #458: Avoids
Throwable#addSuppressed
&CompositeException
- #462: Lazily create instance of
TimeoutException
inIO.timeout
- #473: Adds "repeated asyncF evaluation not memoized" law
Chores:
- #457: Ignores any MiMa problems from the internals package
- #474: Updates copyright
- #476: Updates Simulacrum to
0.15.0
- Updates Scala to 2.12.8 link
Documentation changes:
- #372: Adds one
ContextShift
example out of three provided options - #394: Adds documentation on throwing in release function (issue #357)
- #434: Adds an awesome data types cheat sheet
- #447: Removes misleading information about Context shift from IO parallel tutorial
- #454: Fixes error in the
Ref
docs - #456: Updates the type class diagram
- #463: Various spelling corrections
- #470: Does some doc fixing
- #477: Fixes doc,
fusionMaxStackDepth
system property referred to as env var
Getting Involved
You can always help with:-
- Feedback by joining us on Gitter
- Re-tweet the release announcement
- Give us a star on GitHub 🙂
Special Thanks
This release was made possible by: @alexandru, @andimiller, @Avasil, @ceedubs, @CucumisSativus, @dwijnand, @johnynek, @kubukoz, @ksonj, @ml10, @Odomontois, @prayagupd, @t3hnar, @Slakah, @SystemFw, @XoJIoD89, @Zelenya
Thanks to all those involved!
v1.1.0
General 1.1.0
release.
This follows the 1.1.0-M1 milestone.
Changes (since M1)
Added features:
- #334: Add
ContextShift#evalOnK
- #365: Add
IorT
instances - #392: Introduce
mapK
operations to concurrent primitives - #393: Add dual effect concurrent data constructors
- #419:
Resource.allocated
Fixes:
- #374, #427: Properly propogate
Writer
andState
effects inbracketCase
- #403: Fix resource leak in
Semaphore#withPermit
andacquireN
- #421: Fix
Resource
attempt on suspend - #424, #402: Ensure that
MVar.take
,MVar.put
,Semaphore.release
andDeferred.complete
do not block, also improving fairness for theConcurrent
versions
Chores:
- #362: Tutorial for Cats-Effect
- #366: Add some test cases for
LinkedMap
- #397: Add missing test methods for
Semaphore
- #399: Fix sentence flow in
IOApp
docs - #406: Update reference to
evalOn
'sfa
parameter - #408: Update
sbt-travisci
to 1.1.3 - #409: Update
sbt-pgp
to1.1.2
- #410: Update
sbt-mima-plugin
to0.3.0
- #411: Update
sbt-git
to1.0.0
- #414: Update
sbt-jmh
to0.3.4
- #417: Typeclasses cheat sheet
- #426: Update
kind-projector
to0.9.9
- #428: Update
sbt-scalajs
,scalajs-compiler
,scalajs-library
... to0.6.26
- #429, #425: Upgrade to Scala
2.12.7
and2.13.0-M5
- #432: Add proper Scala.js source maps, pointing to GitHub repo
- #433: Update SBT to
1.2.7
- #435: Update Cats to version
1.5.0
Changes in M1
Added features:
- #387: Add
ContextShift.apply
to summon implicitContextShift
- #389: Add
Timer.apply
to summon implicitTimer
- #400: Add
Clock.apply
to summon implicitClock
Docs:
- #356: Change to Scala's Code of Conduct
- #358: Concurrency basics pictures
- #385: Update readme to reference partial unification
- #381: Add concurrency basics to menu
- #396: Add
Finch
as adopter
Bug fixes and chores:
- #361: Add more semaphore tests
- #353: Reset MiMa baseline
- #377: Remove unused
IOConnection
inIOBracket
release frames - #379 : Upgrade to cats-1.4.0 (supersedes #352)
- #376: Force
fiber#cancel
to await completion ofbracket
, fix idempotence ofrelease
- #355: Increase test coverage of
Ref
- #398: Update oraclejdk10 to openjdk11 in test matrix
Getting Involved
You can always help with:-
- Feedback by joining us on Gitter
- Re-tweet the release announcement
- Give us a star on GitHub 🙂
Special Thanks
This release was made possible by: @alexandru, @ahjohannessen, @Avasil, @catostrophe, @charles-rumley, @ChristopherDavenport, @CucumisSativus, @djneades, @fthomas, @ghisvail, @joan38, @kubukoz, @lrodero, @LukaJCB, @mpilquist, @mszczygiel, @Odomontois, @RaasAhsan, @rossabaker, @scala-steward, @SystemFw, @vkostyukov, @Zelenya and several other reviewers and commenters.
Thanks to all those involved!