- [EEx] Allow more complex mixed expression when tokenizing
- [CLI] Add support for
--boot
,--boot-var
,--erl-config
,--pipe-to
,--rpc-eval
, and--vm-args
options - [File] Add
File.rename!/2
- [Kernel] Optimize generated code for
with
with a catch-all clause - [Protocol] Improve Protocol.UndefinedError messages to also include the type that was attempted to dispatch on
- [System] Add
System.restart/0
andSystem.pid/0
- [System] Support
SOURCE_DATE_EPOCH
for reproducible builds
- [ExUnit.DocTest] No longer wrap doctest errors in custom exceptions. They ended-up hiding more information than showing
- [Logger] Use a descentralized mode computation for Logger which allows overloads to be detect more quickly
- [mix release] Add support for releases
- [Kernel] Properly merge and handle docs for callbacks with multiple clauses
- [Kernel] Guarantee reproducible builds on modules with dozens of specs
- [Kernel] Resolve
__MODULE__
accordingly in nesteddefmodule
to avoid double nesting
- [ExUnit] Raise error if attempting to run single line tests on multiple files
- [IEx] Automatically shut down IEx if we receive EOF
- [CLI] Deprecate
--detached
option, use--erl "-detached"
instead
- [Mix.Project] Deprecate
Mix.Project.load_paths/1
in favor ofMix.Project.compile_path/1
The CHANGELOG for v1.8 releases can be found in the v1.8 branch.