Enhancement
38 changes
Add Access.find/1 that mirrors Enum.find/2
Support cursor inside fn/rescue/catch/else/after inside Code.Fragment.container_cursor_to_quoted/2
Add Date.shift/2 to shift dates with duration and calendar-specific semantics
Allow Date to accept years outside of -9999..9999 range
Add DateTime.shift/2 to shift datetimes with duration and calendar-specific semantics
Add a new Duration data type
Add c:GenServer.format_status/1 callback
Add Kernel.get_in/1 with safe nil-handling for access and structs
Add Kernel.is_non_struct_map/1 guard
Add Kernel.to_timeout/1
Emit warnings for undefined functions from modules defined within the same context as the caller code
Support integers in uppercase sigils
Add Keyword.intersect/2-3 to mirror the Map API
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, and Macro.Env.expand_require/6 to aid the implementation of language servers and embedded languages
Add NaiveDateTime.shift/2 to shift naive datetimes with duration and calendar-specific semantics
Add Process.set_label/1
Add String.byte_slice/3 to slice a string to a maximum number of bytes while keeping it UTF-8 encoded
Support use_stdio: false in System.cmd/3 and System.shell/2
Add Time.shift/2 to shift times with duration and calendar-specific semantics
Propagate the test process itself as a caller in start_supervised
Include max cases in ExUnit reports
Warns if recompile was called and the current working directory changed
Add c/0 as an alias to continue/0
Add IEx.Pry.annotate_quoted/3 to annotate a quoted expression with pry breakpoints
Format :gen_statem reports using Elixir data structures
Include process label in logger events
Add :depth option to Mix.SCM.Git, thus supporting shallow clones of Git dependencies
Warn if :optional is used in combination with :in_umbrella
Do not add optional dependency requirements if its parent dep was skipped
Add --umbrella-only to mix deps.tree
Add a new profiler, available on Erlang/OTP 27+, which can measure count, time, and heap usage
Add mix test --breakpoints that sets up a breakpoint before each test that will run
Add mix test --repeat-until-failure to rerun tests until a failure occurs
Add mix test --slowest-modules to print slowest modules based on all of the tests they hold
Generate cover HTML files in parallel
Deprecate c:GenServer.format_status/2 callback to align with Erlang/OTP 25+
Deprecated in favor of the new mix profile.tprof
Deprecated in favor of the new mix profile.tprof