Elixir v1.20.3

v1.20.3
Changed 1
  • Batch type checker cache operations in Kernel.ParallelCompiler to improve compilation times
Fixed 12
  • Improve type precision of the ++/2 operator
  • Improve type precision of the send/2 return type
  • Improve type refinement for and/2 and or/2
  • Fix type checking of Map.put/3 on empty map types
  • Fix type checking of tuple insertion on equivalent tuple types
  • Fix type checking of tuple insertion on gradual types with empty static parts
1. Enhancements
Elixir
  • [Kernel.ParallelCompiler] Batch type checker cache operations to improve compilation times
2. Bug fixes
Elixir
  • [Kernel] Improve type precision of the ++/2 operator
  • [Kernel] Improve type precision of the send/2 return type
  • [Kernel] Improve type refinement for and/2 and or/2
  • [Kernel] Fix type checking of Map.put/3 on empty map types
  • [Kernel] Fix type checking of tuple insertion on equivalent tuple types
  • [Kernel] Fix type checking of tuple insertion on gradual types with empty static parts
  • [Kernel] Fix variable refinements leaking from invalid receive/after timeout expressions
  • [Kernel] Fix rendering inferred types containing unions of static and dynamic functions
  • [Kernel] Ensure typing errors in :maps.values/1 reference the correct function
  • [Kernel] Mark %_{} patterns as precise so subsequent redundant struct clauses are detected
  • [elixirc] Fix parsing of the --profile time option
IEx
  • [IEx.Helpers] Fix break!/1 with unknown expressions
View original

Upgraded? How did it go?

Discussion