Zio-py

Latest version: v0.0.16

Safety actively analyzes 630360 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 20

2.0.0rc5

This release contains primarily bug fixes as we zero in on the final release of ZIO 2.0.

The only significant API changes are that the `toLayer` syntax has been replaced with `ZLayer.fromFunction`. Instead of `(Users.apply _).toLayer` you can do `ZLayer.fromFunction(User.apply _)`. `ZLayer.fromAcquireRelease(acquire)(release)` has also been deleted and can be replaced with `ZLayer.scoped(ZIO.acquireRelease(acquire)(release))`. Similarly `zio.toLayer` can be replaced with `ZLayer(zio)`.

With these changes, there are now just three ways to construct all layers:

1. `ZLayer.fromFunction` for "simple" layers that depend on other services but do not require other ZIO workflows for their construction or finalization
2. `ZLayer.apply` with a for comprehension for layers that require ZIO workflows for their construction but do not require finalization
3. `ZLayer.scoped` with a for comprehension for layers that require finalization

This brings us to where we have always wanted to be with making defining the layers of your application as simple as possible. Please continue to report any bugs to us and we will be working diligently to prepare for the final release of ZIO 2.0. Thank you as always for your support.

2.0.0rc4

We are excited to bring you what we hope will be the final release candidate of ZIO 2.0!

The theme of this release candidate is simplification. Throughout the development process we have striven to add features and performance while simplifying everything we possibly could, including the deletion of `Has` and `ZManaged`. This release builds on that in two ways.

First, the default ZIO services of `Clock`, `Console`, `Random`, and `System` have been removed from the environment and built into the ZIO runtime. These interfaces are very low level. Unlike other services, they describe functionality that users may want to use in any service or in their main application. And users rarely provide alternative implementations other than the test implementations provided by ZIO Test.

This change eliminates the boilerplate that was previously associated with manually providing these services in the implementation of higher level services. You can still modify the implementation of these services using `ZEnv.services` but we expect users will rarely need to do this themselves. All the operators you are used to like `Console.printLine` still work, they just won't add a requirement to the environment. And you can also use a new set of operators like `ZIO.clock` to access one of the default services directly.

As a user you should be able to just delete all references to these services from the environment.

Second, ZIO concurrent data structures such as `Ref`, `Queue`, and `Hub` have been simplified to delete their more polymorphic variants. While elegant, this functionality was rarely used and could be confusing for new users.

This release candidate also includes new support for streaming test results from ZIO Test based on work by swoogles! Please let us know your feedback and we hope you enjoy the new more real time test output.

We continue to be on track to release the final version of ZIO 2.0 by the end of April. Between now and then will be continuing to optimize, fix bugs, and make minor API changes but we do not expect to make any further major changes at this point.

Thank you again for your support! Things just keep getting better and better!

2.0.0rc3

We are excited to bring you the third release candidate of ZIO 2.0!

This release candidate brings several exciting features. In particular it introduces scopes as first class values, which provide the basis for safe, composable resource handling.

We can construct a scoped resource using constructors such as `ZIO.acquireRelease`:

scala
def file(name: String): ZIO[Scope, IOException, File] =
ZIO.acquireRelease(openFile(name))(closeFile)


The `Scope` in the environment indicates that this workflow uses a scoped resource. We can work with the resource as much as we want and then when we are done with it we can close the scope with the `ZIO.scoped` operator:

scala
ZIO.scoped {
file(name).flatMap(useFile)
}


Any resources acquired within a `Scope` are guaranteed to be released when the `Scope` is closed, whether by success, failure, or interruption.

Scopes let us safely use resources while working with ordinary `ZIO` values without having to use any other data types like `ZManaged`. This means we have all the operators we are used to on `ZIO` and can work with any code that accepts a `ZIO` value.

Based on this work the `ZManaged` data type has been removed from ZIO but for backward compatibility it is still available as a separate `zio-managed` dependency.

This release also contains an overhauled metrics interface to make it easier for you to capture metrics about how your application is performing as well as a variety of other improvements.

Based on these changes we expect to do one more release candidate in approximately two weeks before pushing for a final version of ZIO 2.0.

Thank you as always for your support! We can't wait to all be able to use ZIO 2.0 together!

2.0.0rc2

This release contains bug fixes and additional features to make it easier than ever to upgrade to ZIO 2, including new `ZPipeline` constructors that let you convert any transducer into a pipeline. This is also the first release in which ZIO Mock has been moved into its own project. Check out the new repository [here](https://github.com/zio/zio-mock) if you are using it in your tests.

We expect that all major ZIO ecosystem libraries will be able to publish versions supporting `RC2` shortly after it is released, allowing users to begin testing their applications on ZIO 2 if they are not already doing so. Thank you as always for your support and please continue to share your feedback as we drive towards the final release of ZIO 2!

2.0.0rc1

We are excited to bring you the first release candidate of ZIO 2.0!

When we announced the first milestone release of ZIO 2.0 we said we wanted to focus on four key areas: (1) performance, (2) ergonomics, (3) operations, and (4) streaming.

We are proud to have delivered on all of these and more.

- **Performance** - ZIO is faster than ever with a new fiber aware scheduler and optimized runtime.
- **Ergonomics** - ZIO is easier to use than ever with more straightforward names, automatic layer construction, and the deletion of `Has`.
- **Operations** - It is easier than ever to understand what is going on in your ZIO application with built in logging and metrics, execution traces that look like JVM stack traces, and integrated fiber dumps.
- **Streaming** - Streams are more powerful than ever with a new channel based encoding that unifies streams and sinks, supporting higher performance implementations along with concurrent data structures such as `ZHub`.

From here we will be working with all ZIO ecosystem libraries to publish versions for `RC1`. This will allow users to test their own applications on ZIO 2.0 and resolve any issues before a final release. If you are upgrading to ZIO 2.0 we would encourage you to check out our migration guide [here](https://zio.dev/next/howto/migrate/zio-2.x-migration-guide/). In particular, it has details on our automated migration tool, which will do most of the work of upgrading your ZIO application for you.

As always, please let us know your feedback, and we hope you enjoy using ZIO 2.0 as much as we have developing it.

1.0.42

This minor release contains a fix to a dependency issue regarding the SBT test runner for ZIO Test . Upgrading is recommended for all users. This release is binary compatible with `v1.0.0`.

Page 4 of 20

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.