What's Changed
* chore(deps): update zio.version to v1.0.12 by renovate in https://github.com/zio/zio/pull/5652
* chore(deps): update dependency prismjs to 1.25.0 [security] by renovate in https://github.com/zio/zio/pull/5654
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.1 by scala-steward in https://github.com/zio/zio/pull/5656
* Update http4s-blaze-client, ... to 0.23.4 by scala-steward in https://github.com/zio/zio/pull/5657
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.3 by scala-steward in https://github.com/zio/zio/pull/5660
* Remove site deployment from the series 1.x branch by atooni in https://github.com/zio/zio/pull/5658
* Added DPG recruitment to the list of adopters in the README by kolov in https://github.com/zio/zio/pull/5672
* Preserve Original Error In ZStreamtimeoutError by adamgfraser in https://github.com/zio/zio/pull/5671
* Update scalafmt-core to 3.0.5 by scala-steward in https://github.com/zio/zio/pull/5674
* Update sbt-ci-release to 1.5.9 by scala-steward in https://github.com/zio/zio/pull/5663
* Update scala-compiler, scala-library, ... to 2.12.15 by scala-steward in https://github.com/zio/zio/pull/5613
* Update quill-jdbc-zio to 3.10.0 by scala-steward in https://github.com/zio/zio/pull/5526
* Update zio-test-akka-http to 1.0.3 by scala-steward in https://github.com/zio/zio/pull/5673
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.4 by scala-steward in https://github.com/zio/zio/pull/5682
* Fix getRef in Fiber.orElse by zeal18 in https://github.com/zio/zio/pull/5690
* chore(deps): update node.js to v14.18.0 by renovate in https://github.com/zio/zio/pull/5689
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.5 by scala-steward in https://github.com/zio/zio/pull/5691
* Update jsoup to 1.14.3 by scala-steward in https://github.com/zio/zio/pull/5695
* Preserve Partial Ordering Of Stream Elements In ZStreamzipWithLatest by adamgfraser in https://github.com/zio/zio/pull/5693
* Update zio-kafka to 0.17.0 by scala-steward in https://github.com/zio/zio/pull/5698
* Add accessor method for Clock.localDateTime by nartamonov in https://github.com/zio/zio/pull/5661
* Update util-core to 21.9.0 by scala-steward in https://github.com/zio/zio/pull/5700
* Update zio-zmx to 0.0.9 by scala-steward in https://github.com/zio/zio/pull/5701
* Update rezilience to 0.7.0 by scala-steward in https://github.com/zio/zio/pull/5702
* Update scalafmt-core to 3.0.6 by scala-steward in https://github.com/zio/zio/pull/5708
* Update maven-compat, maven-embedder to 3.8.3 by scala-steward in https://github.com/zio/zio/pull/5710
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.6 by scala-steward in https://github.com/zio/zio/pull/5712
* Preserve Scope of Forked Fibers in ZStreaminterruptWhen by adamgfraser in https://github.com/zio/zio/pull/5720
* Generalize Signature Of EffectBlockingCancelable by adamgfraser in https://github.com/zio/zio/pull/5715
* Update http4s-blaze-client, ... to 0.23.5 by scala-steward in https://github.com/zio/zio/pull/5735
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.7 by scala-steward in https://github.com/zio/zio/pull/5740
* Update sbt-scalajs, scalajs-compiler, ... to 1.7.1 by scala-steward in https://github.com/zio/zio/pull/5738
* Back Port ZIOtoManagedAuto by adamgfraser in https://github.com/zio/zio/pull/5727
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.42.9 by scala-steward in https://github.com/zio/zio/pull/5746
* Update caliban, caliban-zio-http to 1.2.0 by scala-steward in https://github.com/zio/zio/pull/5748
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.56.1 by scala-steward in https://github.com/zio/zio/pull/5747
* feat: catchNonFatal by runtologist in https://github.com/zio/zio/pull/5741
* Add collectAll and foreach to ZLayer by jypma in https://github.com/zio/zio/pull/5756
* Update fs2-core to 2.5.10 by scala-steward in https://github.com/zio/zio/pull/5757
* Update reactor-core to 3.4.11 by scala-steward in https://github.com/zio/zio/pull/5758
* Update mockable macro implementation to handle inheritance by sloanesturz in https://github.com/zio/zio/pull/5737
* Implement Random.scalaRandom by adamgfraser in https://github.com/zio/zio/pull/5731
* Update http4s-blaze-client, ... to 0.23.6 by scala-steward in https://github.com/zio/zio/pull/5764
* Add ZTransducer.groupAdjacentBy by davidlar in https://github.com/zio/zio/pull/5767
* Remove Scalafix by adamgfraser in https://github.com/zio/zio/pull/5766
* Remove Scala Steward by adamgfraser in https://github.com/zio/zio/pull/5765
* chore(deps): update node.js to v14.18.1 by renovate in https://github.com/zio/zio/pull/5760
* Update zio-aws-core, zio-aws-ec2, ... to 3.17.58.1 by scala-steward in https://github.com/zio/zio/pull/5769
* chore(deps): update actions/checkout action to v2.3.5 by renovate in https://github.com/zio/zio/pull/5781
* add tamer to community by gurghet in https://github.com/zio/zio/pull/5709
* Update to Scala 3.1.0 by sideeffffect in https://github.com/zio/zio/pull/5793
* Run tests on 8 as the main Java version by sideeffffect in https://github.com/zio/zio/pull/5813
* Scala Native 0.4.1 by sideeffffect in https://github.com/zio/zio/pull/5812
* Fix zio-test-scalacheck publishing by mijicd in https://github.com/zio/zio/pull/5814
* Stop publishing examples by mijicd in https://github.com/zio/zio/pull/5816
* Remove type parameters from STM types list by mijicd in https://github.com/zio/zio/pull/5817
* Clean Up Some Documentation by adamgfraser in https://github.com/zio/zio/pull/5822
* chore(deps): update node.js to v16 by renovate in https://github.com/zio/zio/pull/5828
* ZIO Test Mock: Fix `atLeast` and add exactly bounded expectations by aartigao in https://github.com/zio/zio/pull/5834
* chore(deps): update node.js to v16.13.0 by renovate in https://github.com/zio/zio/pull/5833
* Chunk.fromIterable should work with Iterables traversing only once by narma in https://github.com/zio/zio/pull/5836
* Change/update Gitpod configs by ThijsBroersen in https://github.com/zio/zio/pull/5839
* ZIO Test Mock: Remove redundant `once` combinator for `Expectation[R]` by aartigao in https://github.com/zio/zio/pull/5840
* Fix null rendering w/ PrettyPrint by kitlangton in https://github.com/zio/zio/pull/5842
* Update README.md by yelenabun in https://github.com/zio/zio/pull/5843
* Remove Scalafix artifacts by mijicd in https://github.com/zio/zio/pull/5893
* Implement ConcurrentMap by mijicd in https://github.com/zio/zio/pull/5898
* Add CyclicBarrier by regiskuckaertz in https://github.com/zio/zio/pull/5901
* Add Scala 3 to crossScalaVersions and remove bintray.com by sideeffffect in https://github.com/zio/zio/pull/5897
* 5823 - Add ConcurrentSet by aleksandarskrbic in https://github.com/zio/zio/pull/5876
* Update stale contributing docs by mijicd in https://github.com/zio/zio/pull/5920
* Add CountdownLatch by regiskuckaertz in https://github.com/zio/zio/pull/5915
* Add concurrent set methods by kitlangton in https://github.com/zio/zio/pull/5921
* Update contributing.md by BruceEckel in https://github.com/zio/zio/pull/5929
* Add possibility to feed UUIDs to TestRandom by Edvin-san in https://github.com/zio/zio/pull/5950
* Add adpulse.io to list of adopters by dpovey in https://github.com/zio/zio/pull/5957
* Replace UIO[Unit] with UIO[Any] by mijicd in https://github.com/zio/zio/pull/5963
* Prefer Unit to Any by mijicd in https://github.com/zio/zio/pull/5967
* issue 5877: Backport some improvements to supervisor by dkarlinsky in https://github.com/zio/zio/pull/5942
* issue 5804: mockable fails to mock service that returns a stream by KineticCookie in https://github.com/zio/zio/pull/5962
* Upgrade Scala Version by adamgfraser in https://github.com/zio/zio/pull/5976
* Added ConcurrentMap methods by oliveiosello in https://github.com/zio/zio/pull/5933
* .is SmartAssertions by kitlangton in https://github.com/zio/zio/pull/5988
* Fix race condition in fromOutputStreamWriter by joroKr21 in https://github.com/zio/zio/pull/5872
* Improve `.is` with custom assertions, subtype, and anything by kitlangton in https://github.com/zio/zio/pull/5996
* Added benchmarks for Chunk methods inherited from IndexedSeq by Ethan-Edmond in https://github.com/zio/zio/pull/5971
* chore(deps): update actions/checkout action to v2.4.0 by renovate in https://github.com/zio/zio/pull/5982
* Fix Compilation Error by adamgfraser in https://github.com/zio/zio/pull/6019
* corrected the official installation to use zio-logging by ksarath in https://github.com/zio/zio/pull/6022
* Auto-docstring wrapping at 80 char line width by kitlangton in https://github.com/zio/zio/pull/6013
* Backport ZIO 2 ClockJava by ThijsBroersen in https://github.com/zio/zio/pull/6035
* Add failsWithA and diesWithA to test assertions by droptheplot in https://github.com/zio/zio/pull/5838
* Fixed 6049 - Misleading Example by eaborm in https://github.com/zio/zio/pull/6052
* Fix foldWeighted emitting too big outputs by rtimush in https://github.com/zio/zio/pull/6054
* fix nonEmptyStringGen by kazchimo in https://github.com/zio/zio/pull/6085
* 4388 Adds execute method + test by jeroenr in https://github.com/zio/zio/pull/6091
* Extract ZIO Concurrent Into Separate Module by adamgfraser in https://github.com/zio/zio/pull/6093
* Implement MockRandomnextUUID by adamgfraser in https://github.com/zio/zio/pull/6100
* Fix CODE_OF_CONDUCT.md link target [master] by ya-goodfella in https://github.com/zio/zio/pull/6106
* Add company to readme by WesselVS in https://github.com/zio/zio/pull/6114
* Don't run tests if they are filtered out by tags or labels by danilbykov in https://github.com/zio/zio/pull/6113
* chore(deps): update node.js to v16.13.1 by renovate in https://github.com/zio/zio/pull/6119
* Fix zlayer example by erdnaxeli in https://github.com/zio/zio/pull/6124
* Add LambdaWorks to the list of adopters by arnoldlacko in https://github.com/zio/zio/pull/6126
* Add ZSink.digest to calculate MessageDigest of incoming bytes by jypma in https://github.com/zio/zio/pull/6138
* add wolt to adapters list by alek-w in https://github.com/zio/zio/pull/6145
* chore(deps): update dependency net.alchim31.maven:scala-maven-plugin to v4.5.6 by renovate in https://github.com/zio/zio/pull/6164
* chore(deps): update dependency json-schema to 0.4.0 [security] by renovate in https://github.com/zio/zio/pull/6165
* the test shows that ZLayer could ignore actual values and use cached "image" of dependency by alek-w in https://github.com/zio/zio/pull/6153
New Contributors
* kolov made their first contribution in https://github.com/zio/zio/pull/5672
* zeal18 made their first contribution in https://github.com/zio/zio/pull/5690
* nartamonov made their first contribution in https://github.com/zio/zio/pull/5661
* sloanesturz made their first contribution in https://github.com/zio/zio/pull/5737
* davidlar made their first contribution in https://github.com/zio/zio/pull/5767
* ThijsBroersen made their first contribution in https://github.com/zio/zio/pull/5839
* yelenabun made their first contribution in https://github.com/zio/zio/pull/5843
* BruceEckel made their first contribution in https://github.com/zio/zio/pull/5929
* Edvin-san made their first contribution in https://github.com/zio/zio/pull/5950
* KineticCookie made their first contribution in https://github.com/zio/zio/pull/5962
* oliveiosello made their first contribution in https://github.com/zio/zio/pull/5933
* Ethan-Edmond made their first contribution in https://github.com/zio/zio/pull/5971
* droptheplot made their first contribution in https://github.com/zio/zio/pull/5838
* eaborm made their first contribution in https://github.com/zio/zio/pull/6052
* rtimush made their first contribution in https://github.com/zio/zio/pull/6054
* danilbykov made their first contribution in https://github.com/zio/zio/pull/6113
* erdnaxeli made their first contribution in https://github.com/zio/zio/pull/6124
* alek-w made their first contribution in https://github.com/zio/zio/pull/6145
**Full Changelog**: https://github.com/zio/zio/compare/v1.0.12...v1.0.13
v2.0.0-M6-2
This release fixes a publishing issue with 2.0.0-M6.
v2.0.0-M6-1
This release fixes a publishing issue with `2.0.0-M6`.
v2.0.0-M6
We did it again! We expected `2.0.0-M5` to be the final milestone before publishing a release candidate of ZIO 2.0, but based on breakthrough work to dramatically simplify the environment type we are publishing one more milestone release.
This release deletes the `Has` data type and builds the ZIO Environment directly into ZIO. This allows us to offer the same power of compositionally building your application's dependencies but without `Has`, simplifying type signatures and improving teachability. Based on this change we have also reverted the renaming of `ZLayer` to `ZServiceBuilder` since this addresses the underlying goal of simplifying dependency injection in a more fundamental way.
Our plan to publish a release candidate in early December remains unchanged. As always thank you for your support and please continue to share your feedback!
v2.0.0-M5
We got so many contributions in the ZIO Hackathon we needed one more milestone to get them all in!
We expect that this will be the last milestone before we publish the first release candidate of ZIO 2.0 and it comes packed with several major new features.
First, rendering of tracing information has been dramatically improved. Traces now look like Java stack traces, so if you know how to read a Java stack trace you know how to read a ZIO trace. This way any tooling you are using to work with Java stack traces today will work with ZIO traces. You shouldn't have to change your infrastructure just because you use an effect system.
Second, this release contains the new channel based stream encoding. While we have striven to maintain a consistent API, under the hood streams and sinks are both implemented as channels, supporting higher performance and reflecting a deep unification that reveals more about the fundamental nature of these data types. Transducers are also gone and have been replaced with pipelines, which represent a stream transformation as a data type.
Third, this release continues our work to improve the ergonomics of providing applications with their required dependencies. We have already taken dramatic steps in this direction with automatic construction of the dependency graph and standardized ways to define services. Now we are improving how we describe building services by renaming `ZLayer` to `ZServiceBuilder`. This tells you exactly what it does, it builds one or more of the services that your application needs.
With these changes we have achieved all the features we targeted for ZIO 2.0. From here we expect to publish the first release candidate at the beginning of December, assuming no major issues, and then work to rapidly upgrade the ecosystem in preparation for a final release.
Thank you all for your support as we build the next generation of cloud native programming in Scala and as always please let us know your feedback!
v2.0.0-M4
This fourth milestone release of ZIO 2.0 brings us rapidly closer to realizing our vision of next generation concurrent programming in Scala.
Specifically, this milestone contains a new implementation of execution tracing that dramatically reduces the overhead of collecting traces. Since most production applications use execution tracing this should have a material impact on the performance of some ZIO applications.
In addition, this release contains a new `ZPool` concurrent data structure that represents a pool of managed resources, for example a connection pool. Users can `get` a value from the pool, semantically blocking until a resource is available, and all resources will be automatically released when the scope of the pool is closed.
Please let us know your feedback. Assuming there are no major issues with this release we expect to publish the first release candidate of ZIO 2.0 in the next two to three weeks. At that point we will work with all ZIO ecosystem libraries to publish versions for ZIO 2.0 so that users can test their applications on ZIO 2.0. At that time we will also have a Scalafix migration rule which will automate the process of upgrading from ZIO 1.0 to ZIO 2.0.
As always thank you for your support!
v2.0.0-M3
This third milestone release of ZIO 2.0 focuses on realizing our vision of next level support for operational concerns, with built in logging and metrics.
See [this](https://ziverge.com/blog/a-preview-of-logging-in-zio-2) blog post by jdegoes for a discussion of the new logging functionality.
For metrics, you can now use `ZIOMetric` to define metrics such as counters, gauges, and histograms and either call them yourself or apply them to effects as aspects:
scala
import zio._
val countErrors = ZIOMetric.countErrors("my service errors")
handle(request) countErrors
In the future ZIO Metrics will support plugging in one or more metrics backends to automatically send metrics to the service or services you want with a single line of code.
This release candidate also contains a new `ZIOApp` that lets you combine multiple applications and share layers between them, as well as a `ZIOAppDefault` to make it even easier to demonstrate and prototype ZIO applications.
scala
object MyApp extends ZIOAppDefault {
def run = Console.printLine("Hello ZIO!")
}
This release also contains `THub`, a version of `ZHub` that can be composed transactionally. So now if you are working with any ZIO data structure and run into a concurrency problem you have trouble solving you can always "upgrade" to the STM version and unblock yourself.
Finally, this release contains a variety of improvements to polish to continue to get us ready for the final release of ZIO 2.0.
As always, thank you for your support and let us know what you think!