- Allow files to skip interpreting in the debugger to be configured in Preferences > Build, Execution, Deployment > Debugger > Stepping. It is recommended to customize these settings instead of using
INTELLIJ_ELIXIR_DEBUG_BLACKLISTshould be reserved to additional modules that need to not be interpreted only for specific runs.
- Ship a set of patterns that excludes Elixir standard library by default and most
mix phx.newdependencies, so that debugger boots faster for most users.
- Support debugging
- Detect MFAs that refer to template functions in Phoenix view modules derived from
.eextemplate files, to allow stepping through Elixir tags in those templates.
Allow setting breakpoints in
.eexfiles when a
.beamfile using the template’s relative can be found. This means that the Phoenix view module
.beamfile must exist in
_buildprior to setting a breakpoint. Run the Run Configuration once, before debugging to complete the build if setting a breakpoint does not work.
.beamfiles are now indexed by their
filenamessubsection to power this feature.
VirtualFile. Cache is invalidated and refreshed on modification of the
VirtualFile. Cache is used for both BEAM Chunks read-only editors and
Linechunk file name index.
- Each package manager uses a different root path and which directory to pick above the ebins varies by package manager, so document package manager install paths.
- Show warnings-as-errors checkbox as original blocker has been fixed for awhile and
ProcessAdapterturns warning text into errors that IDE understands.
- When importing Mix projects, don’t exclude compiler output from indexing because it is needed to resolve Elixir Line Breakpoints in EEx files.
- For pre-existing Elixir modules, they will be converted to not exclude compiler output.
- Exclude known uninterpretable modules
- Turn off
debugflag when starting
IntelliJElixir.DebugServer, which removes the
*DBG*statements that kept printing in the ExUnit output when using the debugger.
- Fix conversion of Elixir module names to Erlang module names for
Release, so that when Elixir is configured, but the Erlang path is broken (such as after a
brew unlink erlang, the
- Properly render improper lists
- Show improper list with explicit
- Children of improper lists show
tailinstead of index.
- Show Elixir indices (
0-based) instead of Erlang indices (
) for lists and tuples. * Loosen check on the path suffix by looking for onlylib
, so that it works for both Homebrew'sebin
paths and ASDF'sebin
paths. * Harmonize JPS compile server's invoking ofmix
to pattern used in Run Configuration runners. * Usemix
path from SDK * No longer say the build succeeded when there are obviousmix
errors * Parsemix compile` output for compilation errors and warnings When “warnings-as-errors” is enabled in “Elixir compiler” settings, IDE also shows warnings as errors. IDE will know build failed if there are errors (or warnings treated as errors) and properly allow rebuild. * Some modules, like NIF modules, can’t be loaded into the debugger. Individual modules not being debuggable shouldn’t kill the debugger task, so rescue the known error and record it for later debugging of the debugger.