v0.5.0
-
💥 Fix Fly's own
flyfile.js
to compile with fly. If you have fly installed globally just typefly
to compile fly, otherwise typebin/index
. For full instrumentation type:DEBUG="fly*" fly
orenv DEBUG="fly*" fly
. -
💥 Upgrade to
[email protected]
that featured a complete rewrite and several improvements. -
💥 Fix bug where plugin closures created by
Fly.proto.filter
where bound to the fly instance.filter
instead of the Fly instance that would exist during concurrent execution.Loading plugins (invoking each plugin's default export function) occurs only once during Fly's instantiation by the CLI. Some plugins may inject dependencies directly into the Fly instance or use
Fly.proto.filter
at this time. Before,.filter
would create a closure by means of an arrow function bound to the new Fly instance. This would break concurrent tasks usingfly-*
plugins as described by #73.Each task running in parallel is invoked bound to a copy of the Fly instance which is obtained via
Object.create(fly)
. This fix does not bind the closure created in.filter
to any object, thus the correctthis
reference to any Fly instance is always picked up. -
Fix encoding issue during
.source
→.target
simple file copies of non-text files. Fixes #72 -
Fix bug in
Fly.proto.target
where target directory name was not specified, and only the new file name was used to copy to target. The result was each.target
write operation would create a flat tree skipping subdirectories and writing everything to the target directory. -
Improve
Fly.proto.target
with more instrumentation and simplify recursive reduce filter. -
Improve multi tasking examples under
examples/multi
. -
Review examples directory and refactor inconsistencies.