Elixir

Elixir

Elixir Core Team

Elixir v1.20.0-rc.4 released

This release requires Erlang/OTP 27+ and is compatible with Erlang/OTP 29.

1. Enhancements

Elixir

  • [Code] Add :dbg_callback option to eval functions
  • [Code.Fragment] Allow preserving sigil metadata in container_cursor_to_quoted
  • [File] Add support for [:raw] opts in File.read/2
  • [Kernel] Show undefined function errors even when missing variables (this helps debug errors caused when the developer forgets to require a macro)
  • [Module] Purge and delete modules if after_verify/2 callback fails
  • [PartitionSupervisor] Support via tuples in count_children/1 and stop/3
  • [Process] Add Process.get_label/1

Mix

  • [mix deps] Allow overriding specific dependencies in :override

2. Bug fixes

Elixir

  • [Integer] Fix Integer.extended_gcd/2 returning negative GCD for zero base cases
  • [Integer] Raise when negative out-of-range digits are given to Integer.undigits/2
  • [Kernel] Protocols should not add compile-time dependencies on Any implementation
  • [Kernel] Ensure structs trigger recompilation for type checking purposes (regression)
  • [Kernel] Ensure type information propagate across hd/tl in guards (regression)
  • [Keyword] Raise ArgumentError in Keyword.from_keys/2 for non-atom keys
  • [URI] Fix URI.merge leaking :+ marker when base path is empty string

ExUnit

  • [ExUnit.Diff] Avoid false positives when diffing bitstrings

Mix

  • [mix deps] Use config files to pass project state to avoid argv limits on Windows when using MIX_OS_DEPS_COMPILE_PARTITION_COUNT
  • [mix compile] Fix compile env change triggering full recompilation of path dependencies
  • [mix compile] Add a build lock around protocol consolidation in umbrellas
  • [mix compile] Ensure compilation of sibling deps do not mark path deps as changed
  • [mix test] Fix --warnings-as-errors not catching misnamed test file warnings

Most Liked

josevalim

josevalim

Creator of Elixir

Hi everyone, here is another release candidate with should improve performance and fix all regressions from the previous release candidates. It also bumps the minimum Erlang/OTP requirement to 27. Please give it a try and keep the feedback coming!

27
Post #3
nathanl

nathanl

Add Process.get_label/1

:tada: One more piece of the puzzle to make using labels easy. Label all those processes for better debugging, folks!

11
Post #4

Where Next?

Popular in News Top

josevalim
Official announcement: Elixir v1.6 released - The Elixir programming language Thanks everyone who gave the release candidate a try and g...
New
Elixir
Release: Release v1.9.0 · elixir-lang/elixir · GitHub Releases The main feature in Elixir v1.9 is the addition of releases. A release is...
New
Elixir
1. Enhancements Elixir [File] Support distributed File.Stream [Module] Add Module.get_last_attribute/3 [Task] Reduce footprint of tasks ...
New
josevalim
Elixir v1.5.0-rc.0 has been released. This is a release candidate for the upcoming Elixir v1.5. It includes bug fixes, enhancements and ...
New
josevalim
Hi everyone, We have just released Elixir v1.8.0-rc.0. For more information, checkout the CHANGELOG. Please give it a try and give us f...
New
josevalim
NOTE: this is a focused thread, so we appreciate if everybody stayed on topic. Feel free to comment anything in regards to calendar forma...
New
Elixir
1. Bug fixes Elixir [bin/elixir] Properly handle the --dbg flag in Elixir’s CLI [Code.Formatter] Add brackets around keyword lists when ...
New
Elixir
1. Enhancements Mix [mix compile.elixir] Do not run fixpoint computation on runtime dependencies. This should considerably improve compi...
New
josevalim
In Elixir we are continuously trying to improve the experience for developers learning the language. However, there are still common road...
New
Elixir
1. Enhancements Elixir [Protocol] Optimize protocol consolidation to no longer load structs 2. Bug fixes Elixir [Kernel] Fix unnecessa...
New

Other popular topics Top

9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod – where is this set? Thanks.
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
grych
Hi folks, Few months ago I have announced the proof-of-concept of the library to manipulate the browsers DOM objects directly from Elixi...
639 52774 488
New
klo
Got a question about when to concat vs. prepending items to list then reversing to achieve appending. So i know lists boil down to [1 | ...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
hariharasudhan94
Lets say I have map like this fetching from my database %{"_id" => #BSON.ObjectId<58eb1a7a9ad169198c3dXXXX>, "email" => ...
New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New

We're in Beta

About us Mission Statement