Skip to content

v0.5.0

Compare
Choose a tag to compare
released this 15 Aug 17:28
· 1038 commits to master since this release
  • 💥 Fix Fly's own flyfile.js to compile with fly. If you have fly installed globally just type fly to compile fly, otherwise type bin/index. For full instrumentation type: DEBUG="fly*" fly or env 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 using fly-* 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 correct this 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.