[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#60042] Julia dependency on Git
From: |
zimoun |
Subject: |
[bug#60042] Julia dependency on Git |
Date: |
Fri, 30 Dec 2022 14:15:29 +0100 |
Hi Ludo,
On Sat, 24 Dec 2022 at 00:51, Ludovic Courtès <ludo@gnu.org> wrote:
> Oh right. I found that ‘julia-documenter’ depends on ‘git-minimal’; I
> changed it to depend on ‘git-minimal/fixed’. (The purpose of ‘/fixed’
> variants, such as ‘guile-3.0/fixed’, is to avoid rebuilds of unrelated
> sub-graphs.) A few other packages were in a similar situation:
Two things are really hard in computer science: naming and cache
invalidation. :-)
Here, the suffix /fixed is confusing because it is used for the both
cases:
1) You use fixed to describe something which stays the same and does not
or cannot vary.
2) If you fix a problem or a bad situation, you deal with it and make it
satisfactory.
For instance, it is the meaning #2,
--8<---------------cut here---------------start------------->8---
(define gnupg/fixed
(package
(inherit gnupg)
(source (origin
(inherit (package-source gnupg))
(patches
(append (origin-patches (package-source gnupg))
(search-patches "gnupg-CVE-2022-34903.patch")))))))
--8<---------------cut here---------------end--------------->8---
therefore, I expect that the package gnupg is replaced (grafted). And
indeed,
--8<---------------cut here---------------start------------->8---
(define-public gnupg
(package
(name "gnupg")
;; Note: The 2.2.X releases are Long Term Support (LTS), so stick to it
;; for our stable 'gnupg'.
;; Note2: 2.2.33 currently suffers from regressions, so do not update to it
;; (see: https://dev.gnupg.org/T5742).
(version "2.2.32")
(replacement gnupg/fixed)
--8<---------------cut here---------------end--------------->8---
Well, the situation looks like:
version-control.scm:673:(define-public git-minimal/fixed #1 stable
onc-rpc.scm:91: (define libtirpc/fixed #2
gnupg.scm:257: (define libksba/fixed #2
gnupg.scm:369: (define gnupg/fixed #2
linux.scm:2164: (define-public util-linux/fixed #2
linux.scm:7674: (define-public libnftnl/fixed #1 stable
tls.scm:601: (define openssl/fixed #2
samba.scm:295: (define-public samba/fixed #1 stable
xml.scm:159: (define expat/fixed #2
compression.scm:1890: (define unzip/fixed #2
guile.scm:424: (define-public guile-3.0/fixed #1 stable
Therefore, to avoid the confusion I would suggest to use /pinned instead
of /fixed for this stable meaning. Hence, 4 renaming. WDYT?
Cheers,
simon