This Week in Effect - 2024-06-07
Hi Effecters!
Welcome back to This Week In Effect (TWIE), a weekly update to keep you in the loop with all the latest developments in the Effect community and ecosystem.
Effect is a powerful TypeScript library designed to help developers create complex, synchronous, and asynchronous programs. One of the key features that sets Effect apart is how it leverages structured concurrency to provide features such as async cancellation and safe resource management, making it easier to build robust, scalable, and efficient programs.
To get started with Effect, explore our quick-start guide and documentation below.
We want to make it easy for you to find everything you need to fully enjoy your Effect journey and actively engage with the community! Here, you'll find all the significant developments from the previous week, including community activities such as Discord discussions, noteworthy posts, YouTube content, and technical advancements.
Recent major updates
- Effect became API stable with the Effect 3.0 release.
- Effect 3.3 has been released.
- Our community on Discord reached 2950+ members!
- We're publishing new Effect Days talks every week on the Effect YouTube channel.
Technology
Here are all the technical changes that occurred last week (note that changes included in the 3.3 release will not be listed).
Effect Core
- Ensure Equal considers Date by value (Bug Fix)
- Fix id extraction in Context.Tag.Identifier (Bug Fix)
- Remove toJSON from PrettyError and fix message generation (Bug Fix)
- Remove usage of performance.timeOrigin (Bug Fix)
- Only wrap objects with string keys in Config.Wrap (Bug Fix)
- README: update pull requests guidelines (Documentation Update)
- Add documentation for Predicate.implies (Documentation Update)
- Redacted: add JSDocs (Documentation Update)
- Add Either.liftPredicate (Feature, next-minor)
- Remove unnecessary === comparison in getEquivalence functions (Refactor)
- Ensure Chunk.reverse preserves NonEmpty status (Bug Fix)
- Add lastNonEmpty function to Chunk module (Bug Fix, next-minor)
Effect RPC
Effect Platform
- Make baseUrl more defensive in @effect/platform (Refactor)
- Ensure pre-response handler is checked after running the user-provided http app (Bug Fix)
Effect CLI
- Fix print to stdout of cli (Bug Fix)
Effect SQL
- Add @effect/sql-drizzle integration package (Feature)
- Update @effect/sql dependencies (Improvement)
Effect Schema
- Schema: Add documentation for handling equality in Schema.Class (Documentation Update)
- Add encodedBoundSchema API (Feature)
- Update @since version in schema files to 0.67.0 (Improvement)
- Schema: expose property signature schemas (Improvement)
- Add support for string literals to Schema.TemplateLiteral and TemplateLiteral API interface (Feature)
- EncodedBoundSchema: preserve array stable filters
- Add support for unions to rename (Improvement)
- TemplateLiteral: fix bug related to "number"span (Bug Fix)
- Schema: align constructors arguments (Refactor)
- Add support for AST.Literal in Schema.TemplateLiteral (Feature)
- Add propertyOrder option to ParseOptions to control the order of keys in the output (Feature)
- PropertyOrder: do not add missing optional values (Bug Fix)
- Schema: add Redacted docs (Documentation Update)
- Schema: fix Redacted since tag (Bug Fix)
- Docs(Schema): add more examples for renaming properties in the README (Documentation Update)
General Chore
Community highlights
In the last week, we welcomed +50 new Effecters to our Discord community - we're excited to have you on board!
-
Effect reached the milestone of 6000 followers on X. We want to extend our thanks to all the members of our community for their continuous support and trust.
-
Maxwell Brown, long-term Effect-core contributor and Effect Days Advanced Workshop instructor, joined the Effectful Technologies team. We are excited to have him on board and wish him a productive and impactful journey ahead!
- The inato team shared insights on their migration process from fp-ts to Effect and shared their insights on how they could reach this goal in just two months. Congratulations to the team for this outstanding achievement.
- Ethan Niser, an excellent and very young Effect educator, and instructor of the Effect Days Workshop in Vienna, has just graduated and shared this glimpse of his graduation ceremony. We are thrilled to see him continue to achieve outstanding milestones, and it is an honor to have him as part of our community.
- The Evryg team has announced the date of the second Effect Paris Meetup: Tuesday, June 25th at 7:00 PM. Now accepting talk submissions—submit yours today! As a reminder, the meetup will be in French.
Content update
- On Monday, we released a new talk from the Effect Days Conference. 'Building type-safe REST APIs powered by @effect/schema' by Anna DevMiner. In her presentation, Anna discusses the importance of type-safe REST APIs and shows a solution using Zod and @effect/schema.
Closing notes
That's all for this week. Thank you for being a vital part of our community. Your feedback is highly valued as we fine-tune this format. Feel free to share your thoughts, and we'll do our best to tailor it to the needs of our community.
Effect Community Team
Related Posts
This Week in Effect - 2024-05-31
May. 31st, 2024
By Davide Scognamiglio, Mirela Prifti, Michael Arnaldi
Technical updates in Effect. 'Next level type safety with Effect' by Aleksandra Sikora. 'Effect Cluster Integration with Effect RPC' Ep.2 by Mattia Manzati.
Read more
This Week in Effect - 2024-06-14
Jun. 14th, 2024
By Davide Scognamiglio, Mirela Prifti, Michael Arnaldi
Technical updates in Effect. "The Most Exciting Use of Technology" award. 'Effect CLI - A love letter to developers tired of settling for less' by Maxwell Brown.
Read more