UNPKG

dependency-cruiser

Version:

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

79 lines (78 loc) 3.31 kB
{ "forbidden": [{ "name": "not-to-test", "comment": "Don't allow dependencies from outside the test folder to test", "severity": "error", "from": { "pathNot": "^(test|spec)" }, "to": { "path": "^(test|spec)" } },{ "name": "not-to-spec", "comment": "Don't allow dependencies to (typescript/ javascript/ coffeescript) spec files", "severity": "error", "from": {}, "to": { "path": "\\.spec\\.(js|ts|ls|coffee|litcoffee|coffee\\.md)$" } },{ "name": "no-circular", "severity": "warn", "comment": "Warn in case there's circular dependencies", "from": {}, "to": { "circular": true } },{ "name": "no-orphans", "severity": "info", "comment": "Inform in case there's orphans hiding in the code base", "from": { "orphan": true, "pathNot": "\\.d\\.ts$" }, "to": {} },{ "name": "no-deprecated-core", "comment": "Warn about dependencies on deprecated core modules.", "severity": "warn", "from": {}, "to": { "dependencyTypes": ["core"], "path": "^(punycode|domain|constants|sys|_linklist)$" } },{ "name": "no-deprecated-npm", "comment": "These npm modules are deprecated - find an alternative.", "severity": "warn", "from": {}, "to": { "dependencyTypes": ["deprecated"] } },{ "name": "not-to-unresolvable", "comment": "Don't allow dependencies on modules dependency-cruiser can't resolve to files on disk (which probably means they don't exist)", "severity": "error", "from": {}, "to": { "couldNotResolve": true } },{ "name": "not-to-dev-dep", "severity": "error", "comment": "Don't allow dependencies from src/app/lib to a development only package", "from": { "path": "^(src|app|lib)", "pathNot": "\\.spec\\.(js|ts|ls|coffee|litcoffee|coffee\\.md)$" }, "to": { "dependencyTypes": ["npm-dev"] } },{ "name": "no-non-package-json", "severity": "error", "comment": "Don't allow dependencies to packages not in package.json (except from within node_modules)", "from": { "pathNot": "^node_modules"}, "to": { "dependencyTypes": ["unknown", "undetermined", "npm-no-pkg", "npm-unknown"] } },{ "name": "optional-deps-used", "severity": "info", "comment": "nothing serious - but just check you have some serious try/ catches around the import/ requires of these", "from": {}, "to": { "dependencyTypes": ["npm-optional"] } },{ "name": "peer-deps-used", "comment": "Warn about the use of a peer dependency (peer dependencies are deprecated with the advent of npm 3 - and probably gone with version 4).", "severity": "warn", "from": {}, "to": { "dependencyTypes": ["npm-peer"] } },{ "name": "no-duplicate-dep-types", "comment": "Warn if a dependency you're actually using occurs in your package.json more than once (technically: has more than one dependency type)", "severity": "warn", "from": {}, "to": { "moreThanOneDependencyType": true } }], "options": { "doNotFollow": "node_modules" } }