mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
git: Remove code for Guile-Git < 0.10.0.
* guix/git.scm (commit-relation, commit-descendant?): Remove code for Guile-Git < 0.10.0. (set-git-timeouts): Remove code for Guile-Git < 0.9.0. (report-git-error): Remove code for ancient Guile-Git. Change-Id: Ie597151ce4c1e5ea006e2783fcc510caed3f566c
This commit is contained in:
parent
6d6d897b54
commit
86022e994e
1 changed files with 24 additions and 66 deletions
54
guix/git.scm
54
guix/git.scm
|
@ -211,15 +211,9 @@ to verify X.509 host certificates."
|
||||||
when talking to remote Git servers.
|
when talking to remote Git servers.
|
||||||
|
|
||||||
If one of them is #f, the corresponding default setting is kept unchanged."
|
If one of them is #f, the corresponding default setting is kept unchanged."
|
||||||
;; 'set-server-timeout!' & co. were added in Guile-Git 0.9.0.
|
(when connection-timeout
|
||||||
(define (defined? variable)
|
|
||||||
(module-defined? (resolve-interface '(git)) variable))
|
|
||||||
|
|
||||||
(when (and (defined? 'set-server-connection-timeout!)
|
|
||||||
connection-timeout)
|
|
||||||
(set-server-connection-timeout! connection-timeout))
|
(set-server-connection-timeout! connection-timeout))
|
||||||
(when (and (defined? 'set-server-timeout!)
|
(when read-timeout
|
||||||
read-timeout)
|
|
||||||
(set-server-timeout! read-timeout)))
|
(set-server-timeout! read-timeout)))
|
||||||
|
|
||||||
(define* (clone* url directory #:key (verify-certificate? #t))
|
(define* (clone* url directory #:key (verify-certificate? #t))
|
||||||
|
@ -374,13 +368,7 @@ dynamic extent of EXP."
|
||||||
|
|
||||||
(define (report-git-error error)
|
(define (report-git-error error)
|
||||||
"Report the given Guile-Git error."
|
"Report the given Guile-Git error."
|
||||||
;; Prior to Guile-Git commit b6b2760c2fd6dfaa5c0fedb43eeaff06166b3134,
|
(leave (G_ "Git error: ~a~%") (git-error-message error)))
|
||||||
;; errors would be represented by integers.
|
|
||||||
(match error
|
|
||||||
((? integer? error) ;old Guile-Git
|
|
||||||
(leave (G_ "Git error ~a~%") error))
|
|
||||||
((? git-error? error) ;new Guile-Git
|
|
||||||
(leave (G_ "Git error: ~a~%") (git-error-message error)))))
|
|
||||||
|
|
||||||
(define-syntax-rule (with-git-error-handling body ...)
|
(define-syntax-rule (with-git-error-handling body ...)
|
||||||
(catch 'git-error
|
(catch 'git-error
|
||||||
|
@ -769,9 +757,7 @@ that of OLD."
|
||||||
(cons head result)
|
(cons head result)
|
||||||
(set-insert head visited)))))))
|
(set-insert head visited)))))))
|
||||||
|
|
||||||
(define commit-relation
|
(define (commit-relation old new)
|
||||||
(if (resolve-module '(git graph) #:ensure #f) ;Guile-Git >= 0.10.0
|
|
||||||
(lambda (old new)
|
|
||||||
"Return a symbol denoting the relation between OLD and NEW, two commit
|
"Return a symbol denoting the relation between OLD and NEW, two commit
|
||||||
objects: 'ancestor (meaning that OLD is an ancestor of NEW), 'descendant, or
|
objects: 'ancestor (meaning that OLD is an ancestor of NEW), 'descendant, or
|
||||||
'unrelated, or 'self (OLD and NEW are the same commit)."
|
'unrelated, or 'self (OLD and NEW are the same commit)."
|
||||||
|
@ -785,23 +771,9 @@ objects: 'ancestor (meaning that OLD is an ancestor of NEW), 'descendant, or
|
||||||
((graph-descendant? repository old new)
|
((graph-descendant? repository old new)
|
||||||
'descendant)
|
'descendant)
|
||||||
(else 'unrelated))))
|
(else 'unrelated))))
|
||||||
(lambda (old new) ;remove when Guile-Git 0.10.0 is widespread
|
|
||||||
(if (eq? old new)
|
|
||||||
'self
|
|
||||||
(let ((newest (commit-closure new)))
|
|
||||||
(if (set-contains? newest old)
|
|
||||||
'ancestor
|
|
||||||
(let* ((seen (list->setq (commit-parents new)))
|
|
||||||
(oldest (commit-closure old seen)))
|
|
||||||
(if (set-contains? oldest new)
|
|
||||||
'descendant
|
|
||||||
'unrelated))))))))
|
|
||||||
|
|
||||||
(define commit-descendant?
|
(define (commit-descendant? new old)
|
||||||
(if (resolve-module '(git graph) #:ensure #f) ;Guile-Git >= 0.10.0
|
"Return true if NEW is the descendant of one of OLD, a list of commits."
|
||||||
(lambda (new old)
|
|
||||||
"Return true if NEW is the descendant of one of OLD, a list of
|
|
||||||
commits."
|
|
||||||
(let ((repository (commit-owner new))
|
(let ((repository (commit-owner new))
|
||||||
(new (commit-id new)))
|
(new (commit-id new)))
|
||||||
(any (lambda (old)
|
(any (lambda (old)
|
||||||
|
@ -809,20 +781,6 @@ commits."
|
||||||
(or (graph-descendant? repository new old)
|
(or (graph-descendant? repository new old)
|
||||||
(oid=? old new))))
|
(oid=? old new))))
|
||||||
old)))
|
old)))
|
||||||
(lambda (new old) ;remove when Guile-Git 0.10.0 is widespread
|
|
||||||
(let ((old (list->setq old)))
|
|
||||||
(let loop ((commits (list new))
|
|
||||||
(visited (setq)))
|
|
||||||
(match commits
|
|
||||||
(()
|
|
||||||
#f)
|
|
||||||
(_
|
|
||||||
;; Perform a breadth-first search as this is likely going to
|
|
||||||
;; terminate more quickly than a depth-first search.
|
|
||||||
(let ((commits (remove (cut set-contains? visited <>) commits)))
|
|
||||||
(or (any (cut set-contains? old <>) commits)
|
|
||||||
(loop (append-map commit-parents commits)
|
|
||||||
(fold set-insert visited commits)))))))))))
|
|
||||||
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue