unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#69091] [PATCH 0/1] Adding clojure.java-time
@ 2024-02-12 22:18 Steve George
  2024-02-13  8:44 ` [bug#69091] [PATCH 1/1] gnu: Add clojure.java-time Steve George
  2024-02-16 10:06 ` [bug#69091] Package name Andreas Enge
  0 siblings, 2 replies; 6+ messages in thread
From: Steve George @ 2024-02-12 22:18 UTC (permalink / raw)
  To: 69091; +Cc: Steve George

Investigating adding Clojure libs. Clojure.java-time is a common basic wrapped
Java lib.

Steve George (1):
  gnu: Add clojure.java-time.

 gnu/packages/clojure.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)


base-commit: b64862e5cb8209c92aa2eff4cec0be328e38c45d
-- 
2.41.0





^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#69091] [PATCH 1/1] gnu: Add clojure.java-time.
  2024-02-12 22:18 [bug#69091] [PATCH 0/1] Adding clojure.java-time Steve George
@ 2024-02-13  8:44 ` Steve George
  2024-02-14  8:57   ` [bug#69119] [PATCH v2 " Steve George
  2024-02-16 10:06 ` [bug#69091] Package name Andreas Enge
  1 sibling, 1 reply; 6+ messages in thread
From: Steve George @ 2024-02-13  8:44 UTC (permalink / raw)
  To: 69091; +Cc: Steve George

* gnu/packages/clojure.scm (clojure.java-time): New variable.

Change-Id: Id76d3e073525bff619fddb92096ec99a3917faeb
---
 gnu/packages/clojure.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 27fce6f368e..f7c5530e35a 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -661,3 +661,28 @@ (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.java-time
+  (package
+    (name "clojure.java-time")
+    (version "1.4.2")
+    (home-page "https://github.com/dm3/clojure.java-time")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url home-page)
+                     (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+                (base32
+                  "0rykvgslxaxw6qc1lpv21299d9kx3waj34wi1jvzqlnbs2x1p9fh"))))
+    (build-system clojure-build-system)
+    (arguments
+     `(#:tests? #f  ;;FIXME: tests requires math.combinatorics dependency
+       #:doc-dirs '("docs")
+       #:aot-exclude '(#:all)))
+    (synopsis "A Clojure wrapper for Java's @code{java.time} API.")
+    (description "This library wraps Java's @code{java.time} API.  It provides
+a set of Clojure functions for dealing with Date-Time without requiring any
+additional packages.")
+    (license license:epl1.0)))

base-commit: b64862e5cb8209c92aa2eff4cec0be328e38c45d
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#69119] [PATCH v2 1/1] gnu: Add clojure.java-time.
  2024-02-13  8:44 ` [bug#69091] [PATCH 1/1] gnu: Add clojure.java-time Steve George
@ 2024-02-14  8:57   ` Steve George
  0 siblings, 0 replies; 6+ messages in thread
From: Steve George @ 2024-02-14  8:57 UTC (permalink / raw)
  To: 69091; +Cc: 69119, steve

* gnu/packages/clojure.scm (clojure.java-time): New variable.

Change-Id: Id76d3e073525bff619fddb92096ec99a3917faeb
---
 gnu/packages/clojure.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 27fce6f368e..f7c5530e35a 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -661,3 +661,28 @@ (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.java-time
+  (package
+    (name "clojure.java-time")
+    (version "1.4.2")
+    (home-page "https://github.com/dm3/clojure.java-time")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url home-page)
+                     (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+                (base32
+                  "0rykvgslxaxw6qc1lpv21299d9kx3waj34wi1jvzqlnbs2x1p9fh"))))
+    (build-system clojure-build-system)
+    (arguments
+     `(#:tests? #f  ;;FIXME: tests requires math.combinatorics dependency
+       #:doc-dirs '("docs")
+       #:aot-exclude '(#:all)))
+    (synopsis "A Clojure wrapper for Java's @code{java.time} API.")
+    (description "This library wraps Java's @code{java.time} API.  It provides
+a set of Clojure functions for dealing with Date-Time without requiring any
+additional packages.")
+    (license license:epl1.0)))

base-commit: b64862e5cb8209c92aa2eff4cec0be328e38c45d
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#69091] Package name
  2024-02-12 22:18 [bug#69091] [PATCH 0/1] Adding clojure.java-time Steve George
  2024-02-13  8:44 ` [bug#69091] [PATCH 1/1] gnu: Add clojure.java-time Steve George
@ 2024-02-16 10:06 ` Andreas Enge
  2024-03-02 16:17   ` [bug#69119] [PATCH v2 1/1] gnu: Add clojure.java-time Ludovic Courtès
  1 sibling, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2024-02-16 10:06 UTC (permalink / raw)
  To: 69091

Hello,

according to our naming convention
   https://guix.gnu.org/de/manual/devel/en/html_node/Package-Naming.html
   https://guix.gnu.org/de/manual/devel/en/html_node/Python-Modules.html
I think the package should be called clojure-java-time (well, this is not
spelt out precisely, but we could argue by analogy, and by consistency with
the existing clojure packages).

I know nothing about clojure, but am wondering about two things:
- There is one other package with #:aot-exclude '(#:all), which gives
  an explanation why the line is there; could you add one here as well?
- Would it make sense to package math.combinatorics first to enable the
  tests? If we do not test now, I am afraid we will forget it later...

Andreas





^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#69119] [PATCH v2 1/1] gnu: Add clojure.java-time.
  2024-02-16 10:06 ` [bug#69091] Package name Andreas Enge
@ 2024-03-02 16:17   ` Ludovic Courtès
  2024-03-03 16:45     ` Steve George
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2024-03-02 16:17 UTC (permalink / raw)
  To: Steve George; +Cc: 69091, Andreas Enge, 69119

Hi Steve,

Did you have a chance to look into Andreas’ comments about this patch?

  https://issues.guix.gnu.org/69119

Ludo’.

Andreas Enge <andreas@enge.fr> skribis:

> Hello,
>
> according to our naming convention
>    https://guix.gnu.org/de/manual/devel/en/html_node/Package-Naming.html
>    https://guix.gnu.org/de/manual/devel/en/html_node/Python-Modules.html
> I think the package should be called clojure-java-time (well, this is not
> spelt out precisely, but we could argue by analogy, and by consistency with
> the existing clojure packages).
>
> I know nothing about clojure, but am wondering about two things:
> - There is one other package with #:aot-exclude '(#:all), which gives
>   an explanation why the line is there; could you add one here as well?
> - Would it make sense to package math.combinatorics first to enable the
>   tests? If we do not test now, I am afraid we will forget it later...
>
> Andreas




^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#69119] [PATCH v2 1/1] gnu: Add clojure.java-time.
  2024-03-02 16:17   ` [bug#69119] [PATCH v2 1/1] gnu: Add clojure.java-time Ludovic Courtès
@ 2024-03-03 16:45     ` Steve George
  0 siblings, 0 replies; 6+ messages in thread
From: Steve George @ 2024-03-03 16:45 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 69091, Andreas Enge, 69119

Hi Ludo,

I got blocked as this patch caused me to look at whether we should be compiling to byte-code by default. I have not been able to achieve consensus so far (and have taken some time off from the thread):

https://lists.gnu.org/archive/html/guix-devel/2024-02/msg00241.html

Having been unable to convince others I also asked the Clojure community:

https://clojureverse.org/t/should-linux-distributions-ship-clojure-byte-compiled-aot-or-not/10595

Their perspective is that:

a. We should not byte-code compile libraries (what Clojure calls AOT), but we could do so for tools/apps.
b. We should not package libraries at all

From both interactions I'm unsure if packaging this (or any other Clojure libs/tools) is the right move. 

Steve

On  2 Mar, Ludovic Courtès wrote:
> Hi Steve,
> 
> Did you have a chance to look into Andreas’ comments about this patch?
> 
>   https://issues.guix.gnu.org/69119
> 
> Ludo’.
> 
> Andreas Enge <andreas@enge.fr> skribis:
> 
> > Hello,
> >
> > according to our naming convention
> >    https://guix.gnu.org/de/manual/devel/en/html_node/Package-Naming.html
> >    https://guix.gnu.org/de/manual/devel/en/html_node/Python-Modules.html
> > I think the package should be called clojure-java-time (well, this is not
> > spelt out precisely, but we could argue by analogy, and by consistency with
> > the existing clojure packages).
> >
> > I know nothing about clojure, but am wondering about two things:
> > - There is one other package with #:aot-exclude '(#:all), which gives
> >   an explanation why the line is there; could you add one here as well?
> > - Would it make sense to package math.combinatorics first to enable the
> >   tests? If we do not test now, I am afraid we will forget it later...
> >
> > Andreas




^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-03-03 16:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-12 22:18 [bug#69091] [PATCH 0/1] Adding clojure.java-time Steve George
2024-02-13  8:44 ` [bug#69091] [PATCH 1/1] gnu: Add clojure.java-time Steve George
2024-02-14  8:57   ` [bug#69119] [PATCH v2 " Steve George
2024-02-16 10:06 ` [bug#69091] Package name Andreas Enge
2024-03-02 16:17   ` [bug#69119] [PATCH v2 1/1] gnu: Add clojure.java-time Ludovic Courtès
2024-03-03 16:45     ` Steve George

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).