@tony.kay I think tick does depend on cljsjs
It just uses the foreign libs
We’re already automatically detecting this now for string requires inside the analyzed project but it’s obviously more involved to do for the the entire classpath (but I guess it would be possible)
https://github.com/cljdoc/cljdoc-analyzer/commit/c82af9bb9b04d63f057ac986dbb6fb607c59ac46
I think the right way to populate that list is by looking at deps.cljs
https://github.com/cljsjs/packages/blob/master/d3/build.boot#L25-L26 You need to find deps.cljs files, and look for their :provides in order to determine what js deps they need.
@martinklepsch Been a while since I read the code, does the analyzer have access to the classpath of the lib?
Yeah that might be a good approach. The analyzer does have access to the full classpath
But if you’re not using cljsjs, and instead getting things from npm directly, classpath doesn’t help you.
That’s where the commit above helps
right
I need to review the ecosystem story for how we are doing transitive npm deps (i.e. are we?)…as a library maintainer I should really know that
too few hours in a day
If you're compatible with an npm dependency in your library, then you might have :npm-deps in your deps.cljs.