Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update zioversion to v2.1.13 #62

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 7, 2023

This PR contains the following updates:

Package Type Update Change
dev.zio:zio (source) minor 2.0.6 -> 2.1.13
dev.zio:zio-test (source) Test minor 2.0.6 -> 2.1.13
dev.zio:zio-test-sbt (source) Test minor 2.0.6 -> 2.1.13

Release Notes

zio/zio (dev.zio:zio)

v2.1.13: 2.1.13

Compare Source

Highlights

This seemingly small release brings a number of new features and important bugfixes:

  1. Adds support for the Junit 5 engine via the new zio-test-junit-engine module #​9214.
  2. [ScalaJS] Adds support for accessing environment variables via zio.System in JS engines that support it (e.g., NodeJS) #​9282.
  3. Fixes a bug to an issue some users faced with ZStream.mapZIOPar* methods since v2.1.12 #​9312.

As always, this version is fully source and binary compatible with the rest of the v2.x series.

What's Changed
Other changes (CI, dependencies and documentation)
New Contributors

Full Changelog: zio/zio@v2.1.12...v2.1.13

v2.1.12: 2.1.12

Compare Source

This release brings a couple bug fixes for STM, as well as a few optimizations and usability improvements.

What's Changed
Other changes (CI, dependencies and documentation)

v2.1.11: 2.1.11

Compare Source

We found a regression in 2.1.10 causing a runtime exception in some cases when using ZIO environment and layers, so here's a release to fix that.

What's Changed

v2.1.10: 2.1.10

Compare Source

This release brings a few important bug fixes related to ZPool and ZSTM as well as some optimizations. It also fixes a binary incompatibility that caused runtime errors when using an older version ZIO Streams together with ZIO 2.1.9.

Important note about ZPool changes

There are 2 fixes / changes to ZPool that might affect the behaviour of an application so users are advised to revise the following in cases of unexpected behaviour after upgrading to ZIO 2.1.10+.

Eager / strict initialization of ZPool's resources

In previous ZIO versions, the initialization of ZPool resources was done lazily in a daemon fiber. e.g., this code would previously print the message, but will now "hang" awaiting for the pool to be initialized to its full size:

ZPool.make(ZIO.never, 10) *> ZIO.debug("Pool initialized")

We believe that this change makes the behaviour of ZPool more predictable (and referentially transparent!) as previously there were no guarantees that the ZPool resources would be initialized during the creation of the pool. However, this might result in the initialization of the pool hanging in cases that the acquisition of the resources itself hangs. Therefore users are advised to consider adding timeouts to the resource initialization effect.

Strict finalization of ZPool resources

In previous versions, it was possible for the ZPool finalizers to be interrupted, which would lead to potential leak of resources (see this issue for more info). Starting with ZIO 2.1.10+, closing a ZPool requires all of the resource finalizers to finish first. As with (1), this might lead to some unexpected behaviour if the finalization of a resource hangs indefinitely, so users are advised to add timeouts to the finalizers of resources used with ZPool.

What's Changed
Other changes (CI, dependencies and documentation)

v2.1.9: 2.1.9

Compare Source

After receiving multiple reports of users failing to compile code using ZLayer macros with v2.1.8, we decided to temporarily revert https://github.com/zio/zio/pull/9077 until we get to bottom of what's been causing it.

What's Changed

Full Changelog: zio/zio@v2.1.8...v2.1.9

v2.1.8: 2.1.8

Compare Source

This release brings a re-implemented ZSTM runtime that significantly improves performance under contention, enables multi-threading for Scala Native 0.5.x, squashes some minor bugs, and makes a few things run a little bit faster. And it is fully binary and source-compatible with the rest of 2.x release!

Highlights
ZSTM performance improvements

The performance of ZSTM under heavy contention has regressed over time due to various bug fixes. In this release, we reimplemented the internal runtime of ZSTM in order to significantly improve its performance under heavy contention (up to 800% improved throughput in some benchmarks!) all while achieving similar or better performance under no contention. For more details check out #​9081

Scala Native multi-threading support

In the previous release, we updated Scala Native to v0.5.x but as we mentioned in the release notes, the ZIO runtime was not yet multi-threading capable. In this release, we threw most of the existing Scala Native code (which was not thread-safe) and changed it to use (mostly) the same code as the JVM artifacts. Users that currently use ZIO with Scala Native 0.5.x must enable multi-threading for Scala Native in their builds by removing nativeConfig ~= { _.withMultithreading(false) }.

[!WARNING]
We're aware of an issue when using zio-test on MacOS ARM64 when the debug compilation mode is used (default). If you come across any issues, try setting the mode to releaseFast or releaseFull (see here for an example)

What's Changed
Other changes (CI, dependencies and documentation)

v2.1.7: 2.1.7

Compare Source

This release adds support for Scala Native 0.5, contains various bug fixes as well as performance optimizations.

Highlights
Scala Native 0.5 support

This version of ZIO is released using Scala Native 0.5, which means that libraries that depend on ZIO can now also update their Scala Native version. Special thanks to @​sideeffffect for his work on this 🎉

[!WARNING]
At the moment, ZIO is not yet fully compatible for use with Scala Native's multi-threading feature. We are planning on adding support for it soon, but until then, users are encouraged to disable it using nativeConfig ~= { _.withMultithreading(false) } in their project config.

Fix memory leaks in parallel ZStream processing methods

In v2.1.3 we did a number of optimizations to parallel ZStream processing. Unfortunately, since then we received a number of reports where users experienced memory leaks, which we managed to trace back to these optimizations. While we managed to patch a number of these issues in subsequent releases, we weren't able to fully eliminate them and therefor we made the decision to temporarily revert them back to their pre-v2.1.3 implementation. We are planning be revisiting optimizations for these methods in a future release but this time ensuring that they don't lead to memory leaks for edge-case usage patterns.

[!TIP]
Based on the reports we received, it appears that many users use unbounded parallelism (i.e., n = Int.MaxValue) in ZStream's *Par methods. To improve performance of these methods, we highly encourage users the following:

  • Use a finite parallelism limit for ZStream's*Par methods. The limit needs to make sense for the workflow and system's resources. If unsure on what value to use, you can use these values as a vague starting point:
    i. CPU-bounded workflow: n = nCPU
    ii. IO-bounded: workflow n = nCPU x ~8-16
  • If overriding the buffer size, use a relatively small value (i.e., <= 16)
  • Use a power of 2 value for both parallelism and buffer sizes
What's Changed
Other changes (CI, dependencies and documentation)

v2.1.6: 2.1.6

Compare Source

This minor release contains a few important bug fixes and optimizations to improve performance. The most notable fix was done in #​8997 which fixed a potential memory leak when using ZStream#mapZIOParUnordered.

What's Changed
Other changes (CI, dependencies and documentation)

v2.1.5: 2.1.5

Compare Source

This minor release contains a bug fix and a few improvements. The most meaningful improvement is that we now try to detect when an asynchronous effect is run from inside another ZIO effect via Runtime.unsafe.run (which is an anti-pattern! but happens in the wild) and move it automatically to the blocking threadpool to prevent deadlocks.

What's Changed
Other changes (CI, dependencies and documentation)
New Contributors

Full Changelog: zio/zio@2.1.4...v2.1.5

v2.1.4: 2.1.4

Compare Source

This minor release contains 2 important bug fixes to ZStream parallel operations and ZLayer derivation. It also contains some performance improvements to ZStream and the new methods to ZIO that improve UX.

What's Changed
Other changes (CI, dependencies and documentation)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.7 chore(deps): update zioversion to v2.0.8 Feb 10, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.8 chore(deps): update zioversion to v2.0.9 Feb 15, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.9 chore(deps): update zioversion to v2.0.10 Mar 6, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.10 chore(deps): update zioversion to v2.0.12 Apr 17, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.12 chore(deps): update zioversion to v2.0.13 Apr 17, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.13 chore(deps): update zioversion to v2.0.15 Jun 6, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.15 chore(deps): update zioversion to v2.0.16 Aug 21, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.16 chore(deps): update zioversion to v2.0.17 Sep 15, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.17 chore(deps): update zioversion to v2.0.18 Sep 26, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.18 chore(deps): update zioversion to v2.0.19 Nov 6, 2023
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.19 chore(deps): update zioversion Dec 14, 2023
@renovate renovate bot changed the title chore(deps): update zioversion chore(deps): update zioversion to v2.0.21 Jan 4, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.21 chore(deps): update zioversion to v2.0.22 Apr 12, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.0.22 chore(deps): update zioversion to v2.1.0 May 9, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.0 chore(deps): update zioversion to v2.1.1 May 11, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.1 chore(deps): update zioversion to v2.1.2 Jun 4, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.2 chore(deps): update zioversion to v2.1.3 Jun 12, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.3 chore(deps): update zioversion to v2.1.4 Jun 20, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.4 chore(deps): update zioversion to v2.1.5 Jun 28, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.5 chore(deps): update zioversion to v2.1.6 Jul 10, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.6 chore(deps): update zioversion to v2.1.7 Aug 5, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.7 chore(deps): update zioversion to v2.1.8 Aug 24, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.8 chore(deps): update zioversion to v2.1.9 Aug 29, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.9 chore(deps): update zioversion to v2.1.10 Oct 10, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.10 chore(deps): update zioversion Oct 10, 2024
@renovate renovate bot changed the title chore(deps): update zioversion chore(deps): update zioversion to v2.1.11 Oct 10, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.11 chore(deps): update zioversion to v2.1.12 Nov 7, 2024
@renovate renovate bot changed the title chore(deps): update zioversion to v2.1.12 chore(deps): update zioversion to v2.1.13 Nov 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants