TODO.
- [Access] Add
Access.find/1
that mirrorsEnum.find/2
- [Date] Add
Date.shift/2
to shift dates with duration and calendar-specific semantics - [DateTime] Add
DateTime.shift/2
to shift datetimes with duration and calendar-specific semantics - [Duration] Add a new
Duration
data type - [Kernel] Add
Kernel.get_in/1
with safe nil-handling for access and structs - [Kernel] Emit warnings for undefined functions from modules defined within the same context as the caller code
- [Macro] Add
Macro.Env.define_alias/4
,Macro.Env.define_import/4
,Macro.Env.define_require/4
,Macro.Env.expand_alias/4
,Macro.Env.expand_import/5
, andMacro.Env.expand_require/6
to aid the implementation of language servers and embeddeed languages - [NaiveDateTime] Add
NaiveDateTime.shift/2
to shift naive datetimes with duration and calendar-specific semantics - [Process] Add
Process.set_label/1
- [String] Add
String.byte_slice/3
to slice a string to a maximum number of bytes while keeping it UTF-8 encoded - [Time] Add
Time.shift/2
to shift times with duration and calendar-specific semantics
- [ExUnit] Propagate the test process itself as a caller in
start_supervised
- [IEx.Helpers] Warns if
recompile
was called and the current working directory changed - [IEx.Helpers] Add
c/0
as an alias tocontinue/0
- [IEx.Pry] Add
IEx.Pry.annotated_quoted/3
to annotate a quoted expression with pry breakpoints
- [Logger] Format
:gen_statem
reports using Elixir data structures - [Logger] Include process label in logger events
- [mix deps] Add
:depth
option toMix.SCM.Git
, thus supporting shallow clones of Git dependencies - [mix deps] Warn if
:optional
is used in combination with:in_umbrella
- [mix deps.get] Do not add optional dependency requirements if its parent dep was skipped
- [mix deps.tree] Add
--umbrella-only
tomix deps.tree
- [mix test] Add
mix test --breakpoints
that sets up a breakpoint before each test that will run - [mix test] Add
mix test --repeat-until-failure
to rerun tests until a failure occurs - [mix test] Add
mix test --slowest-modules
to print slowest modules based on all of the tests they hold
- [Code] Address a bug where AST nodes for
(a -> b)
were not wrapped as part of the literal encoder - [Kernel] Resolve inconsistencies of how
..
and...
are handled at the AST level - [Kernel] Fix parsing of ambiguous operators followed by containers
- [IEx.Helpers] Also update the history size whenever it is pruned
- [IO] Passing
:all
toIO.read/2
andIO.binread/2
is deprecated, pass:eof
instead - [Kernel] Single-quote charlists are deprecated, use
~c
instead - [Kernel] Deprecate escaping closing delimiter in uppercase sigils
- [Range]
left..right
without explicit steps inside patterns and guards is deprecated, writeleft..right//step
instead - [Range] Decreasing ranges, such as
10..1
without an explicit step is deprecated, write10..1//-1
instead
- [ExUnit.Case]
register_test/4
is deprecated in favor ofregister_test/6
for performance reasons
The CHANGELOG for v1.16 releases can be found in the v1.16 branch.