This release brings support for Scala 3.0.0-RC2 as well as a variety of bug fixes and other improvements.
In particular, this is the first release to include features back ported from ZIO 2.0 with the addition of ZHub
, a new concurrent data structure supporting extremely fast broadcast operations. ZHub
now powers the broadcast
operators in ZStream
and the SubscriptionRef
data type, as well as being available as a standalone data structure. Check out the documentation for additional information and please let us know what you think!
This release is binary compatible with v1.0.0
.
Notable changes
ZIO Core
- Implement serviceWith (#4937) (by @kitlangton)
- Make ZHub A Sealed Abstract Class For Improved Binary Compatibility (#4925) (by @adamgfraser)
- Fix array reference in foldWhileM (#4929) (by @mikearnaldi)
- fix typeCheck macro expansion should use fully qualified names (#4928) (by @TobiasPfeifer)
- Make Hub Serializable (#4920) (by @adamgfraser)
- Reimplement SubscriptionRef in Terms of ZHub (#4916) (by @adamgfraser)
- Make Values In Bootstrap Runtime Lazy (#4917) (by @adamgfraser)
- Annotation for throwing (#4837) (by @octavz)
- Use modern sbt conventions (#4915) (by @sideeffffect)
- Optimize Hub Implementations (#4913) (by @adamgfraser)
- WIP: Documentation (#4872) (by @khajavi)
- Back Port ZHub To ZIO 1.0 (#4900) (by @adamgfraser)
- Implement noneOrFail #4841 (#4851) (by @tyrcho)
- Scala 3.0.0-RC2 (#4874) (by @sideeffffect)
- Update future.md (missing logging/println) (#4831) (by @phderome)
- Add Simple ZIO ScalaJS Skeleton to learning resources (#4878) (by @sb-dev)
- Die In Bounded Parallelism Operators If Maximum Parallelism Is Less Than One (#4875) (by @adamgfraser)
- Update scala-java-time versions in docs (#4871) (by @kitlangton)
- Data type organization (#4824) (by @khajavi)
- typo correction in README (#4860) (by @softinio)
- Add Type Alias For Intersection Types On Scala 2 (#4845) (by @adamgfraser)
- Add ZSTM.collectAll for Option (#4846) (by @mijicd)
- Implement ZIO#debug and related methods (#4818) (by @kitlangton)
- Rename await variable to prevent JS exceptions (#4843) (by @nightscape)
- fix zipPars doc (#4842) (by @kazchimo)
- Add type-inferrable toLayer extension on functions (#4811)(by @kitlangton)
- Add migrating from Monix guide (#4822) (by @kitlangton)
- add alias for CompletableFuture (#4836) (by @sken77)
- Correctly Handle Queue#TakeUpTo Int.MaxValue (#4833) (by @adamgfraser)
- Implement Random.nextUUID (#4828) (by @adamgfraser)
- Fix doc (#4821) (by @kazchimo)
- Added new resources to docs (#4817) (by @softinio)
- Replace buildFromAny with buildFromNothing (#4815) (by @joroKr21)
- Handle Interruption After Fatal Error In FiberContext (#4812) (by @adamgfraser)
- Implement ZManaged.blocking (#4807) (by @adamgfraser)
- Add missing lift combinators for ZManaged (#4798) (by @ioleo)
- Support use of @accessible macro with implicits (#4466) (#4467) (by @nadenf)
- Remove Test Dependency From ZIO Macros (#4795) (by @adamgfraser)
ZIO Streams
- Add Documentation Regarding SubscriptionRef (#4944) (by @adamgfraser)
- Simplify Signature of ZStream#broadcastDynamic (#4946) (by @adamgfraser)
- Handle Concurrent Unsubscribes in SubscriptionRef (#4940) (by @adamgfraser)
- ZIO Stream: Implement ZStream#changes (#4697) (by @adamgfraser)
ZIO Test
- Support adding aspects to top level suite in MutableRunnableSpec (#4838) (by @vladimirkl)
- ZIO Test: Implement Gen#concatAll (#4801) (by @adamgfraser)