fork https://github.com/synrc/active

221V 344b85b080 erl21 catch stacktrace 1 year ago
src 344b85b080 erl21 catch stacktrace 1 year ago
.gitignore 6cccd10e49 fix export 1 year ago
LICENSE 0c82d62f3f active v1.9 init 3 years ago
README.md c31e3423b4 use config settings 1 year ago
mad 6cccd10e49 fix export 1 year ago

README.md

ACTIVE: Continuous Compilation - https://github.com/synrc/active v1.9 fork (upd to v6.1)

Active is a sync replacement that uses native file-system 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, "https://git.4dev.win/n4u/active.git", {tag, "6.2-erl19"}}}

add next code into your sys.config
for fs listen your apps/deps dirs
and active compiling erlydtl templates in apps/yor_app/priv/templates/

{fs,
 [{backwards_compatible, false}]
},
{active,
 [{compile_on_templates, true},
  {listen_paths, ["apps", "deps"]}
 ]}

NOTE: on Linux please install inotify-tools.

Credits

  • Maxim Sokhatsky
  • Vladimir Kirillov

OM A HUM