Skip to content
This repository was archived by the owner on May 6, 2019. It is now read-only.

v0.3.0

Choose a tag to compare

@sverweij sverweij released this 16 May 09:13
· 240 commits to master since this release

Changes

  • Replaced madge with an own dependency extractor (which uses acorn + acorn_loose) - rationale below.
  • 🐛fixed in the process:
    • Dependencies outside the file's directory are now followed on their own.
    • Flat-defines now also contain the files that are no dependency of others.
    • (es6) re-exports are now considered a dependency too.
    • The first dependency of a flat-define is now printed on the same line as the define (💄 )
  • Replaced jscs + jshint with eslint
  • ⬆️ lodash, istanbul, nsp, npm-check-updates
  • supports nodejs 4, 5 and 6 (rationale below)

Even though I test thoroughly (Test Coverage 😉 ) I might have introduced new bugs. If so please report them ❤️ .

So, why replace madge? Madge is working, isn't it?

  • Madge has at least one dependency labeled as insecure by the node security project. Which makes madge and js-makedepend labeled as insecure as well.
  • Madge is not very small and contains a lot of features js-makedepend does not use.
  • Upgrading madge's dependencies is non-trivial - the new (more secure) version of the dependency has a completely new API.
  • Other dependency scanners either use madge (e.g. dependo) or were more time consuming to figure out how to use than rolling my own.
  • Getting dependencies from an abstract syntax tree is not a hard problem.

You de-supported nodejs 0.12? Why?

I write this in my spare time, for fun. js-makedepend is mostly ES6 now (fun) which won't run on 0.12. Making it run on 0.12 would either mean writing older-style javascript (not fun) or integrating a transpiler train (not fun either ). And my spare time is limited...

Moreover, node 4 & 5 have been walking the streets for quite some time, and 6 has just been released.

  • If you need js-makedepend to run on 0.12 you can either
    • use version 0.2.4
    • or send me enough money to convince me to integrate a transpiler train

All changes

v0.2.4...v0.3.0