Regression: Improper namespacing of inline deps causes collisions
frenchy64 opened this issue · 6 comments
There are several dependencies that are inlined without a namespace prefix in 1.0.1 (after upgrading from 0.6.1). See all the files not starting with pandect
in the file list of the 1.0.1 jar below:
Seems to be caused by 42f0302
META-INF/MANIFEST.MF
project.clj
Util.java
clojure/
clojure/lang/
clojure/lang/PersistentUnrolledVector$Card1$1.class
clojure/lang/PersistentUnrolledVector$Card2.class
clojure/lang/PersistentUnrolledVector$Card0.class
clojure/lang/PersistentUnrolledMap$Card2$1.class
clojure/lang/PersistentUnrolledVector$Card1$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledMap$Card6$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledMap$Card2$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledVector$Card5$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledMap$Card3$1.class
clojure/lang/PersistentUnrolledVector$Card4.class
clojure/lang/PersistentUnrolledVector$Card0$1.class
clojure/lang/PersistentUnrolledVector$Card6.class
clojure/lang/PersistentUnrolledMap$Card3$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledVector$Card4$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledVector$Card1.class
clojure/lang/PersistentUnrolledVector.java
clojure/lang/PersistentUnrolledMap$Card1$1.class
clojure/lang/PersistentUnrolledMap$Transient.class
clojure/lang/PersistentUnrolledMap.class
clojure/lang/PersistentUnrolledVector.class
clojure/lang/PersistentUnrolledVector$Card2$1.class
clojure/lang/PersistentUnrolledVector$Card3.class
clojure/lang/PersistentUnrolledVector$Card3$1.class
clojure/lang/PersistentUnrolledVector$Transient.class
clojure/lang/PersistentUnrolledVector$Card5.class
clojure/lang/PersistentUnrolledMap$Card0$1.class
clojure/lang/PersistentUnrolledMap$Card6.class
clojure/lang/PersistentUnrolledMap$Card5$1.class
clojure/lang/PersistentUnrolledMap.java
clojure/lang/PersistentUnrolledVector$Card2$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledMap$Card5$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledVector$Card6$1.class
clojure/lang/PersistentUnrolledMap$Card4.class
clojure/lang/PersistentUnrolledMap$Card1$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledVector$Card6$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledMap$Card0.class
clojure/lang/PersistentUnrolledMap$Card4$1.class
clojure/lang/PersistentUnrolledMap$Card2.class
clojure/lang/PersistentUnrolledVector$Card5$1.class
clojure/lang/PersistentUnrolledMap$Card5.class
clojure/lang/PersistentUnrolledMap$Card6$1.class
clojure/lang/PersistentUnrolledMap$Card3.class
clojure/lang/PersistentUnrolledMap$Card1.class
clojure/lang/PersistentUnrolledVector$Card3$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledMap$Card4$UnrolledChunkedSeq.class
clojure/lang/PersistentUnrolledVector$Card4$1.class
pandect/
pandect/impl/
pandect/impl/checksum.clj
pandect/impl/message_digest.clj
pandect/impl/bouncy_castle.clj
pandect/impl/message_digest/
pandect/impl/message_digest/signature.clj
pandect/impl/message_digest/hash.clj
pandect/impl/message_digest/hmac.clj
pandect/buffer.clj
pandect/target/
pandect/target/srcdeps/
pandect/target/srcdeps/pandect/
pandect/target/srcdeps/pandect/riddley/
pandect/target/srcdeps/pandect/riddley/v0v2v0/
pandect/target/srcdeps/pandect/riddley/v0v2v0/riddley/
pandect/target/srcdeps/pandect/riddley/v0v2v0/riddley/walk.clj
pandect/target/srcdeps/pandect/riddley/v0v2v0/riddley/compiler.clj
pandect/target/srcdeps/pandect/clj_tuple/
pandect/target/srcdeps/pandect/clj_tuple/v0v2v2/
pandect/target/srcdeps/pandect/clj_tuple/v0v2v2/clj_tuple.clj
pandect/target/srcdeps/pandect/potemkin/
pandect/target/srcdeps/pandect/potemkin/v0v4v5/
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/walk.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/namespaces.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/utils.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/types.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/template.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/collections.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin/macros.clj
pandect/target/srcdeps/pandect/potemkin/v0v4v5/potemkin.clj
pandect/algo/
pandect/algo/keccak_512.clj
pandect/algo/ripemd320.clj
pandect/algo/crc32.clj
pandect/algo/sha3_224.clj
pandect/algo/siphash.clj
pandect/algo/blake2b_384.clj
pandect/algo/gost.clj
pandect/algo/sha3_384.clj
pandect/algo/ripemd256.clj
pandect/algo/siphash48.clj
pandect/algo/sha512.clj
pandect/algo/sha1.clj
pandect/algo/md5.clj
pandect/algo/md4.clj
pandect/algo/adler32.clj
pandect/algo/md2.clj
pandect/algo/sha3_256.clj
pandect/algo/blake2b_256.clj
pandect/algo/ripemd160.clj
pandect/algo/sha224.clj
pandect/algo/sha384.clj
pandect/algo/keccak_224.clj
pandect/algo/whirlpool.clj
pandect/algo/sha3_512.clj
pandect/algo/blake2b_512.clj
pandect/algo/keccak_384.clj
pandect/algo/keccak_256.clj
pandect/algo/tiger.clj
pandect/algo/ripemd128.clj
pandect/algo/blake2b_160.clj
pandect/algo/sha256.clj
pandect/core.clj
pandect/utils/
pandect/utils/convert.clj
pandect/utils/bouncy_castle_provider.clj
pandect/gen/
pandect/gen/signature_generator.clj
pandect/gen/core.clj
pandect/gen/hmac_generator.clj
pandect/gen/hash_generator.clj
pandect/gen/protocol_utils.clj
pandect/gen/function_utils.clj
pandect/codegen.clj
riddley/
riddley/Util.java
riddley/Util.class
potemkin/
potemkin/PersistentMapProxy$1.class
potemkin/PersistentMapProxy$IEquality.class
potemkin/PersistentMapProxy$MapEntry.class
potemkin/PersistentMapProxy$IMap.class
potemkin/PersistentMapProxy.class
potemkin/PersistentMapProxy.java
@frenchy64 Thanks for reporting this! Could you paste any stacktrace that you're seeing, just so this issue is discoverable for people with similar problems?
This should - in theory - be fixed by enabling Java class repackaging in mranderson. I'll just need to check if there was a reason I originally disabled it.
Okay, short immediate update: The repackaging misses some of the class files, namely it prefixes all the clojure.lang
ones, but ignores the potemkin
and riddley
ones. I'm investigating...
And another follow-up: That issue seems to be fixed in [thomasa/mranderson "0.5.3"]
. 🎉 I'll notify you once there has been a new release of pandect
with appropriately packaged Java classes.
Aaaaand... one step back. Inlining potemkin/riddley is currently not possible because of benedekfazekas/mranderson#52. So, I think I'm going for the nuclear option of taking the one (!) function from potemkin
, adding it directly to the codebase and removing the two problematic dependencies...
Could you paste any stacktrace that you're seeing, just so this issue is discoverable for people with similar problems?
It was discovered by lein-collisions in a project that depends on both pandect and clj-tuple.
File collisions:
clojure/lang/PersistentUnrolledMap$Transient.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card0$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card5$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card4$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card5$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card1$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card4.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
potemkin/PersistentMapProxy.java -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/potemkin/potemkin/0.4.5/potemkin-0.4.5.jar
clojure/lang/PersistentUnrolledVector$Card2.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
potemkin/PersistentMapProxy$IEquality.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/potemkin/potemkin/0.4.5/potemkin-0.4.5.jar
clojure/lang/PersistentUnrolledVector$Card0$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card2$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card3.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card6$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card1$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card3$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card3$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card5$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card4$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
riddley/Util.java -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/riddley/riddley/0.2.0/riddley-0.2.0.jar
clojure/lang/PersistentUnrolledMap$Card3$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
potemkin/PersistentMapProxy$MapEntry.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/potemkin/potemkin/0.4.5/potemkin-0.4.5.jar
clojure/lang/PersistentUnrolledMap.java -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector.java -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card0.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card6.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card4.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card1$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card2.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card3$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
potemkin/PersistentMapProxy$IMap.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/potemkin/potemkin/0.4.5/potemkin-0.4.5.jar
clojure/lang/PersistentUnrolledMap$Card5.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
riddley/Util.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/riddley/riddley/0.2.0/riddley-0.2.0.jar
clojure/lang/PersistentUnrolledMap$Card2$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
potemkin/PersistentMapProxy$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/potemkin/potemkin/0.4.5/potemkin-0.4.5.jar
Util.java -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/riddley/riddley/0.2.0/riddley-0.2.0.jar
potemkin/PersistentMapProxy.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/potemkin/potemkin/0.4.5/potemkin-0.4.5.jar
clojure/lang/PersistentUnrolledMap$Card6$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card3.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card6$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card2$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card1$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card5$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Transient.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card5.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card2$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card4$1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card6.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledMap$Card1.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card6$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card4$UnrolledChunkedSeq.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar
clojure/lang/PersistentUnrolledVector$Card0.class -- 2 collisions:
-- /home/runner/.m2/repository/pandect/pandect/1.0.1/pandect-1.0.1.jar
-- /home/runner/.m2/repository/clj-tuple/clj-tuple/0.2.2/clj-tuple-0.2.2.jar