This Week in Effect - 2024-03-15
Hi Effecters!
Welcome back to a This Week In Effect (TWIE), our weekly update that aims to help you keep track of everything that is going on inside our Community and the Effect Ecosystem.
If it’s your first time here, 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, below you’ll find our quick-start guide and documentation that will be your first step in your Effect journey. Enjoy!
Overview of TWIE
If you're new to TWIE, here are a few words on what TWIE is and what it aims for.
We’re happy to see the community growing so fast, with more and more people adopting Effect. At the same time, we understand that it might not be easy keeping up with everything that is going on in the Effect Ecosystem:
- Our Discord server reached 2050+ members a few days ago and the engagement is at an all-time high.
- We just had our very first Effect Days Conference in Vienna on February 23, 2024. It's been an amazing experience connecting with our community in person. If you couldn't join us in Vienna, we've got plenty of exciting updates and content coming your way, so stay tuned!
- All projects around Effect are receiving key updates and there has been a lot of activity on GitHub!
We want to make it easy for you to find all the info you need to fully enjoy your Effect journey and actively engage with our community!
And, that’s why we created TWIE – a weekly update to inform you about key events about Effect in the previous week, both from the community (Discord discussions, X posts, YouTube content, etc.) and from a technical standpoint.
Now, back to business!
Technology
Below you may find the list of all changes that occurred last week.
Effect Core
- Allow duration inputs to be singular (Feature, next-minor)
- Tap and andThen fallthrough function (Bug Fix, next-minor)
- Add Logger batching and structured logging (Feature, next-minor)
- Add ManagedRuntime module, to make incremental adoption easier (Feature)
- Added support for PromiseLike (Feature)
- Add support for AbortSignal's to runPromise (Feature)
- Performance improvements for RequestResolver (Improvement)
- Add AbortSignal support to ManagedRuntime (Feature)
Effect Experimental
- Add WebSocket support to /platform http server (Feature, next-minor)
- Improve Persistence error messages (Improvement, next-minor)
- Schema: next minor (Refactor, Breaking Change, next-minor)
Effect Platform
- Add WebSocket support to /platform http server (Feature, next-minor)
- Propagate Socket handler errors to .run Effect (Feature, next-minor)
- Add PlatformLogger module (Feature, next-minor)
- Remove log.txt (Documentation Update, next-minor)
- Fix /platform docgen (Bug Fix, next-minor)
- Improve /platform error messages (Improvement)
- Schema: next minor (Refactor, Breaking Change, next-minor)
- Add OpenTimeout & CloseEvent to Sockets (Feature)
- Add SocketCloseError with additional metadata (Feature)
- Use Schema.declare for http multipart PersistedFile schema (Refactor)
- Allow optional fields in http form schemas (Feature)
- Add option to /platform runMain to disable error reporting (Feature)
Effect RPC
- Schema: next minor (Refactor, Breaking Changes, next-minor)
Effect Schema
- Uncurry sortedSet combinators (Improvement, next-minor)
- Schema: next minor (Refactor, Breaking Changes, next-minor)
- Refactor propertySignature and add propertySignatureAnnotations (Refactor)
- Schema annotations interfaces have been refactored into a namespace Annotations (Refactor)
- Move PropertySignatureAST to PropertySignature namespace (Refactor)
- AST: expose the getTemplateLiteralRegExp API (Improvement)
- Refactor pluck (Refactor)
- Remove propertySignatureAnnotations (Refactor)
- Add mutable API interface (Feature)
- Rename headOr to headOrElse (Refactor)
- Added Schema.sortedSet (Feature, next-minor)
General Chores
Community
In the last week, we welcomed +50 new Effecters to our Discord server! Thank you to all our new members for joining the Effect community, and we're excited to have you on board!
Content Update
For our French-speaking audience that may have missed last week's announcement: the first ever Effect Paris Meetup will land in April! Thanks to Evryg team, Jean-Baptiste Musso and Antoine Coulon for organizing the event.
Our community members are the best when it comes to giving advice, explanations, and support. That's why we can only support Stephan's advice:
Given the positive feedback on our Conference Day recap, we're re-sharing it for those who may have missed it.
There's plenty of news and content arriving, so don't forget to follow our X account and YouTube channel to stay updated!
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 new format. Feel free to share your thoughts, and we'll do our best to tailor it to the needs of our community.
The Effect Community Team
Related Posts
This Week in Effect - 2024-03-08
Mar. 8th, 2024
By Davide Scognamiglio, Mirela Prifti, Michael Arnaldi
This Week in Effect is a weekly blog post that makes a summary of what happened in the Effect Community and Ecosystem to help you keep track of all the news, features and changes!
Read more
This Week in Effect - 2024-03-22
Mar. 22nd, 2024
By Davide Scognamiglio, Mirela Prifti, Michael Arnaldi
Key technology releases like Schema 0.64, more insights from the recent Effect Days conference in Vienna, and new exciting content from our community.
Read more