From: "Ludovic Courtès" <ludo@gnu.org>
To: Simon Tournier <zimon.toutoune@gmail.com>
Cc: 65352@debbugs.gnu.org
Subject: [bug#65352] Fix time-machine and network
Date: Mon, 04 Sep 2023 10:49:24 +0200 [thread overview]
Message-ID: <87wmx6qq5n.fsf_-_@gnu.org> (raw)
In-Reply-To: <c5156f9a756c2a6a304dc789c00abf533c787fd8.1692281315.git.zimon.toutoune@gmail.com> (Simon Tournier's message of "Thu, 17 Aug 2023 16:09:16 +0200")
[-- Attachment #1: Type: text/plain, Size: 3030 bytes --]
Hi,
Simon Tournier <zimon.toutoune@gmail.com> skribis:
> * guix/git/scm (reference-available?): Rely of the procedure resolve-reference
> to determine if the reference belongs to the local Git checkout.
> ---
> guix/git.scm | 13 ++-----------
> 1 file changed, 2 insertions(+), 11 deletions(-)
>
> diff --git a/guix/git.scm b/guix/git.scm
> index dbc3b7caa7..ebe2600209 100644
> --- a/guix/git.scm
> +++ b/guix/git.scm
> @@ -360,17 +360,8 @@ (define-syntax-rule (false-if-git-not-found exp)
> (define (reference-available? repository ref)
> "Return true if REF, a reference such as '(commit . \"cabba9e\"), is
> definitely available in REPOSITORY, false otherwise."
> - (match ref
> - ((or ('commit . commit)
> - ('tag-or-commit . (? commit-id? commit)))
> - (let ((len (string-length commit))
> - (oid (string->oid commit)))
> - (false-if-git-not-found
> - (->bool (if (< len 40)
> - (object-lookup-prefix repository oid len OBJ-COMMIT)
> - (commit-lookup repository oid))))))
> - (_
> - #f)))
> + (false-if-git-not-found
> + (->bool (resolve-reference repository ref))))
Houston, we have a problem:
--8<---------------cut here---------------start------------->8---
$ guix time-machine -C <(echo %default-channels) -- describe
Backtrace:
17 (primitive-load "/home/ludo/.config/guix/current/bin/gu…")
In guix/ui.scm:
2323:7 16 (run-guix . _)
2286:10 15 (run-guix-command _ . _)
In ice-9/boot-9.scm:
1752:10 14 (with-exception-handler _ _ #:unwind? _ # _)
1747:15 13 (with-exception-handler #<procedure 7f987de73fc0 at ic…> …)
In guix/store.scm:
672:3 12 (_)
In ice-9/boot-9.scm:
1752:10 11 (with-exception-handler _ _ #:unwind? _ # _)
In guix/store.scm:
659:37 10 (thunk)
In guix/status.scm:
839:4 9 (call-with-status-report _ _)
In guix/store.scm:
1298:8 8 (call-with-build-handler #<procedure 7f987de84420 at g…> …)
In guix/inferior.scm:
932:10 7 (cached-channel-instance #<store-connection 256.99 7f9…> …)
In guix/scripts/time-machine.scm:
171:42 6 (validate-guix-channel _)
In guix/git.scm:
471:21 5 (update-cached-checkout _ #:ref _ #:recursive? _ # _ # _ …)
In ice-9/boot-9.scm:
1747:15 4 (with-exception-handler #<procedure 7f987de900c0 at ic…> …)
In guix/git.scm:
364:11 3 (_)
235:4 2 (resolve _)
In ice-9/boot-9.scm:
1685:16 1 (raise-exception _ #:continuable? _)
1685:16 0 (raise-exception _ #:continuable? _)
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Throw to key `match-error' with args `("match" "no matching pattern" ())'.
$ guix describe
Generation 272 Sep 03 2023 23:46:47 (current)
guix e365c26
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: e365c26a34fa485f9af46538fcea128db681c33d
--8<---------------cut here---------------end--------------->8---
I’m testing the fix below:
[-- Attachment #2: Type: text/x-patch, Size: 1074 bytes --]
diff --git a/guix/git.scm b/guix/git.scm
index ebe2600209..5fa604f9a0 100644
--- a/guix/git.scm
+++ b/guix/git.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
-;;; Copyright © 2018-2022 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2018-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
@@ -282,7 +282,10 @@ (define (resolve-reference repository ref)
(if (= OBJ-TAG (object-type obj))
(object-lookup repository
(tag-target-id (tag-lookup repository oid)))
- obj))))))
+ obj)))
+ (()
+ (resolve-reference repository
+ '(symref . "refs/remotes/origin/HEAD"))))))
(define (switch-to-ref repository ref)
"Switch to REPOSITORY's branch, commit or tag specified by REF. Return the
[-- Attachment #3: Type: text/plain, Size: 12 bytes --]
Ludo’.
next prev parent reply other threads:[~2023-09-04 8:50 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1689823648.git.maxim.cournoyer@gmail.com>
2023-07-20 16:34 ` [bug#64746] [PATCH 2/2] scripts: time-machine: Error when attempting to visit too old commits Maxim Cournoyer
2023-07-22 2:00 ` Maxim Cournoyer
2023-08-08 15:58 ` Ludovic Courtès
2023-08-10 14:47 ` Maxim Cournoyer
2023-08-10 16:56 ` Ludovic Courtès
2023-08-11 7:19 ` Josselin Poiret via Guix-patches via
2023-08-12 20:32 ` Ludovic Courtès
2023-08-15 18:57 ` Maxim Cournoyer
2023-08-15 16:14 ` Ludovic Courtès
2023-08-16 14:46 ` Simon Tournier
2023-08-16 18:41 ` Maxim Cournoyer
2023-08-17 14:06 ` [bug#65352] Fix time-machine and network Simon Tournier
2023-08-17 14:09 ` [bug#65352] [PATCH 1/2] guix: git: Fix the procedure reference-available? Simon Tournier
2023-08-17 14:09 ` [bug#65352] [PATCH 2/2] scripts: pull: Remove unused reference pair Simon Tournier
2023-08-17 15:41 ` [bug#65352] Fix time-machine and network Maxim Cournoyer
2023-08-17 16:08 ` Simon Tournier
2023-08-23 2:56 ` Maxim Cournoyer
2023-08-23 8:32 ` Simon Tournier
2023-08-23 20:25 ` Maxim Cournoyer
2023-08-21 14:00 ` Ludovic Courtès
2023-08-21 15:58 ` Maxim Cournoyer
2023-08-22 16:27 ` Ludovic Courtès
2023-08-23 2:14 ` Maxim Cournoyer
2023-08-21 13:57 ` Ludovic Courtès
2023-09-04 8:49 ` Ludovic Courtès [this message]
2023-09-04 11:34 ` Simon Tournier
2023-09-05 20:33 ` Maxim Cournoyer
2023-09-05 20:48 ` Simon Tournier
2023-09-04 9:32 ` Ludovic Courtès
2023-09-04 17:37 ` Simon Tournier
2023-09-06 0:22 ` Maxim Cournoyer
2023-09-05 20:39 ` Maxim Cournoyer
2023-09-05 20:56 ` Simon Tournier
2023-09-06 2:39 ` Maxim Cournoyer
2023-09-05 13:24 ` bug#65352: " Maxim Cournoyer
2023-09-05 13:43 ` [bug#65352] " Simon Tournier
2023-09-06 0:04 ` bug#65352: " Maxim Cournoyer
2023-09-06 0:58 ` [bug#65352] " Simon Tournier
2023-09-06 2:00 ` Maxim Cournoyer
2023-09-07 11:15 ` Simon Tournier
2023-09-06 10:32 ` [bug#65352] time-machine, unavailable network or Savannah down Simon Tournier
2023-09-06 14:17 ` [bug#65352] [PATCH v2] DRAFT git: Avoid touching the network unless needed in 'reference-available?' Simon Tournier
2023-09-13 20:16 ` [bug#65352] Fix time-machine and network Ludovic Courtès
2023-09-13 0:32 ` Simon Tournier
2023-09-14 8:50 ` Ludovic Courtès
2023-09-14 9:04 ` Ludovic Courtès
2023-09-14 9:42 ` Simon Tournier
2023-09-22 13:54 ` bug#65352: " Simon Tournier
2023-09-25 9:32 ` [bug#65352] " Ludovic Courtès
2023-09-25 9:57 ` Simon Tournier
2023-09-25 11:21 ` Simon Tournier
2023-09-25 15:01 ` Ludovic Courtès
2023-09-25 15:58 ` Simon Tournier
2023-09-06 17:41 ` [bug#65352] time-machine, unavailable network or Savannah down Maxim Cournoyer
2023-09-06 23:21 ` Simon Tournier
2023-08-15 19:44 ` [bug#64746] [PATCH v2 1/3] git: Clarify commit relation reference in doc Maxim Cournoyer
2023-08-15 19:44 ` [bug#64746] [PATCH v2 2/3] pull: Tag commit argument with 'tag-or-commit Maxim Cournoyer
2023-08-16 15:02 ` Simon Tournier
2023-08-16 18:47 ` Maxim Cournoyer
2023-08-17 14:45 ` Simon Tournier
2023-08-17 18:16 ` Maxim Cournoyer
2023-08-17 18:47 ` Simon Tournier
2023-08-23 2:54 ` [bug#64746] [PATCH 2/2] scripts: time-machine: Error when attempting to visit too old commits Maxim Cournoyer
2023-08-23 8:27 ` Simon Tournier
2023-08-15 19:44 ` [bug#64746] [PATCH v2 3/3] " Maxim Cournoyer
2023-08-16 15:39 ` Simon Tournier
2023-08-17 1:41 ` bug#64746: " Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wmx6qq5n.fsf_-_@gnu.org \
--to=ludo@gnu.org \
--cc=65352@debbugs.gnu.org \
--cc=zimon.toutoune@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.