griffinbank / griffinbank/rules_clojure
Issue with repository with many deps.edn files
Nobody has claimed this yet.
- Dominant language
- Clojure
- Stars
- 60
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
Hello
I'm trying to test this library out for migrating a Clojure monorepo into a polyglot monorepo. I am personally not a Clojure dev and have limited experience with the tooling. Our structure is such that we have many directories containing deps.edn files
dir1/
src/
deps.edn
dir2/
src/
deps.edn
the deps.edn inside dir2 will look something like
{
:paths
["src"]
:deps
{
...
local-library { :local/root ../dir1/, :deps/manifest :deps }
}
}
What I'm assuming its doing is that it's saying is that it is fetching the dependency from dir1 and specifying that the manifest file is from the :deps key stored in dir1, including that in the repository :local/root and then naming it local-library.
However, when I try to set up my clojure_tools_deps and gen_srcs to point at dir2, it gives me the following error:
Could not find metadata deps-ancient:deps-ancient/maven-metadata.xml in local
I'm guessing this is something to do with it not being able to recursively traverse the deps.edn so some transitive dependency specified in the dir1 library is missing?
Any advice on how to resolve this or corrections to my assumptions here would be helpful! This looks great and exactly like what we need.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the setup with clojure_tools_deps and gen_srcs pointed at dir2, using dir1 as its local dependency and the shown deps.edn files. Investigate the deps-ancient/maven-metadata.xml error and determine whether nested deps.edn dependencies are supported; done means the behavior is corrected or the limitation and required configuration are documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100