Compiler complains of missing provides when there is circular dependency in node_modules.
Cause is the order of the 'goog.addDependency' statements in out/cljs_deps.js
goog.addDependency("../node_modules/lib1.js", (link: 'lib1'), (link: 'lib2')); // This line will fail since 'lib2' is not yet provided
goog.addDependency("../node_modules/lib2.js", (link: 'lib2'), (link: 'lib1'));
Example of affected node_modules: apollo-client 1.9.2
I'm not sure if this is a closure compiler limitation or explicitly unsupported, but it does reduce the number of node packages that can be included using node_modules.
Current workaround is to rewrite the library code to not have circular deps or to switch to cljsjs.