I was just trying to use a component whose bower.json turned out to declare a dependency for "polymer": "~0.1.4", with a hard-coded version number. The rest of my project declares a similar dependency for "polymer": "Polymer/polymer#master" to get the latest version. When doing a Bower update, Bower indicated that I needed to resolve this conflict by picking which version of Polymer I wanted for the component called "polymer". Urk. While it's easy enough for me to tell Bower which version of Polymer to use, I now have no guarantee that the component requesting a specific version is going to run. (In fact, it doesn't.)
This seems like a dependency management problem of the first order. Is there some plan for how Polymer projects will eventually be able to include components that depend on different versions of Polymer? Part of this problem appears to be a Bower issue (not Polymer): as far as I can tell, the installed set of components ends up as a flat folder structure within the /components folder. Even if this is a Bower problem, though, Polymer's de facto standardization on Bower makes this a potentially limiting issue for the Polymer ecosystem. A separable part of the problem is the need to load multiple versions of Polymer simultaneously. Has that been ruled out? I recall that jQuery ultimately had to concede that, in practice, one couldn't always depend on every part of an app and every widget being constantly maintained to run with the very latest version of jQuery, and had to come up with a strategy supporting multiple versions running on the same page. Follow Polymer on Google+: plus.google.com/107187849809354688692 --- You received this message because you are subscribed to the Google Groups "Polymer" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/polymer-dev/33815a22-dedf-4067-8d6f-77a814ad0224%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
