Releases: dragonwasrobot/ex_rerun
Release list
Ignore pattern filter
Added
Adds the property ignore_pattern to the ex_rerun configuration:
config :ex_rerun,
...
ignore_pattern: ~r{\.?#(.)}which provides some finer granularity to ignore temporary or autogenerated files
that happens to have a file type that is in the file_types list. For example,
the pattern above, ~r{\.?#(.)}, ignores Emacs auto-save and interlocking files
as these files happen to have similar filenames as the files they are related to
but prepended with a # or .#. The default value for ignore_pattern is
nil, meaning no further filtering is performed.
Bumps the version Elixir version used for compiling ex_rerun to 1.9.
Pluggable tasks
Changed
Changes the configuration format to the following:
config :ex_rerun,
scan_interval: 4000,
silent: false,
file_types: [".ex", ".exs", ".eex", ".json"],
paths: ["lib", "priv"],
tasks: [:elixir]where:
scan_intervalspecifies the number of ms to wait between rerun checks,silenttoggles whether to print the output of thetasksregistered, every
timeex_rerunruns,file_typeslists which file types that will trigger a rerun when changed,pathslists which folders to monitor, andtasksenumerates the mix tasks to run each time a code modification
occurs, possible built-in values are::elixir,:test,:escript,
where:elixirrecompiles Elixir source code (same asMix.Tasks.Compile.Elixir),:testreruns any mix tests in the project (same asMix.Tasks.Test), andescriptrebuilds a escript file (same asMix.Tasks.Escript.Build).
Furthermore, tasks can also include custom mix tasks. For example, the hex
package elm_compile defines the
Mix.Tasks.Compile.Elm task which allows mix to also compile Elm files in a mix
project. An example project config using ex_rerun and elm_compile might look
like so:
config :ex_rerun,
file_types: [".elm", ".ex", ".exs", ".eex", ".json"],
paths: ["lib", "priv", "web"],
tasks: [:elixir, Mix.Tasks.Compile.Elm]Another example of a custom mix task could be to generate API documentation for
a project based on a set of RAML files.
Initial release
Added
- Support for monitoring Elixir and other source files and running mix tasks on
code modification changes using the following configuration parameters:
# Default values
config :ex_rerun,
scan_interval: 4000,
silent: false,
elm: false,
test: false,
escript: false,
paths: ["lib", "priv"],
file_types: [".ex", ".exs", ".eex", ".json"]where:
scan_intervalspecifies the number of ms to wait between rerun checks,silenttoggles whether to print every timeex_rerunrecompiles,elmtoggles whether to run the elm compilation task on recompile, requires
elm_compile to be installed as a
project dependency,testtoggles whether to also run mix test after each recompilation,escripttoggles whether to run the escript compilation task on recompile,pathslists which folders to monitor, andfile_typeslists which files that will trigger a rerun when changed.