View profile

ZIO News - Issue #32

ZIO News - Issue #32
By ZIO News • Issue #32 • View online
Welcome to ZIO News, your community-powered newsletter dedicated to ZIO and its ecosystem.
The biggest news of this edition of the newsletter is the release of ZIO 2.0, almost two years after the release of ZIO 1.0!
ZIO 2.0 Released
Today, on June 24th, 2022, we are excited to announce that ZIO 2.0 has officially been released! You can read an unofficial post from John De Goes about the release here.
We wish to thank all the contributors to the ZIO 2.0 release (especially Adam Fraser, John De Goes, Daniel Vigovszky, and Kit Langton, among many others), the users who provided such useful feedback over the life of ZIO 1.0, and the companies who invested resources into the release, including Ziverge and Scalac.
ZIO Hackathon - Scotland
With support from Ziverge, Coralogix, and UMATR, we ran a successful ZIO Hackathon in Inverness, Scotland, which attracted brave ZIO Users and Contributors all the way to the Scottish Highlands.
Thanks to sponsors, we were able to plant one tree for every merged pull request, in a grove dedicated to ZIO. Together, we have planted 41 trees. Thank you and kudos to everyone involved!
In October, we are going to meet in New York City and online to continue hacking on ZIO. Visit the event page for more details.

Major Releases
ZIO Quill 3.18.0 & 3.19.0
Release v2.0.0-RC8 - ZIO 2 Support · dream11/zio-http
Release 0.1.2 · zio/zio-cache · GitHub
Release v0.0.2 · zio/zio-sql · GitHub
ZIO Ecosystem
GitHub - kaizen-solutions/virgil: A purely functional Cassandra client built using ZIO
Examples of functional design in ZIO Features by John A. De Goes
Blog Articles
Scala at Prezi: Introduction of ZIO by Máté Börcsök
How to Test Effects in ZIO | An Introduction to ZIO Test by Prateek Gupta
Structuring ZIO 2.0 applications by Adam Warski
Exceptions and Futures in ZIO by Gulshan Singh
UPDATED: Introduction to Programming with ZIO Functional Effects by Jorge Vasquez
Grokking ZIO. by Murray Todd Williams |
Published Talks
ZLayers in ZIO 2.0 are a totally different BEAST!
ZLayers in ZIO 2.0 are a totally different BEAST!
Zymposium - ZIO Parser
Zymposium - ZIO Parser
ZIO HTTP by Shubham Girdhar - ZIO World 2022
ZIO HTTP by Shubham Girdhar - ZIO World 2022
Zymposium — Explaining Implicits (Scala 3)
Zymposium — Explaining Implicits (Scala 3)
ZIO API by Kit Langton - ZIO World 2022
ZIO API by Kit Langton - ZIO World 2022
The Importance of Statically Typed Errors by Lachlan O'Dea - ZIO World 2022
The Importance of Statically Typed Errors by Lachlan O'Dea - ZIO World 2022
Zymposium - Concurrency Challenges
Zymposium - Concurrency Challenges
ZIO Scopes by Adam Fraser - ZIO World 2022
ZIO Scopes by Adam Fraser - ZIO World 2022
ZIO SQL by Jaroslav Regec - ZIO World 2022
ZIO SQL by Jaroslav Regec - ZIO World 2022
ZIO Caliban and Beautiful Domain logic by Pierre Ricadat - ZIO World 2022
ZIO Caliban and Beautiful Domain logic by Pierre Ricadat - ZIO World 2022
Events
ZIO Community
John A De Goes
Extremely proud of the community we have created in ZIO, and inspired that ZIO users and contributors are having such a powerful impact on the world through their inclusive, uplifting, empowering, and constructive spirit. ❤️ https://t.co/ImgiGuiZiQ
Wiem ⏸️
ZIO community opened the door to me, I was included and accepted for who I am, they helped me grow professionally and personally because of the diversity there I got to see things from different perspectives. My life has been changed thanks to them. Thank you @zioscala ❤️
From Twitter
John A De Goes
Proof that ZIO 2 Scoped is equivalent to Managed / Resource:

type Resource[+A] =
ZIO[Scope, Throwable, A]

def use[A, B](z: Resource[A])(f: A => Task[B]): Task[B] =
ZIO.scoped(z.flatMap(f))

The implications of this are fascinating!
John A De Goes
'Has' was awful to use, and I'm glad people told us so, so that we could figure out a better way in ZIO 2.0! 💪 https://t.co/RlzqUo91Jk
John A De Goes
With ZIO 2.0, I expect the Saga pattern to look like:

ZIOSaga.commit {
continueSaga(doIt, undoIt)
...
}

Where `ZIOSaga.commit` is a layer that eliminates `Saga` from the environment by either running all to completion, or reverting w/compensations (if failed).
John A De Goes
ZIO embraces (pure functional) imperative programming, & makes it better than Java offers.

Why? Operating systems, libraries, APIs, & infrastructure are all imperative.

Rather than trying to be a research project, ZIO just tries to make imperative programming better & safer.
Alexander Ioffe
Quill 3.18.0 is out! This release fixes co-related subqueries, Option[Product] decoding, & other fixes. Also adds optional-filtering via Option[T].filterIfDefined(v => predicate(v)). Quill should now work with JDK17+ since dependency on the twitter-chill library has been removed.
zio
Great stats for ZIO-SQL during the ZIO Hacatkon. @jczuchnowski thank you and kudos for your excellent leadership. https://t.co/fpsrZxNrJ8
amit singh
ZIO-HTTP just got better with version 2.0.0-RC8, which has support for ZIO 2.0.0-RC6 and many other features and fixes 🔥 🚀 🎉
Thanks to all the contributors 👏👏👏
Please find the release notes https://t.co/oEXDtGwswb
@zioscala
kris_£teka
I'm happy that I participated in this year's. I learned a lot and contributed to an OSS for the first time. Many thanks to the organizers @zioscala and everyone who made this possible. https://t.co/3XsDrHOCGg
Fabrice Sznajderman 📸💻
I just pushed in prod environment my first component fully based on #ZIO library. It was really pleasant to work with. It ease my FP developer life in many ways 🤗!! @zioscala
Oto
I gave a real shot with ZIO this week. After a lot of Akka, CE and other Scala FP and not so FP magic. Damn, it's good and surprisingly easy to get started! Kudos to the community and contributors! 🚀 cc @zioscala @zivergetech @jdegoes #scala https://t.co/jczO7HHTmP
John A De Goes
Have trouble remembering ZIO type aliases? Worry no longer, with this great little guide by @zivergetech's own @deusaquilus! 🙏

Print it out or get it on a poster here:

https://t.co/xdNluSbfNj https://t.co/qUiKxXPMks
John A De Goes
Looking at what's happening in the job market, I can truthfully say that ZIO 1.0 is the single biggest reason to adopt Scala.

I'm hoping that ZIO 2.0 will be the single biggest reason to embrace the JVM. 🤞

The JVM has never seen anything like ZIO 2.0. 😉
Michael Misamore
@jdegoes I just love that ZIO is so focused on DX.
John A De Goes
Controversial at the time, ZIO 1.0 innovated by introducing a 'blocking' operator that shifted effects to a blocking thread pool--now adopted by other effect systems.

ZIO 2.0 is now capable of detecting blocking operations & shifting them automatically. 😱

#innovation #zio
MATECHS
Originally, Effect started as a small project inspired by the ideas brought forth by the developers of ZIO in Scala-@zioscala

...evolved to a full-blown port of all the core modules of ZIO ...that bridges the gap between the data structures available in #Scala and in #TypeScript https://t.co/18hCQRBpmV
Jakub Czuchnowski
ZIO SQL 0.0.2 is now available.

Updated to ZIO 2.0-RC5 and with a couple of improvements.

https://t.co/526661OEdm

@zioscala #zio #ziosql #scala
John A De Goes
ZIO's mission is exclusively and unapologetically focused on technical excellence, business utility, & joyful dev experience.

The ZIO org exists purely to facilitate all professionals to produce amazing, useful, & accessible technology that leads to mainstream adoption of FP.
Vasilis Lampridis
@jdegoes ZIO's relentless focus on DevEx is (or should be) seriously inspiring for every library developer or engineer designing internal Scala abstraction. You brought innovation to a language that has been stale for quite a while.
Stéphane Derosiaux
A typical example of Diverge-and-Converge UX strategy. ZIO is a Product.
Challenge the status quo, talk to users, try things, create new value, simplify it. Rinse and repeat. #developerexperience https://t.co/vVLp5GudXz
Itamar Ravid
Love how this release focuses on the essence of what Clock et al brought to the table: testability. Having them in type signatures was nice but ultimately fluff.

And while ZManaged was close to my heart, explaining it was always a pain. Happy to see a simpler solution! https://t.co/t2oFSBq8Rz
Did you enjoy this issue?
ZIO News

Everything about ZIO and its ecosystem

In order to unsubscribe, click here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Powered by Revue