etc/committer: Do not recompute changes when there are no definitions.

* etc/committer.scm.in (main): Reuse previously computed changes if there are
no changes to the number of definitions.
This commit is contained in:
Ricardo Wurmus 2023-09-21 16:00:24 +02:00
parent 0792d99466
commit 0836af9a3b
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -388,7 +388,7 @@ (define* (change-commit-message* file-name old new #:rest rest)
(unless (eqv? 0 (status:exit-val (close-pipe port)))
(error "Cannot commit"))))
(usleep %delay))
definitions))
definitions)
;; Changes.
(for-each
@ -421,8 +421,13 @@ (define copyright-line
(usleep %delay)
(unless (eqv? 0 (status:exit-val (close-pipe port)))
(error "Cannot commit")))))))
(new+old+hunks (match definitions
('() changes) ;reuse
(_
;; XXX: we recompute the hunks here because previous
;; insertions lead to offsets.
(new+old+hunks (diff-info))))))
(let-values (((definitions changes)
(partition hunk-type (diff-info))))
changes)))))))))
(apply main (cdr (command-line)))