dependency-cruiser

Validate and visualize dependencies. Your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.

MIT License

Downloads
1.5M
Stars
4.9K
Committers
47

Bot releases are hidden (Show)

dependency-cruiser - report all the rules! (v4.26.0)

Published by sverweij over 5 years ago

  • feature(report): enhance err html reporter with non-violated rules (#161)
  • feature(rules): make more rule descriptions contextually clear (#163)
  • refactor(ast-extractors): pull out the es node identification functions into estree-helpers.js (#164)
  • build(npm): ⬆️ acorn, acorn-loose, acorn-walk, ajv, regexp-tree, semver
dependency-cruiser - 'splain plz (v4.25.0)

Published by sverweij over 5 years ago

  • feature(err-html): adds explanations to violated rules (#154)
  • feature(report): adds 'err-long' terminal reporter that includes an explanation for each violation (#157)
  • feature(configs|cli): make the rule comments better fit to context and more actionable (#156)
  • bugfix(options): correctly process maxDepth specified in configs (#155)
  • refactor(main|report): move reporter stuff from main to report (#159)
  • refactor(report): simplify the dot reporter interface (#158)
  • build(npm): ⬆️ semver, semver-try-require, eslint, eslint-plugin-import
dependency-cruiser - put errors in html (v4.24.0)

Published by sverweij over 5 years ago

  • feature(err): adds an err-html reporter (#152)
  • feature(extract): more actionable default violation ordering (#151) - this affects both the err-html and the err reporter, who now sort by severity, rule name, from, to - err-html ascending, err descending. See below for a sample & cli documentation for details
  • feature(err): also emit the cruised dependencies in the err reporter
  • bugfix(resolve): also resolve modules that only occur in node_modules/@types (#153)

Chores:

  • build(npm): ⬆️ inquirer, resolve, eslint, tslint
  • bugfix(types): update type definitions (#150)

html report - sample usage & output

dependency-cruise --validate --output-type err-html -f dependency-report.html src test configs
dependency-cruiser - dynamic dependency filter (v4.23.0)

Published by sverweij over 5 years ago

Two features this time:

  • feature(extract|validate): add the 'dynamic' attribute to distinguish dynamic dependencies in rules (#147)
  • feature(extract): expand exclude filtering with a 'dynamic' attribute (#149)

As well as some more technical items:

  • bugfix(extract): also put args in summary for api calls (#148)
  • refactor(main): simplify dot reporter classification
  • refactor(main): remove dup options validation + document why the rest of the options is validated
  • ⬆️ typescript
dependency-cruiser - detect dead wood (v4.22.0)

Published by sverweij over 5 years ago

  • feature(*): adds a 'reachable' attribute for detecting dead wood (#142)
  • feature(report): err, teamcity: for module-only rule violations emit the module name once (#143)
  • bugfix(orphan): also make orphan checks work in 'allowed' (#146)
  • refactor(doc): move stuff from cli to the config doc + add a FAQ entry on taming graphs (#145)

Also some regular maintenance:

  • bugfix(report): move the boringModuleColorScheme.json to test (#144)
  • bugfix(test): rename test/extract/derivations -> test/extract/derive
  • doc(site): add link to dependency-cruiser's own dependency graph
  • build(npm): ⬆️ pnp-webpack-plugin
dependency-cruiser - TeamCity (v4.21.0)

Published by sverweij over 5 years ago

  • feature(report): adds a teamcity reporter (#138) - thanks @ulrichb for requesting the feature and for testing and suggestion during development!
dependency-cruiser - Hello, you placeholder-less template literals in dynamic imports (v4.20.0)

Published by sverweij over 5 years ago

functionality:

  • feature(extract): recognize dynamic imports with placeholder-less template literals (#137)

maintenance:

  • build(npm): ⬆️ semver, semver-try-require, tslint, typescript
  • refactor(report): simplify the reporter contract (#135)
  • refactor(extract): keep the call to the reporter in main (#134)
  • bugfix(report): adds jsdoc (#139)
dependency-cruiser -

Published by sverweij over 5 years ago

  • build(npm): ⬆️ regexp-tree, semver, semver-try-require (and some devDependencies)
  • feature(test): adds a load test MVP (#132)
dependency-cruiser - better init (v4.19.0)

Published by sverweij over 5 years ago

  • feature(main): only load the ts paths plugin when the tsconfig contains a baseUrl (#131)
  • feature(init): ask if typescript pre-compilation dependencies should be regarded as well (#130)
  • feature(init): make the one-shot inits a little smarter (8295365)
  • feature(init): also add _stream_wrap to the deprecated rules in the init templates
  • build(npm): ⬆️ regexp-tree, resolve, chai-json-schema
  • doc(readme|faq): update anchors to restructured FAQ
dependency-cruiser - run more, remember less (v4.18.0)

Published by sverweij over 5 years ago

  • feature(extract): enable multiple runs in one session (#129)
  • feature(rules): add _stream_wrap to the no-deprecated-core rule - as it's deprecated since node 10, and removed in node 12
  • 📖 various copy tweaks in the documentation (readability, ordering, spelling, grammar)
  • build(npm): ⬆️ glob, nyc, yarn
dependency-cruiser - Dynamic import (v4.17.0)

Published by sverweij over 5 years ago

  • feature(extract): add support for javascript dynamic imports (#126) and (typescript) type imports
  • doc(faq): copy overhaul + add faq entry in the readme
  • build(npm): ⬆️ strip-json-comments, eslint-plugin-node, nyc
  • refactor(extract): pull out UK function
dependency-cruiser -

Published by sverweij over 5 years ago

  • bugfix(main): normalize paths passed after making them relative (#124) - fixes #123.
    Thanks @waningflow for raising the issue and for testing the bugfix!
  • build(npm): ⬆️ regexp-tree, resolve, typescript, upem
  • ci(gitlab|travis): swap out node 11 for node 12 in the build matrices (not in appveyor as that doesn't support node 12 yet).
dependency-cruiser - Richer JSON (v4.16.0)

Published by sverweij over 5 years ago

  • feature(json): add used ruleset to the json output (#122)
  • build(npm): ⬆️ pnp-webpack-plugin
  • build(test): add the command line globbing test to check:full
dependency-cruiser -

Published by sverweij over 5 years ago

  • build(npm): ⬆️ handlebars, inquirer and the devDependencies coffeescript, eslint-plugin-import, typescript
dependency-cruiser -

Published by sverweij over 5 years ago

  • fix(extract): parse and analyze only once (#114)
  • bugfix(extract): also detect dynamic imports in ts-precompilation-deps (#119)
  • fix(test): make yarn pnp integration test work on node 11 (#118)
  • build(npm): ⬆️ commander, semver, semver-try-require, coffeescript, eslint, mocha, tslint, typescript, yarn
  • feature(doc): snazzier dependency graph (#120)
dependency-cruiser -

Published by sverweij over 5 years ago

  • bugfix(resolve): repairs preserve-symlink behavior to pre-4.14.0 behavior (#116)
  • build(npm): ⬆️ eslint, typescript
  • ci(gitlab): make node versions more explicit
dependency-cruiser - include only (v4.15.0)

Published by sverweij over 5 years ago

  • feature(extract): add an 'includeOnly' option (#110, #112)
    This makes it easier to focus on the internal structure of a module; e.g. ...
depcruise --include-only '^src/report' --config --output-type dot src | dot -T svg > dependencygraph.svg

... will only show dependencies within src/report. You can also pass this in the includeOnly option in the configuration format.

  • feature(dot): tweaks the line widths and colors + makes the generated graph a "strict digraph" so there's a maximum of 1 edge between vertices (#113 - addresses the visual part of #111)

Also some smaller maintenance issues:

  • build(npm): ⬆️ handlebars, eslint, tslint
  • build(test): add the integration test to check:full
  • ci(appveyor|travis): run on node 11 in preparation of upcoming node 12 LTS
dependency-cruiser -

Published by sverweij over 5 years ago

dependency-cruiser - Plug'n'Play (v4.14.0)

Published by sverweij over 5 years ago

This release contains several features that makes working with Yarn Plug'n'Play possible and practical to work with:

  • feature(*): add support for yarn Plug'n'Play external module resolution strategy (#105)
  • feature(extract): add the 'dependencyTypes' attribute to the doNotFollow option (#109)
  • feature(cli): make config extension mechanism work in yarn pnp environments as well (#107)

It also contains several normal maintenance updates:

  • bugfix(extract): make exclude pattern matching platform independent (#106)
  • bugfix(cli): remove the superfluous 'undetermined' from the no-non-package-json rules in the config templates
  • build(npm): ⬆️ ajv, pnp-webpack-plugin, eslint, symlink-dir, tslint
  • ci(travis): add node 11 to the matrix (as per the start of April, node 12 should be supported)
dependency-cruiser -

Published by sverweij over 5 years ago

  • bugfix(dot): output correct url's, also when the prefix is an uri (#104)
  • refactor(*): normalize normalisations & early spring cleaning (#102)
  • feature(cli): add simple tsconfig and webpack config detection to --init (#101)
  • bugfix(npm): remove superfluous dependency (awesome-typescript-loader) - should remove the peer dependency warning emitted when you install dependency-cruiser
  • bugfix(test): clean up some tsconfig fixtures to be legal
  • feature(err): create room for extra information in the output (#96)
  • build(npm): ⬆️ acorn, ajv, mocha, tslint, typescript, upem