guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#56604: [PATCH 0/8] Update Clojure to 1.11.1.


From: Ludovic Courtès
Subject: bug#56604: [PATCH 0/8] Update Clojure to 1.11.1.
Date: Sat, 23 Jul 2022 00:11:05 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux)

Hi,

r0man <roman@burningswell.com> skribis:

> This phase makes sure the timestamp of compiled class files is set to a later
> point in time than the timestamp of the corresponding Clojure source files. If
> the timestamps of the class and source files are the same, the Clojure
> compiler will compile the sources again which can lead to issues. This problem
> has been discussed here [1]. The suggested solution was to keep/adjust the
> timestamps of the class files.

Sounds reasonable.  It’s a bummer though that the whole phase is pasted
from ant-build-system.scm, the only difference being the timestamps
(1980 instead of 1970).

I added a TODO comment in clojure-build-system.scm when applying the
patch.  Could you follow up with a patch to factorize that?

> Btw, I was a bit surprised that in Guix Clojure packages are AOT compiled. The
> general wisdom in the Clojure community seems to be to avoid AOT compilation
> when distributing libraries, and only AOT compiling Uberjars for final
> deployment. Due to issues like I mentioned in clojure-instaparse.
>
> Are we sure that AOT compiling all Clojure source files by default is a good
> idea, instead of just compiling user declared namespaces which Leiningen and
> friends are doing? WDYT?

Not much, but as you might have seen in ./etc/teams.scm, the project is
finally being structured as teams.  There’s an opportunity for you to
start a Clojure team and to take the lead!  :-)

As a first step, I’d recommend getting in touch with people who have
worked on ‘clojure-build-system’ and packaged things in the past.

>   gnu: clojure-tools-cli: Update to 1.0.206.
>   gnu: clojure-tools-gitlibs: Update to 2.4.181.
>   gnu: clojure-tools-deps-alpha: Update to 0.14.1212.
>   gnu: clojure-tools: Update to 1.11.1.1149.
>   gnu: clojure: Update to 1.11.1.
>   gnu: clojure-algo-generic: Fix test failing under AOT in Clojure 1.11.1.
>   gnu: clojure-core-match: Update to 1.0.0.
>   gnu: clojure-instaparse: Update to 1.4.12 (disabled AOT).

I adjusted all the commit logs to follow our conventions; please
consider doing this next time:

  https://guix.gnu.org/manual/devel/en/html_node/Submitting-Patches.html

The instaparse patch missed the hash update so I did that too.

Thanks!

Ludo’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]