[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#49522: closed ([PATCH] weather: Don't look for exported package repl
From: |
GNU bug Tracking System |
Subject: |
bug#49522: closed ([PATCH] weather: Don't look for exported package replacements twice.) |
Date: |
Fri, 03 Sep 2021 09:26:01 +0000 |
Your message dated Fri, 03 Sep 2021 10:25:45 +0100
with message-id <87a6kuqacm.fsf@cbaines.net>
and subject line Re: bug#49522: [PATCH] weather: Don't look for exported
package replacements twice.
has caused the debbugs.gnu.org bug report #49522,
regarding [PATCH] weather: Don't look for exported package replacements twice.
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)
--
49522: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=49522
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message ---
Subject: |
[PATCH] weather: Don't look for exported package replacements twice. |
Date: |
Sun, 11 Jul 2021 12:56:38 +0100 |
There could be performance issues with member here, but only if there are lots
of replacements.
* guix/scripts/weather.scm (all-packages): Return all exported packages, plus
non exported replacements, rather than including exported replacements twice.
---
guix/scripts/weather.scm | 35 ++++++++++++++++++++++++-----------
1 file changed, 24 insertions(+), 11 deletions(-)
diff --git a/guix/scripts/weather.scm b/guix/scripts/weather.scm
index 06312d65a2..0f70dc8460 100644
--- a/guix/scripts/weather.scm
+++ b/guix/scripts/weather.scm
@@ -53,17 +53,30 @@
#:export (guix-weather))
(define (all-packages)
- "Return the list of public packages we are going to query."
- (fold-packages (lambda (package result)
- (match (package-replacement package)
- ((? package? replacement)
- (cons* replacement package result))
- (#f
- (cons package result))))
- '()
-
- ;; Dismiss deprecated packages but keep hidden packages.
- #:select? (negate package-superseded)))
+ "Return the list of packages we are going to query."
+ (let* ((packages
+ (fold-packages (lambda (package result)
+ (cons package result))
+ '()
+
+ ;; Dismiss deprecated packages but keep hidden
packages.
+ #:select? (negate package-superseded)))
+ (non-exported-replacement-packages
+ (fold-packages (lambda (package result)
+ (let ((replacement (package-replacement package)))
+ (if (and replacement
+ ;; Avoid double couting replacements
+ ;; that are themselves exported
+ (not (member replacement packages)))
+ (cons replacement result)
+ result)))
+ '()
+
+ ;; Dismiss deprecated packages but keep hidden
packages.
+ #:select? (negate package-superseded))))
+ (append
+ packages
+ non-exported-replacement-packages)))
(define (call-with-progress-reporter reporter proc)
"This is a variant of 'call-with-progress-reporter' that works with monadic
--
2.32.0
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#49522: [PATCH] weather: Don't look for exported package replacements twice. |
Date: |
Fri, 03 Sep 2021 10:25:45 +0100 |
User-agent: |
mu4e 1.4.15; emacs 27.2 |
Ludovic Courtès <ludo@gnu.org> writes:
> Hi,
>
> Christopher Baines <mail@cbaines.net> skribis:
>
>> * guix/scripts/weather.scm (all-packages): Delete duplicates, so that
>> exported
>> replacements aren't included twice.
>
> LGTM, and apologies for the delay!
Great, I've pushed this now as 9540323458de87b0b8aa421e449a4fe27af7c393.
signature.asc
Description: PGP signature
--- End Message ---
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#49522: closed ([PATCH] weather: Don't look for exported package replacements twice.),
GNU bug Tracking System <=