* [bug#58869] [PATCH] Add clojure-cheshire and all of its dependencies
@ 2022-10-29 17:15 Baptiste Strazzulla
2023-05-05 18:07 ` Baptiste Strazzulla
0 siblings, 1 reply; 2+ messages in thread
From: Baptiste Strazzulla @ 2022-10-29 17:15 UTC (permalink / raw)
To: 58869
[-- Attachment #1.1: Type: text/plain, Size: 311 bytes --]
Hello Guix maintainers,
I've been trying to package clojure-lsp<https://github.com/clojure-lsp/clojure-lsp> and clj-kondo<https://github.com/clj-kondo/clj-kondo>. This is just the `clojure-cheshire` milestone but I figured it would be best to pause now and submit what I already have.
Regards,
Baptiste
[-- Attachment #1.2: Type: text/html, Size: 1672 bytes --]
[-- Attachment #2: 0001-gnu-Add-clojure-camel-snake-kebab.patch --]
[-- Type: application/octet-stream, Size: 1984 bytes --]
From 457dc4443cdbfeeaef521caa651ef9830e348d27 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sun, 25 Sep 2022 13:32:43 +0200
Subject: [PATCH 01/13] gnu: Add clojure-camel-snake-kebab
* gnu/packages/clojure.scm (clojure-camel-snake-kebab): New variable.
---
gnu/packages/clojure.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 622e43ac48..f844f8310e 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -610,6 +611,28 @@ (define-public clojure-tools-deps-alpha
dependency graph expansion and the creation of classpaths.")
(license license:epl1.0)))
+(define-public clojure-camel-snake-kebab
+ (package
+ (name "clojure-camel-snake-kebab")
+ (version "0.4.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/clj-commons/camel-snake-kebab")
+ (commit (string-append "version-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "13zr58x4ahzms33hdiibfillwaj9sqb751kar2rq9qmqjkd1pglm"))))
+ (build-system clojure-build-system)
+ (arguments
+ '( #:doc-dirs '()))
+ (home-page "https://github.com/clj-commons/camel-snake-kebab")
+ (synopsis "Clojure[Script] library for word case conversions")
+ (description "Clojure-camel-snake-kebab is a Clojure[Script] library for
+word case conversions")
+ (license license:epl1.0)))
+
(define-public clojure-tools-gitlibs
(package
(name "clojure-tools-gitlibs")
--
2.38.0
[-- Attachment #3: 0002-gnu-Add-java-fasterxml-jackson-core-2.12.2.patch --]
[-- Type: application/octet-stream, Size: 2265 bytes --]
From 8d1693631ff725582413b7f70d533d42e0615c98 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sun, 25 Sep 2022 15:44:02 +0200
Subject: [PATCH 02/13] gnu: Add java-fasterxml-jackson-core-2.12.2
* gnu/packages/java.scm (java-fasterxml-jackson-core-2.12.2): New variable.
---
gnu/packages/java.scm | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 3ab324cce9..265951ca2b 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -19,6 +19,7 @@
;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
+;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -10032,8 +10033,8 @@ (define-public java-fasterxml-jackson-core
"build/test-classes")
#t)))))
(native-inputs
- `(("junit" ,java-junit)
- ("hamcrest" ,java-hamcrest-core)))
+ (list java-junit
+ java-hamcrest-core))
(home-page "https://github.com/FasterXML/jackson-core")
(synopsis "Low-level streaming parser and generator abstractions")
(description "This package contains core low-level incremental
@@ -10042,6 +10043,21 @@ (define-public java-fasterxml-jackson-core
(parser, generator) that handle JSON format.")
(license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing
+(define-public java-fasterxml-jackson-core-2.12.2
+ (package
+ (inherit java-fasterxml-jackson-core)
+ (name "java-fasterxml-jackson-core")
+ (version "2.12.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/FasterXML/jackson-core")
+ (commit (string-append "jackson-core-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1kr051mqj2kqw8i247bmcwf9a1l6zxl4mdpp39dlf5kh6820wzv7"))))))
+
(define-public java-fasterxml-jackson-databind
(package
(name "java-fasterxml-jackson-databind")
--
2.38.0
[-- Attachment #4: 0003-gnu-Add-java-fasterxml-jackson-annotations-2.12.2.patch --]
[-- Type: application/octet-stream, Size: 1908 bytes --]
From 4037c8dd2700c409187a2e4b4e4b8f79e9344e77 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sun, 25 Sep 2022 15:59:31 +0200
Subject: [PATCH 03/13] gnu: Add java-fasterxml-jackson-annotations-2.12.2
* gnu/packages/java.scm (java-fasterxml-jackson-annotations-2.12.2): New variable.
---
gnu/packages/java.scm | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 265951ca2b..8acf4e8dda 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -9972,7 +9972,7 @@ (define-public java-fasterxml-jackson-annotations
#:source-dir "src/main/java"
#:test-dir "src/test"))
(native-inputs
- `(("junit" ,java-junit)))
+ (list java-junit))
(home-page "https://github.com/FasterXML/jackson-annotations")
(synopsis "General purpose annotations for the Jackson Data Processor")
(description "This package contains general purpose annotations for the
@@ -9980,6 +9980,21 @@ (define-public java-fasterxml-jackson-annotations
not included are ones that require dependency to the Databind package.")
(license license:asl2.0)))
+(define-public java-fasterxml-jackson-annotations-2.12.2
+ (package
+ (inherit java-fasterxml-jackson-annotations)
+ (name "java-fasterxml-jackson-annotations")
+ (version "2.12.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/FasterXML/jackson-annotations")
+ (commit (string-append "jackson-annotations-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rl42dma59mig84z5gf5szz7z83b1smbi782rrdq33p1qw394pzy"))))))
+
(define-public java-fasterxml-jackson-core
(package
(name "java-fasterxml-jackson-core")
--
2.38.0
[-- Attachment #5: 0004-gnu-Add-java-fasterxml-jackson-databind-2.12.2.patch --]
[-- Type: application/octet-stream, Size: 1564 bytes --]
From 4eefca84dcc4fab809ea00abbaedd4ae88b1ef4a Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sun, 25 Sep 2022 16:05:17 +0200
Subject: [PATCH 04/13] gnu: Add java-fasterxml-jackson-databind-2.12.2
* gnu/packages/java.scm (java-fasterxml-jackson-databind-2.12.2): New variable.
---
gnu/packages/java.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 8acf4e8dda..2b1c968650 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -10117,6 +10117,24 @@ (define-public java-fasterxml-jackson-databind
configuration.")
(license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing
+(define-public java-fasterxml-jackson-databind-2.12.2
+ (package
+ (inherit java-fasterxml-jackson-databind)
+ (name "java-fasterxml-jackson-databind")
+ (version "2.12.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/FasterXML/jackson-databind")
+ (commit (string-append "jackson-databind-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1936c6lzbnd0lyb7c19flzklb5j39vxyhlgjl49jkcikbj5vkjav"))))
+ (inputs
+ (list java-fasterxml-jackson-core-2.12.2
+ java-fasterxml-jackson-annotations-2.12.2))))
+
(define-public java-fasterxml-jackson-modules-base-jaxb
(package
(name "java-fasterxml-jackson-modules-base-jaxb")
--
2.38.0
[-- Attachment #6: 0005-gnu-Add-java-fasterxml-jackson-dataformat-smile.patch --]
[-- Type: application/octet-stream, Size: 3042 bytes --]
From 1f000c61b5aae21fbcbdce8d522b377f38d251b0 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sun, 25 Sep 2022 22:21:54 +0200
Subject: [PATCH 05/13] gnu: Add java-fasterxml-jackson-dataformat-smile
* gnu/packages/java.scm (java-fasterxml-jackson-dataformat-smile): New variable.
---
gnu/packages/java.scm | 50 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 2b1c968650..eb34cbfb7e 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -10425,6 +10425,56 @@ (define-public java-fasterxml-jackson-dataformat-xml
make data-binding work.")
(license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing
+(define-public java-fasterxml-jackson-dataformat-smile
+ (package
+ (name "java-fasterxml-jackson-dataformat-smile")
+ (version "2.12.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/FasterXML/jackson-dataformats-binary")
+ (commit
+ (string-append "jackson-dataformats-binary-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qfi44kk1iy9nwcgb55ksdis4jqfqxqrqqv81y3xgm134ds3j9l2"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "jackson-dataformat-smile.jar"
+ #:source-dir "smile/src/main/java"
+ #:test-dir "smile/src/test"
+ #:test-exclude (list "**/failing/**.java")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'generate-PackageVersion.java
+ (lambda _
+ (let* ((out
+ (string-append
+ "smile/src/main/java/com/fasterxml/"
+ "jackson/dataformat/smile/PackageVersion.java"))
+ (in (string-append out ".in")))
+ (copy-file in out)
+ (substitute* out
+ (("@package@") "com.fasterxml.jackson.dataformat.smile")
+ (("@projectversion@") ,version)
+ (("@projectgroupid@") "com.fasterxml.jackson.dataformat.smile")
+ (("@projectartifactid@") "jackson-dataformat-smile")))
+ #t)))))
+ (inputs
+ (list java-fasterxml-jackson-core-2.12.2
+ java-fasterxml-jackson-databind-2.12.2
+ java-fasterxml-jackson-annotations-2.12.2))
+ (native-inputs
+ (list java-junit))
+ (home-page "https://github.com/FasterXML/jackson-dataformats-binary")
+ (synopsis "Smile backend for Jackson")
+ (description "Dataformat backends are used to support format alternatives
+to JSON, supported by default. This is done by sub-classing Jackson core
+abstractions.")
+ (license license:asl2.0))) ; found on wiki.fasterxml.com/JacksonLicensing
+
(define-public java-hdrhistogram
(package
(name "java-hdrhistogram")
--
2.38.0
[-- Attachment #7: 0006-gnu-Add-java-fasterxml-jackson-dataformat-cbor.patch --]
[-- Type: application/octet-stream, Size: 3644 bytes --]
From 679f3858be68bdb500cf3529aad42dad802d3c39 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sun, 25 Sep 2022 22:45:02 +0200
Subject: [PATCH 06/13] gnu: Add java-fasterxml-jackson-dataformat-cbor
* gnu/packages/java.scm (java-fasterxml-jackson-dataformat-cbor): New variable.
---
gnu/packages/java.scm | 59 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index eb34cbfb7e..df1b712bbc 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -10475,6 +10475,65 @@ (define-public java-fasterxml-jackson-dataformat-smile
abstractions.")
(license license:asl2.0))) ; found on wiki.fasterxml.com/JacksonLicensing
+(define-public java-fasterxml-jackson-dataformat-cbor
+ (package
+ (name "java-fasterxml-jackson-dataformat-cbor")
+ (version "2.12.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/FasterXML/jackson-dataformats-binary")
+ (commit
+ (string-append "jackson-dataformats-binary-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qfi44kk1iy9nwcgb55ksdis4jqfqxqrqqv81y3xgm134ds3j9l2"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "jackson-dataformat-cbor.jar"
+ #:source-dir "cbor/src/main/java"
+ #:test-dir "cbor/src/test"
+ #:test-exclude (list "**/failing/**.java"
+ "**/GeneratorDeepNestingTest.java"
+ "**/NumberCoercing32Test.java"
+ "**/SharedRawGeneratorBufferTest.java"
+ "**/gen/GeneratorSimpleTest.java"
+ "**/mapper/BiggerDataTest.java"
+ "**/mapper/BinaryReadTest.java"
+ "**/mapper/MapperSimpleReadTest.java"
+ "**/mapper/NumberArrayBeanTest.java"
+ "**/mapper/NumberBeanTest.java"
+ "**/parse/BinaryToStringCoercionTest.java")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'generate-PackageVersion.java
+ (lambda _
+ (let* ((out (string-append
+ "cbor/src/main/java/com/fasterxml/"
+ "jackson/dataformat/cbor/PackageVersion.java"))
+ (in (string-append out ".in")))
+ (copy-file in out)
+ (substitute* out
+ (("@package@") "com.fasterxml.jackson.dataformat.cbor")
+ (("@projectversion@") ,version)
+ (("@projectgroupid@") "com.fasterxml.jackson.dataformat.cbor")
+ (("@projectartifactid@") "jackson-dataformat-cbor")))
+ #t)))))
+ (inputs
+ (list java-fasterxml-jackson-core-2.12.2
+ java-fasterxml-jackson-databind-2.12.2))
+ (native-inputs
+ (list java-junit
+ java-fasterxml-jackson-annotations))
+ (home-page "https://github.com/FasterXML/jackson-dataformats-binary")
+ (synopsis "Cbor backend for Jackson")
+ (description "Dataformat backends are used to support format alternatives
+to JSON, supported by default. This is done by sub-classing Jackson core
+abstractions.")
+ (license license:asl2.0))) ; found on wiki.fasterxml.com/JacksonLicensing
+
(define-public java-hdrhistogram
(package
(name "java-hdrhistogram")
--
2.38.0
[-- Attachment #8: 0007-gnu-Add-clojure-tigris.patch --]
[-- Type: application/octet-stream, Size: 1837 bytes --]
From d76c77873241a33cf7832ef8e8e336053028d321 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 00:52:56 +0200
Subject: [PATCH 07/13] gnu: Add clojure-tigris
* gnu/packages/clojure.scm (clojure-tigris): New variable.
---
gnu/packages/clojure.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index f844f8310e..54b5fc9383 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -633,6 +633,33 @@ (define-public clojure-camel-snake-kebab
word case conversions")
(license license:epl1.0)))
+(define-public clojure-tigris
+ (package
+ (name "clojure-tigris")
+ (version "0.1.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dakrone/tigris")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "17sjyc0rrfg77xbkb4qfplbgldwg3fl418365a7xzmiz6ijm6qbd"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:source-dirs '("src/clj")
+ #:java-source-dirs '("src/java")
+ #:tests? #f ; Dependency loop with Cheshire
+ #:doc-dirs '()))
+ (home-page "https://github.com/dakrone/tigris")
+ (synopsis "Stream-to-stream JSON string escaping")
+ (description "Tigris provides a stream for escaping json strings as
+they're being read from a different stream. So stream-to-stream string
+encoding. Only a single string though. It's pretty narrow-use. It's written
+in Java with a tiny Clojure wrapper.")
+ (license license:epl1.0)))
+
(define-public clojure-tools-gitlibs
(package
(name "clojure-tools-gitlibs")
--
2.38.0
[-- Attachment #9: 0008-gnu-Add-clojure-tools-reader.patch --]
[-- Type: application/octet-stream, Size: 2370 bytes --]
From ff37726e386385759e6afff60b92c3b981afc6b9 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 02:57:03 +0200
Subject: [PATCH 08/13] gnu: Add clojure-tools-reader
* gnu/packages/clojure.scm (clojure-tools-reader): New variable.
---
gnu/packages/clojure.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 54b5fc9383..09e4e54fd9 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -660,6 +660,44 @@ (define-public clojure-tigris
in Java with a tiny Clojure wrapper.")
(license license:epl1.0)))
+(define-public clojure-tools-reader
+ (package
+ (name "clojure-tools-reader")
+ (version "1.3.6")
+ (home-page "https://github.com/clojure/tools.reader")
+ (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
+ "0rcqq024ysz5g2ad8g6jvhnlpwqym58hd1mywl8c4v3x5628d028"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:source-dirs '("src/main/cljs" "src/main/clojure")
+ #:test-dirs '("src/test/cljs" "src/test/clojure")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'patch-common-tests
+ (lambda _
+ ;; common_tests.clj is inlined into other test files.
+ ;; #:test-exclude (list "**/common_tests.clj") did not work for
+ ;; some reason
+ (substitute* "src/test/clojure/clojure/tools/common_tests.clj"
+ (("\\(deftest read-integer")
+ "(ns clojure.tools.common-tests
+ (:use [clojure.test :only [deftest is]])
+ (:import clojure.lang.BigInt))
+ (deftest read-integer")))))
+ #:doc-dirs '()))
+ (synopsis "Clojure reader in Clojure")
+ (description "A complete Clojure reader and an EDN-only reader, works with
+Clojure versions >= 1.4.0 and Clojurescript >=0.5308 and since version
+0.10.0-alpha1")
+ (license license:epl1.0)))
+
(define-public clojure-tools-gitlibs
(package
(name "clojure-tools-gitlibs")
--
2.38.0
[-- Attachment #10: 0009-gnu-Add-clojure-java-classpath.patch --]
[-- Type: application/octet-stream, Size: 1698 bytes --]
From 799b605ca1af44300be2cff1afbfb39c655b5484 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 03:11:37 +0200
Subject: [PATCH 09/13] gnu: Add clojure-java-classpath
* gnu/packages/clojure.scm (clojure-java-classpath): New variable.
---
gnu/packages/clojure.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 09e4e54fd9..ea1681832e 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -660,6 +660,30 @@ (define-public clojure-tigris
in Java with a tiny Clojure wrapper.")
(license license:epl1.0)))
+(define-public clojure-java-classpath
+ (package
+ (name "clojure-java-classpath")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/clojure/java.classpath")
+ (commit (string-append "java.classpath-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1v1gxl72vycscblwm1iwc2r64z9r60smvd2gc9l7q2aqqy56fr75"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:source-dirs '("src/main/clojure")
+ #:test-dirs '("src/test/clojure")
+ #:doc-dirs '()))
+ (home-page "https://github.com/clojure/java.classpath")
+ (synopsis "Examines the Java classpath from Clojure programs")
+ (description "Clojure-java-classpath examines the Java classpath from
+Clojure programs")
+ (license license:epl1.0)))
+
(define-public clojure-tools-reader
(package
(name "clojure-tools-reader")
--
2.38.0
[-- Attachment #11: 0010-gnu-Add-clojure-tools-namespace.patch --]
[-- Type: application/octet-stream, Size: 2054 bytes --]
From 6e6705511900b8f8b412218d679969f6e92181a2 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 03:14:01 +0200
Subject: [PATCH 10/13] gnu: Add clojure-tools-namespace
* gnu/packages/clojure.scm (clojure-tools-namespace): New variable.
---
gnu/packages/clojure.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index ea1681832e..85c7551294 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -722,6 +722,37 @@ (define-public clojure-tools-reader
0.10.0-alpha1")
(license license:epl1.0)))
+(define-public clojure-tools-namespace
+ (package
+ (name "clojure-tools-namespace")
+ (version "1.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/clojure/tools.namespace")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0v11gh5cxqnipmrk3kjjb5bq91lrs08wii0pp9mzibfqwlb09idy"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:source-dirs '("src/main/clojure")
+ #:test-dirs '("src/test/clojure")
+ #:doc-dirs '()))
+ (inputs
+ (list clojure-tools-reader
+ clojure-java-classpath))
+ (home-page "https://github.com/clojure/tools.namespace")
+ (synopsis "Tools for managing namespaces in Clojure")
+ (description "Clojure-tools-namespace parses ns declarations from source
+files, extract their dependencies, build a graph of namespace dependencies
+within a project, update that graph as files change, and reload files in the
+correct order. This is only about namespace dependencies within a single
+project. It has nothing to do with Leiningen, Maven, JAR files, or
+repositories.")
+ (license license:epl1.0)))
+
(define-public clojure-tools-gitlibs
(package
(name "clojure-tools-gitlibs")
--
2.38.0
[-- Attachment #12: 0011-gnu-Add-clojure-data-generators.patch --]
[-- Type: application/octet-stream, Size: 1757 bytes --]
From c611817c82935b044d23289ec442dfa68509aa29 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 03:27:57 +0200
Subject: [PATCH 11/13] gnu: Add clojure-data-generators
* gnu/packages/clojure.scm (clojure-data-generators): New variable.
---
gnu/packages/clojure.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 85c7551294..e492c00b0c 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -722,6 +722,32 @@ (define-public clojure-tools-reader
0.10.0-alpha1")
(license license:epl1.0)))
+(define-public clojure-data-generators
+ (package
+ (name "clojure-data-generators")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/clojure/data.generators")
+ (commit (string-append "data.generators-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1ndy2wjfipnvswf7nz89wwh6lka8cn2yn5nfxmv8vzjc2i73d8fa"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:source-dirs '("src/main/clojure")
+ #:test-dirs '("src/test/clojure")
+ #:doc-dirs '()))
+ (propagated-inputs
+ (list clojure-tools-reader
+ clojure-java-classpath))
+ (home-page "https://github.com/clojure/data.generators")
+ (synopsis "Generators for random Clojure data")
+ (description "Clojure-data-generators is a data generator for Clojure")
+ (license license:epl1.0)))
+
(define-public clojure-tools-namespace
(package
(name "clojure-tools-namespace")
--
2.38.0
[-- Attachment #13: 0012-gnu-Add-clojure-test-generative.patch --]
[-- Type: application/octet-stream, Size: 1746 bytes --]
From 1b1d64427c7d9fae563ad5b4d6ab3775749fab0e Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 03:35:26 +0200
Subject: [PATCH 12/13] gnu: Add clojure-test-generative
* gnu/packages/clojure.scm (clojure-test-generative): New variable.
---
gnu/packages/clojure.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index e492c00b0c..1747e67693 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -779,6 +779,32 @@ (define-public clojure-tools-namespace
repositories.")
(license license:epl1.0)))
+(define-public clojure-test-generative
+ (package
+ (name "clojure-test-generative")
+ (version "0.1.4")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/clojure/test.generative")
+ (commit (string-append "test.generative-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1bsc7pf7z9wi0ryv2jczks83m3cvkks08bm3lkp673cp7pnawi5p"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:source-dirs '("src/main/clojure")
+ #:tests? #f ; No test
+ #:doc-dirs '()))
+ (propagated-inputs
+ (list clojure-tools-namespace
+ clojure-data-generators))
+ (home-page "https://github.com/clojure/test.generative")
+ (synopsis "Generative test runner")
+ (description "Clojure.test.generative runs test generatively")
+ (license license:epl1.0)))
+
(define-public clojure-tools-gitlibs
(package
(name "clojure-tools-gitlibs")
--
2.38.0
[-- Attachment #14: 0013-gnu-Add-clojure-cheshire.patch --]
[-- Type: application/octet-stream, Size: 1967 bytes --]
From 95518df9f9eaecdd0613658e699cc2d6410fdc49 Mon Sep 17 00:00:00 2001
From: Zzull <bstrazzull@hotmail.fr>
Date: Sat, 29 Oct 2022 18:58:25 +0200
Subject: [PATCH 13/13] gnu: Add clojure-cheshire
* gnu/packages/clojure.scm (clojure-cheshire): New variable.
---
gnu/packages/clojure.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 1747e67693..56e601badc 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -832,3 +832,34 @@ (define-public clojure-tools-gitlibs
indicated by git SHAs. This library provides this functionality and also
keeps a cache of git directories and working trees that can be reused.")
(license license:epl1.0)))
+
+(define-public clojure-cheshire
+ (package
+ (name "clojure-cheshire")
+ (version "5.11.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dakrone/cheshire")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1hhhc4z9ns2sa0g16yvi5dxa189x7fn5dwkzx3710kwimakz12j4"))))
+ (build-system clojure-build-system)
+ (arguments
+ '(#:java-source-dirs '("src/java")
+ #:doc-dirs '()))
+ (inputs
+ (list java-fasterxml-jackson-core-2.12.2
+ java-fasterxml-jackson-dataformat-smile
+ java-fasterxml-jackson-dataformat-cbor
+ clojure-tigris
+ clojure-test-generative))
+ (home-page "https://github.com/dakrone/cheshire")
+ (synopsis "Clojure JSON and JSON SMILE (binary json format)
+encoding/decoding")
+ (description "Clojure-cheshire is fast JSON encoding, based off of
+clj-json and clojure-json, with additional features like Date/UUID/Set/Symbol
+encoding and SMILE support.")
+ (license license:expat))) ; MIT license
--
2.38.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [bug#58869] [PATCH] Add clojure-cheshire and all of its dependencies
2022-10-29 17:15 [bug#58869] [PATCH] Add clojure-cheshire and all of its dependencies Baptiste Strazzulla
@ 2023-05-05 18:07 ` Baptiste Strazzulla
0 siblings, 0 replies; 2+ messages in thread
From: Baptiste Strazzulla @ 2023-05-05 18:07 UTC (permalink / raw)
To: 58869@debbugs.gnu.org
[-- Attachment #1: Type: text/plain, Size: 618 bytes --]
Hello Guix maintainers,
Can I ping once to bubble up these patches up the ladder?
________________________________
From: Baptiste Strazzulla
Sent: Saturday, October 29, 2022 5:15 PM
To: guix-patches@gnu.org <guix-patches@gnu.org>
Subject: [PATCH] Add clojure-cheshire and all of its dependencies
Hello Guix maintainers,
I've been trying to package clojure-lsp<https://github.com/clojure-lsp/clojure-lsp> and clj-kondo<https://github.com/clj-kondo/clj-kondo>. This is just the `clojure-cheshire` milestone but I figured it would be best to pause now and submit what I already have.
Regards,
Baptiste
[-- Attachment #2: Type: text/html, Size: 2681 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-05-05 18:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-29 17:15 [bug#58869] [PATCH] Add clojure-cheshire and all of its dependencies Baptiste Strazzulla
2023-05-05 18:07 ` Baptiste Strazzulla
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.