Fork me on GitHub
#tools-deps
<
2019-11-21
>
miikka06:11:04

The Cloverage snapshot still seem to cause the problem. I get the warning with the following classpath by running java -cp ... clojure.main -e "(require 'clojure.tools.reader)":

/Users/miikka/.m2/repository/org/clojure/clojure/1.10.1/clojure-1.10.1.jar:/Users/miikka/.m2/repository/org/clojure/spec.alpha/0.2.176/spec.alpha-0.2.176.jar:/Users/miikka/.m2/repository/org/clojure/core.specs.alpha/0.2.44/core.specs.alpha-0.2.44.jar:/Users/miikka/.m2/repository/cloverage/cloverage/1.1.3-SNAPSHOT/cloverage-1.1.3-SNAPSHOT.jar

miikka06:11:46

I'm now wondering if :refer-clojure :exclude and AOT actually work correctly together.

miikka06:11:11

Should be easy to test, but I have to do something else now.

dominicm13:11:09

Depending on coverage goals, one could avoid the monroe shebang: https://www.crystae.net/posts/2019/11/08/two-shebang-papercuts/

Alex Miller (Clojure team)14:11:45

clj 1.10.1.489, tools.deps.alpha 0.8.599 * TDEPS-143 - Fix: use aliases when generating pom with -Spom * TDEPS-127 - Add: include pom resource directories in dep paths in -Spom (thanks Miikka Koskinen) * TDEPS-140 - Add: support for Maven server HTTP header properties (thanks Arne Brasseur) * Fix: Use of multiple aliases in Windows clj script * Add -Strace for debugging dep expansion

🎉 12
👍 8
mss19:11:27

getting a weird error when attempting to use depstar to build an uberjar:

Execution error (FileAlreadyExistsException) at com.sun.nio.zipfs.ZipFileSystem/createDirectory (ZipFileSystem.java:422).
META-INF/versions/9/

mss19:11:46

I can’t tell if I’ve configured something incorrectly in intellij, if I’m missing an option in building the classpath, or something else entirely. not much is coming up when googling around about a META-INF related FileAlreadyExistsException

mss19:11:11

if people have a recommendation for tooling to use to build standalone jars, I’m all ears as well

mss19:11:11

interestingly, using depstar to build a slim jar and attempting to run that jar results in a Error: Invalid or corrupt jarfile error

seancorfield19:11:31

@mss I'm at Conj so I won't be able to look at that until next week but if you can put a repro case up on github and create an issue against depstar with a link to your repro case, that would really help

👍 4
seancorfield19:11:01

You can't run a "slim jar" - you can only use that as a library (since it won't contain any dependencies).

jfntn21:11:30

Is there a supported approach for merging deps from a parent directory in a monorepo?

seancorfield23:11:03

@jfntn At work we use the CLJ_CONFIG environment variable to point to the "master" deps file so that it gets combined with the subproject's deps file within our monorepo.

seancorfield23:11:19

cd subproject
CLJ_CONFIG=.. clojure
(our master deps file is in ../versions not .. but the same principle applies)

jfntn18:11:28

Interesting but that would prevent using user defined aliases etc right?

jfntn18:11:21

Also how do you enforce the env var, do you have to use a makefile or some additional env tooling?

seancorfield23:11:04

@jfntn Yes, a build shell script that runs clojure one or more times so we can have a single command run multiple tasks, all with CLJ_CONFIG set. And, yes, no user-defined aliases can interfere with our build process. Any developer tooling is available via aliases in that master deps.edn file.