eugen.stan@netdava.com writes: > From: Eugen Stan > > * clojure-tools-deps-alpha was superserded by clojure-tools-deps > --- > gnu/packages/clojure.scm | 77 ++++++++++++++++++++++++++++++++++++---- > 1 file changed, 71 insertions(+), 6 deletions(-) > > diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm > index e28998b570..ee9cd19b0e 100644 > --- a/gnu/packages/clojure.scm > +++ b/gnu/packages/clojure.scm > @@ -203,14 +203,14 @@ (define (make-classpath libraries) > (define-public clojure-tools > (package > (name "clojure-tools") > - (version "1.11.1.1165") > + (version "1.11.1.1413") > (source > (origin > (method url-fetch) > (uri (string-append "https://download.clojure.org/install/clojure-tools-" > version > ".tar.gz")) > - (sha256 (base32 "1lg97waqfcgzr3dz5426fbc4kqcsavpbqil2iyjm1dw3zrfa8ysi")) > + (sha256 (base32 "1q0z71ifdxwvyy9gvq8mx8jbygf8cszrlhb3h22walfamnisbhwk")) > ;; Remove AOT compiled JAR. The other JAR only contains uncompiled > ;; Clojure source code. > (snippet > @@ -249,7 +249,7 @@ (define-public clojure-tools > ":")))))))) > (inputs (list rlwrap > clojure > - clojure-tools-deps-alpha > + clojure-tools-deps > java-commons-logging-minimal)) > (home-page "https://clojure.org/releases/tools") > (synopsis "CLI tools for the Clojure programming language") > @@ -419,9 +419,9 @@ (define-public clojure-data-xml > #:phases > (modify-phases %standard-phases > (add-before 'build 'delete-cljs-tests > - (lambda _ > - (delete-file "src/test/resources/clojure/data/xml/cljs_testsuite.clj") > - (delete-file "src/test/clojure/clojure/data/xml/test_cljs.clj")))))) > + (lambda _ > + (delete-file "src/test/resources/clojure/data/xml/cljs_testsuite.clj") > + (delete-file "src/test/clojure/clojure/data/xml/test_cljs.clj")))))) > (propagated-inputs (list clojure-data-codec)) > (synopsis "Clojure library for reading and writing XML data") > (description "@code{data.xml} is a Clojure library for reading and writing > @@ -572,7 +572,72 @@ (define-public clojure-tools-cli > work with command-line arguments.") > (license license:epl1.0))) > > +(define-public clojure-tools-deps > + (package > + (name "clojure-tools-deps") > + (version "0.18.1354") > + (home-page "https://github.com/clojure/tools.deps") > + (source (origin > + (method git-fetch) > + (uri (git-reference > + (url home-page) > + (commit (string-append "v" version)))) > + (file-name (git-file-name name version)) > + (sha256 > + (base32 > + "0ls5nixhsjjhf3qz8kbyhmks5lw7a25zxl46yrizbw7vba3mzrpl")))) > + (build-system clojure-build-system) > + (arguments > + `(#:source-dirs '("src/main/clojure" "src/main/resources") > + #:test-dirs '("src/test/clojure") > + #:doc-dirs '() > + ;; FIXME: Could not initialize class org.eclipse.aether.transport.http.SslSocketFactory > + #:tests? #f > + #:phases > + (modify-phases %standard-phases > + ;; FIXME: Currently, the S3 transporter depends on ClojureScript, > + ;; which is very difficult to package due to dependencies on Java > + ;; libraries with non-standard build systems. Instead of actually > + ;; packaging these libraries, we just remove the S3 transporter that > + ;; depends on them. > + (add-after 'unpack 'remove-s3-transporter > + (lambda _ > + (for-each delete-file > + (list > + (string-append > + "src/main/clojure/clojure/" > + "tools/deps/util/s3_aws_client.clj") > + (string-append > + "src/main/clojure/clojure/" > + "tools/deps/util/s3_transporter.clj") > + (string-append > + "src/test/clojure/clojure/" > + "tools/deps/util/test_s3_transporter.clj"))) > + (substitute* > + "src/main/clojure/clojure/tools/deps/util/maven.clj" > + (("clojure.tools.deps.util.s3-transporter") > + ""))))))) > + (propagated-inputs (list maven-resolver-api > + maven-resolver-spi > + maven-resolver-impl > + maven-resolver-util > + maven-resolver-connector-basic > + maven-resolver-provider > + maven-core > + maven-resolver-transport-http > + maven-resolver-transport-file > + clojure-tools-gitlibs > + clojure-tools-cli > + clojure-data-xml)) > + (synopsis "Clojure library supporting clojure-tools") > + (description "This package provides a functional API for transitive > +dependency graph expansion and the creation of classpaths.") > + (license license:epl1.0))) > > (define-public clojure-tools-deps-alpha > + ;; this was superseded by clojure-tools-deps > + ;; https://github.com/clojure/tools.deps.alpha > + ;; Keeping it to give upstream packages a chance to upgrade > (package > (name "clojure-tools-deps-alpha") > (version "0.14.1212") Upstream of Guix is the publishers of the software that Guix packages, so "upstream" in this case is probably the Clojure project. I don't think there's any particular concerns for those upstream or downstream of Guix in replacing clojure-tools-deps-alpha with clojure-tools-deps. The other thing with this change is that it should probably be two commits, separating the version change of clojure-tools from the other changes (even if the other changes cause clojure-tools to break before it's upgraded).