- [Code] Add
Code.string_to_quoted_with_comments/2andCode.quoted_to_algebra/2 - [Exception] Better format Elixir exceptions in Erlang
- [Inspect] Allow default inspect fun to be set globally with
Inspect.Opts.default_inspect_fun/1 - [Kernel] Make
get_inconsistently abort whennilvalues are found - [Kernel] Improve compilation times by reducing the amount of copies of the AST across compiler processes
- [IEx.Autocomplete] Add path autocompletion whenever when the cursor follows
"./or"/or"DRIVER:whereDRIVERis a single letter
- [Logger] Add
Logger.put_application_level/2
- [mix archive.install] Run
loadconfigbefore building archive - [mix escript.install] Run
loadconfigbefore building escript - [mix rebar] No longer support
sub_dirsin Rebar 2 to help migration towards Rebar 3 - [mix test] Support
--profile-require=timeto profile the time loading test files themselves - [mix test] Allow filtering modules from coverage using regex
- [Kernel] Raise when aliasing non-Elixir modules without
:as - [Kernel] Allow
unquote_splicinginside%{...}without parens - [Protocol] Add
defdelegateto the list of unallowed macros inside protocols as protocols do not allow function definitions - [Protocol] Warn if
@callback,@macrocallbackand@optional_callbacksare defined inside protocol
- [mix deps] Raise if local dep is unavailable while compiling
- [mix local.install] Do not respect
MIX_DEPS_PATHfor install commands - [Mix.Shell] Add
defaultoption toMix.Shell.yes?
- [Macro]
Macro.to_string/2is deprecated, useMacro.to_string/1instead - [System] Deprecate
System.get_pid/0, useSystem.pid/0instead
The CHANGELOG for v1.12 releases can be found in the v1.12 branch.