Recompilation and Reloading on FileSystem changes
Erlang Elixir
Pull request Compare This branch is 27 commits behind synrc:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
.gitignore
LICENSE
README.md
mix.exs
rebar.config

README.md

ACTIVE

Active is sync replacement that uses native FileSystem OS async listeners to compile and reload Erlang files, DTL templates and other files. It acts as FS subscriber under supervision and uses MAD under the hood.

Listen Folders

One-level

app(App,["ebin",Module|_]) -> load_ebin(App,Module);
app(App,["priv"|_]) -> compile(App);
app(App,["src"|_]) -> compile(App);
app(_,_)-> ok.

Two-level

otp(["deps",App|Rest]) -> app(App,Rest);
otp(["apps",App|Rest]) -> app(App,Rest);
otp([Some|Path]) -> app(top(),[Some|Path]);
otp(_) -> ok.

Usage

On Mac/Linux/Windows just include into your rebar.config:

{active, ".*", {git, "git://github.com/synrc/active", {tag,"0.5"}}}

NOTE: on Linux please install inotify-tools.

Credits

  • Maxim Sokhatsky
  • Vladimir Kirillov

OM A HUM