Just freshly merged. @unsplash running effect in production
This Week in Effect - 2024-08-16
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 that helps 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, below you’ll find links to our documentation as well as our guide for installing Effect. Enjoy!
Recent major updates:
- Effect is API stable with the Effect 3.0 release.
- Effect 3.6 has been released.
- Our community on Discord reached 3380+ members!
Here are all the technical changes that occurred last week.
- Use en-US locale in DateTime tests (Feature)
- Ensure Stream.toReadableStream pulls always result in a enqueue (Bug Fix)
- Fix Cache ‘Value’ type parameter variance (covariant -> invariant) (Bug Fix)
- Ensure Scheduler tasks are added to a matching priority bucket (Bug Fix)
- Ensure makeZonedFromString supports 00:00 offset (Bug Fix)
- Ensure defects are caught in Effect.tryPromise (Bug Fix)
- Avoid automatic propagation of finalizer concurrency (Bug Fix, next-minor)
- Update workspace dependencies (Improvement)
- Add VariantSchema & Model modules (Feature)
- Add HttpRouter.concatAll + fix HttpRouter.concat mounts (Feature, Bug Fix)
- Update workspace dependencies (Improvement)
- Add HttpRouter.currentRouterConfig fiber ref (Feature)
- Update workspace dependencies (Improvement)
- Add support for obtaining raw SQL query results from the underlying SQL client (Feature)
- Support partial objects in sql helpers (Bug Fix)
- Add VariantSchema & Model modules (Feature)
- Make json schema output more compatible with Open AI structured output (remove “oneOf” and “const”) (Bug Fix)
- Add Schema.ArrayEnsure & Schema.NonEmptyArrayEnsure (Feature)
- Update workspace dependencies (Improvement)
- Fix schema readme (Documentation Update)
- Update workspace dependencies (Improvement)
- Update workspace dependencies (Improvement)
- Add Rpc prefix to rpc module names (Feature)
In the last week, we welcomed +20 new Effecters to our Discord community - we’re very excited to have you all on board!
- Unsplash just started using Effect in production! We’re thrilled to share this update by Thomas Lefebvre, Senior Production Engineer at Unsplash.
- Sandro Maglione launched his Effect: Beginners Complete Getting Started course this week, which is free to everyone. The course is designed to guide beginners through their initial journey with Effect, providing step-by-step support as they build their first projects.
@EffectTS_ Beginners Complete Getting Started course is out now 🚀 From zero to building complete apps with effect Type-safe, maintainable, testable apps, and it's just typescript 💯 Here is what you'll learn 👇🧵 typeonce.dev/course/effect-…
- Johannes Schickling dropped a teaser about an upcoming podcast titled ‘Cause and Effect’.
There are rumours about an upcoming @EffectTS_ podcast – apparently called "Cause & Effect" 👀
- Maxwell Brown and Tim Smart were live on Wednesday on Twitch with the fourth episode of ‘Reimagining ContentLayer With Effect’. The video will soon be available on the Effect YouTube Channel.
Continuing the re-imagination of Contentlayer with the latest and greatest from @EffectTS_! Live with @tim_smart now! twitch.tv/maxwellbrown19…
- Ethan Niser, posted a new video about Error Handling in TypeScript. In this video the Effect library is introduced as a powerful tool for managing errors in TypeScript, enhancing code readability and safety, and making error handling more intuitive and effective.
- Following Ethan’s video, James - JollyCoding, developer advocate @ Better Stack, made his very first video about Effect, focused on Effect main advantages: making TypeScript more robust, more composable, reusable and testable.
- Milad Vafaeifard, founder of Sign Language Tech published a new video guide in sign language, explaining the difference between andThen and flatMap in Effect.
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