New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Why an extra layer of indirection? #265
Comments
Another thing the indirection provides is the ability for the client to avoid loading a large Skylark file if it does not use it. But I consider that to be a minor cost. I'd like for my Maven repos to be able to be loaded in a single repositories() call, just like all my other repositories. |
This is it. For library/tool maintainers, we recommend the approach of exporting a list of coordinate strings, and concatenating it into the consuming repository's Does this clarify things? |
I'll close this issue for now, please let me know if you have a proposal to make regular non-pinned workflows work in conjunction with the pinned mode (so users can switch between the two easily) without the indirection of loading from a generated bzl. |
Consider publishing a
example_tool
workspace.Normally, the client workspace would have
However, if I change to using this project, the client now has to
The last two statements seem to be entirely superfluous, especially when the client requires no direct interaction with Maven artifacts. (E.g. Google Closure Compiler is a Java project with third party/Maven dependencies, but it's used by JavaScript developers that hardly need to understand the first thing about JVM/Maven/classpaths.)
I think this is an artifact of wanting to operate in a non-pinned mode(?).
In any case the extra WORKSPACE complexity imposed on clients is a regression compared to bazel-deps or hand-coded dependencies.
The text was updated successfully, but these errors were encountered: