Elixir
Elixir v1.19.0-rc.2 released
1. Enhancements
Elixir
- [Regex] Raise error message when regexes are used as default values in struct fields for compatibility with Erlang/OTP 28
- [Registry] Add key-based partitioning of duplicate registries
2. Bug fixes
Elixir
- [Kernel] Address issue with type checking not completing on protocol consolidation
ExUnit
- [ExUnit] Do not crash on empty test unit groups
Mix
- [mix help] Add
mix help app:APP - [mix test] Fix module preloading in
mix test --slowest-modules=N
Most Liked
josevalim
Alright folks, in a nutshell, this release addresses all feedback from the previous RCs:
-
Fully compatible with Erlang/OTP 28.1+
-
Struct update syntax has been adapted into a type assertion operator
-
Addresses issues with projecting taking too long to compile
This should be our final stop before v1.19, please give it a try!
josevalim
Perfect timing, we were just about to release it. Fixed!
josevalim
Oh, I think I got it. You literally have a protocol and then in one of the implementations, you define additional clauses.
Yes, the warning is expected. The type system is enforcing that you are implementing the protocol exactly for the type of that implementation. We could not emit any warning, but then it means someone may accidentally define additional clauses, and they won’t get any help from the type system. So we chose to enforce that the first argument matches the implementation.
If the description above is not correct, then please provide a way to reproduce this or post a larger code snippet. Thanks.
Popular in News
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









