[PATCH] gnu: git-repo: Update to 2.29.7

  • Open
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Maxim Cournoyer
  • Do?an Çeçen
Owner
unassigned
Submitted by
Do?an Çeçen
Severity
normal
D
D
Do?an Çeçen wrote on 21 Oct 2024 15:00
(address . guix-patches@gnu.org)(name . Do?an Çeçen)(address . sepeth@fastmail.com)
b1b8392ce548bc6cefa04d92331d7a794182813b.1729515611.git.sepeth@fastmail.com
Fixes ModuleNotFoundError: No module named 'formatter'.
This module was deprecated, and removed in Python 3.10.

* gnu/packages/android.scm (git-repo): Update to 2.29.7

Change-Id: I74d48fd9a8afc76c18d866b252a139f77b7ab838
---
gnu/packages/android.scm | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

Toggle diff (42 lines)
diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm
index 11e05dced9..0f41fa8695 100644
--- a/gnu/packages/android.scm
+++ b/gnu/packages/android.scm
@@ -919,7 +919,7 @@ (define-public etc1tool
(define-public git-repo
(package
(name "git-repo")
- (version "2.4.1")
+ (version "2.29.7")
(source
(origin
(method git-fetch)
@@ -928,7 +928,7 @@ (define-public git-repo
(commit (string-append "v" version))))
(file-name (string-append "git-repo-" version "-checkout"))
(sha256
- (base32 "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3"))))
+ (base32 "01sl9bz9rnhf9s3h7nlhkpxm0ggc5jzs30n11vlvnv2mqp8r1jvq"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -1000,12 +1000,11 @@ (define-public git-repo
(symlink (string-append repo-dir "/repo")
(string-append bin-dir "/repo"))
#t))))))
- (inputs
;; TODO: Add git-remote-persistent-https once it is available in guix
- `(("git" ,git)
- ("ssh" ,openssh)))
+ (inputs
+ (list git openssh gnupg))
(native-inputs
- `(("pytest" ,python-pytest)))
+ (list python-pytest))
(home-page "https://code.google.com/p/git-repo/")
(synopsis "Helps to manage many Git repositories")
(description "Repo is a tool built on top of Git. Repo helps manage many

base-commit: 59b2a60d0041882d732e1766e28f0df5a1ef1ac1
--
2.46.0
M
M
Maxim Cournoyer wrote on 23 Oct 2024 14:48
(name . Do?an Çeçen)(address . sepeth@fastmail.com)(address . 73930@debbugs.gnu.org)
8734kn0yum.fsf@gmail.com
Hi,

Do?an Çeçen <sepeth@fastmail.com> writes:

Toggle quote (49 lines)
> Fixes ModuleNotFoundError: No module named 'formatter'.
> This module was deprecated, and removed in Python 3.10.
>
> * gnu/packages/android.scm (git-repo): Update to 2.29.7
>
> Change-Id: I74d48fd9a8afc76c18d866b252a139f77b7ab838
> ---
> gnu/packages/android.scm | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm
> index 11e05dced9..0f41fa8695 100644
> --- a/gnu/packages/android.scm
> +++ b/gnu/packages/android.scm
> @@ -919,7 +919,7 @@ (define-public etc1tool
> (define-public git-repo
> (package
> (name "git-repo")
> - (version "2.4.1")
> + (version "2.29.7")
> (source
> (origin
> (method git-fetch)
> @@ -928,7 +928,7 @@ (define-public git-repo
> (commit (string-append "v" version))))
> (file-name (string-append "git-repo-" version "-checkout"))
> (sha256
> - (base32 "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3"))))
> + (base32 "01sl9bz9rnhf9s3h7nlhkpxm0ggc5jzs30n11vlvnv2mqp8r1jvq"))))
> (build-system python-build-system)
> (arguments
> `(#:phases
> @@ -1000,12 +1000,11 @@ (define-public git-repo
> (symlink (string-append repo-dir "/repo")
> (string-append bin-dir "/repo"))
> #t))))))
> - (inputs
> ;; TODO: Add git-remote-persistent-https once it is available in guix
> - `(("git" ,git)
> - ("ssh" ,openssh)))
> + (inputs
> + (list git openssh gnupg))
> (native-inputs
> - `(("pytest" ,python-pytest)))
> + (list python-pytest))
> (home-page "https://code.google.com/p/git-repo/")
> (synopsis "Helps to manage many Git repositories")
> (description "Repo is a tool built on top of Git. Repo helps manage many

This looks too simple to be true, given the complex patching going on in
phases (in retrospect this should have been done via a real patch to
avoid silent breakage like is probably happening here).

The idea of the patch was to ensure 'git-repo' wouldn't update itself
when run, as that defeats the immutable principle of Guix packages.

Could you test this property is preserved? The addition of gnupg makes
me suspect it isn't.

--
Thanks,
Maxim
D
D
Do?an Çeçen wrote on 23 Oct 2024 22:37
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 73930@debbugs.gnu.org)
be2c6e53-a9bd-47dc-a360-636ec3c85711@app.fastmail.com
Hi Maxim,

Thanks for looking into this.

Toggle quote (4 lines)
> This looks too simple to be true, given the complex patching going on in
> phases (in retrospect this should have been done via a real patch to
> avoid silent breakage like is probably happening here).

Sorry, I am not following. What do you mean by the complex patching going on in phases and the silent breakage?

Toggle quote (3 lines)
> The idea of the patch was to ensure 'git-repo' wouldn't update itself
> when run, as that defeats the immutable principle of Guix packages.

From what I can tell, it doesn't do that. Or, at least, it reports repeatedly the same version when I run `repo --version`, and it says the version I upgraded to, 2.29.7. And, I was able to use the tool successfully after the upgrade.

Note that this is not the latest version of repo tool. The latest version is 2.48, but that failed during the check phase, and 2.30 and upwards fails with the same reason IIRC. I couldn't get to the latest version without upgrading some core python packages. Even though repo now needs python-black, and it didn't work with the version we currently have in Guix. I tried upgrading that and some more but went into the rabbit hole of upgrading some core packages such as python-build and python-packaging-bootstrap etc, then I stopped.

Toggle quote (3 lines)
> Could you test this property is preserved? The addition of gnupg makes
> me suspect it isn't.

No problem, I tried the following and reported the same result, but I am not exactly sure if this is right way to test what you meant:

```
$ ./pre-inst-env guix build --check --no-offload --source --rounds=2 git-repo
...
warning: rewriting hashes in `/gnu/store/agzslk3pvakz9vf66pr49dc7v2xjkf1j-git-repo-2.29.7-checkout'; cross fingers
successfully built /gnu/store/8vwzck1s9d6siph4w3x62w0xdmk95yl8-git-repo-2.29.7-checkout.drv
successfully built /gnu/store/8vwzck1s9d6siph4w3x62w0xdmk95yl8-git-repo-2.29.7-checkout.drv
/gnu/store/agzslk3pvakz9vf66pr49dc7v2xjkf1j-git-repo-2.29.7-checkout
```

Many thanks,
Dogan
L
L
Ludovic Courtès wrote on 30 Dec 2024 00:01
control message for bug #73930
(address . control@debbugs.gnu.org)
87h66mnlfn.fsf@gnu.org
tags 73930 + moreinfo
quit
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 73930@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 73930
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch