acrazing/dpdm

What do the warnings mean?

Vithanco opened this issue · 4 comments

I cannot make sense of the warnings. E.g. I got this:
1) skip "node_modules/class-transformer/esm5/index.js", issuers: "src/Graphviz.ts", "tests/json.test.ts"
both issuers need a part of class-transformer.
Graphviz.ts for example has a needed import:
import { Type } from 'class-transformer'
So, what is the problem I am warned about here?

Maybe you want to give a short comment for this in your README.md.
Great software, btw!

The warning skip A, issuers B, C means both B and C dependent on A, and A is skipped for parsing dependency.

You can completely ignore the warnings if you just use dpdm to lookup circular dependency. And it could be hidden by adding the argument --no-warning in command line, for example:

dpdm --no-warning index.js

Thanks @acrazing!
I am still wondering: If B and C are dependent on A, why would you skip A?

Because it matches the --exclude option. The default value of --exclude is node_modules. You can set it as empty string to exclude nothing. For example:

dpdm --exclude '' index.js

Now it makes sense! Thank you! I think it would be good to write that connection between the exclude option and skipping somewhere. It's obvious in hindsight, but I was truly wondering. And I expect someone else will be as well. Another suggestion would be to call it exclude instead of skip in the warning text. Then it's obvious (to me).