ExVenture Updates for October 2018
Getting Started with Ecto Part 2: Migrations, Schemas, and Changeset
IntelliJ Elixir 10.0.0
-
Go To Symbol and completion will only resolve in project source unless non-project sources are turned on.
-
depsare properly marked as Libraries and no longer count as being in the project scope for the Go To tools. -
In umbrella projects, when
in_umbrellais used, the Project Module for eachapps/#{APP_NAME}will be marked a dependency, - Library and Modules are properly connected as dependencies, so that only declared dependencies will resolve, lessening false completions and declarations when different OTP app share common Module or function names.
-
-
depsand the_build/#{MIX_ENV}/lib/#{DEP_NAME}will be marked as Excluded, so that Libraries appear in External Libraries at the bottom of the Project Pane. - Go To Class action (Cmd+O) to go to modules separately from all functions as would happen with Go To Symbols (Alt+Cmd+O).
-
Add
.eexto.exand.exsfor accepted file extensions used to hyperlink files in stacktraces. -
Resolve unaliased name when using
alias __MODULE__, as: Mod -
Resolve usage of
Modinalias __MODULE__, as Mod-
Mod -
__MODULE__inalias __MODULE__ -
defmodule MyModulethat is enclosing__MODULE__.
-
-
Completion of functions in current module when using
Mod.afteralias __MODULE__, as: Mod. -
Show more context for
aliascalls in presentations, like “Choose Declaration” pop up for Go To Declaration.-
Show resolved
__MODULE__name (alias MyModule) when usingalias __MODULE__. -
Show full
alias MyModule, as: Modwhen listingModinalias __MODULE__, as Mod.
-
Show resolved
-
Exclude common directories when importing projects
-
coverfor test coverage -
docforex_doc -
logsfor log files -
assets/node_modules/phoenixforphoenix -
assets/node_modules/phoenix_htmlforphoenix_html
-
- Setup Libraries and Module dependencies when importing projects from Mix.
-
Canary, pre-release builds (
vMAJOR.MINOR.PATCH-pre+YYYYMMDDHHMMSS) frommasterbranch- GitHub pre-release releases
- Release on the canary channel in the JetBrains Plugin Repository
-
Don’t include
nulluseCallas__MODULE__dependency. -
Wrap
LibraryTable#removeLibraryin write action. -
Wrap
Library#modifiableModule#commitin write action. -
More closely match ExUnit.CliFormatter output in Test Runner.
-
Don’t
inspectExUnit failurereasonas##teamcitymessage. - Add captured logs to failure
- Colorize test failures - including diff colorization
-
Don’t
-
Map Elixir 1.7
:excludedand:skipped(added in elixir-lang/elixir#7245) totestIgnoredteamcity message, thereby restoring ignored test counts and markers from Elixir 1.6. -
When finding a
defmodule, check that it is an ancestor of the entrance of theResolveState, so that nested sibling modules are not scanned for potential call definition clauses, but only the outer module of the entrance. -
Remove
@2xand@3xSVG icons that render wrong size in 2018.3 EAP. -
flushBufferBeforeTerminatingwas deprecated and in newer IntelliJ the call toprocessStatusesdoes not occur unlessflushBufferOnProcessTerminationis also overridden. -
Treat
== Compilation errorinSTDOUTasERRORfor ExUnit reporter -
Convert
(CompileError)of a test file to test failure. The “Test framework quit unexpectedly” is converted to a failed run with a single test with the compilation error as the failure message. -
Don’t treat redefinition of
defmodulemacro as module definition (as occurs in @bitwalker‘s distillery‘sMix.Tasks.Release.Init.MixMock -
Don’t log compilation errors as test failures unless a test has started. Test name being called
mix testdoes not work, so log those compilation errors as normal build messages instead. -
Don’t interpret
:cryptoby default::cryptoincludes NIFs that can’t be reloaded and so kills the debugger. - @KronicDeth -
Protect from
nullcontainingFilefor modular names during completion. -
Wrap
syncPublisher(JDK_TABLE_TOPIC)ininvokeLaterrunWriteAction. - Dependencies are now counted as external to the project, so the Go To tools, like Go To Symbol will no longer include matches for both project sources and dependencies sources together, instead they will follow the more JetBrains native behavior
Read next Getting Started with Ecto Part 2: Migrations, Schemas, and Changeset
