unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#36394: guix.gnu.org/packages lists incorrect sqlite versions
@ 2019-06-26 18:14 Tobias Geerinckx-Rice
  2020-06-11  6:07 ` Royce Strange
  0 siblings, 1 reply; 3+ messages in thread
From: Tobias Geerinckx-Rice @ 2019-06-26 18:14 UTC (permalink / raw)
  To: 36394

[-- Attachment #1: Type: text/plain, Size: 698 bytes --]

Guix,

The package list at <https://guix.gnu.org/packages/S/page/4/> 
displays the wrong versions for sqlite:

  sqlite 3.26.0
  sqlite 3.26.0
  sqlite-with-column-metadata 3.26.0

Which should be:

  $ guix pull && guix package -A ^sqlite
  sqlite	3.26.0	…
  sqlite	3.24.0	…
  sqlite-with-column-metadata	3.24.0	…

At first glance it looks like the Web list iterates over package 
names instead of package records, then looks up the ‘default’ 
package for each name  …  but packages like ‘gcc-objc’[0] are 
listed correctly, so maybe that's not what's happening.

Noticed by sebboh on #guix.

Kind regards,

T G-R

[0]: https://guix.gnu.org/packages/G/

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#36394: guix.gnu.org/packages lists incorrect sqlite versions
  2019-06-26 18:14 bug#36394: guix.gnu.org/packages lists incorrect sqlite versions Tobias Geerinckx-Rice
@ 2020-06-11  6:07 ` Royce Strange
  2020-06-13 20:43   ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Royce Strange @ 2020-06-11  6:07 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: 36394

[-- Attachment #1: Type: text/plain, Size: 1128 bytes --]

Tobias Geerinckx-Rice <me@tobias.gr> writes:

> Guix,
>
> The package list at <https://guix.gnu.org/packages/S/page/4/> displays
> the wrong versions for sqlite:
>
>  sqlite 3.26.0
>  sqlite 3.26.0
>  sqlite-with-column-metadata 3.26.0
>
> Which should be:
>
>  $ guix pull && guix package -A ^sqlite
>  sqlite	3.26.0	…
>  sqlite	3.24.0	…
>  sqlite-with-column-metadata	3.24.0	…

It looks like the duplicates happen to replaced packages:
https://guix.gnu.org/packages/G/page/9/
(see gnutls, as sqlite is one package now)

Narrowed it down to the code that generates the packages list 
for the website in the guix-artwork repo.

It looks like the original intent was to filter out replaced packages,
instead of keeping them in the list (which is what guix search does).
This will affect https://guix.gnu.org/packages.json which I believe feeds
guix package information in repology.

Attached is a patch to filter out the replaced packages.
If it is more appropriate for the website to be consistent with 
guix search and keep replaced packages in the list, 
I can submit an updated patch.

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-website-Fix-duplicated-packages-in-the-package-list.patch --]
[-- Type: text/x-patch, Size: 1500 bytes --]

From aac774421d5b746e633138c78768dcadb6be1650 Mon Sep 17 00:00:00 2001
From: Royce Strange <royball@disroot.org>
Date: Thu, 11 Jun 2020 00:41:45 -0500
Subject: [PATCH] website: Fix duplicated packages in the package-list

Fixes <https://bugs.gnu.org/36394>.

* website/apps/packages/data.scm (%package-list):
Filter out replaced packages.
---
 website/apps/packages/data.scm | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/website/apps/packages/data.scm b/website/apps/packages/data.scm
index f1fa55d..d1bbc92 100644
--- a/website/apps/packages/data.scm
+++ b/website/apps/packages/data.scm
@@ -41,11 +41,10 @@
            (sort (parameterize ((%package-module-path (last-pair
                                                        (%package-module-path))))
                    (fold-packages (lambda (package lst)
-                                    (if (package-superseded package)
+                                    (if (or (package-superseded package)
+                                            (package-replacement package))
                                         lst
-                                        (cons (or (package-replacement package)
-                                                  package)
-                                              lst)))
+                                        (cons package lst)))
                                   '()))
                  (lambda (p1 p2)
                    (string<? (package-name p1)
-- 
2.26.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* bug#36394: guix.gnu.org/packages lists incorrect sqlite versions
  2020-06-11  6:07 ` Royce Strange
@ 2020-06-13 20:43   ` Ludovic Courtès
  0 siblings, 0 replies; 3+ messages in thread
From: Ludovic Courtès @ 2020-06-13 20:43 UTC (permalink / raw)
  To: Royce Strange; +Cc: 36394-done

Hi,

Royce Strange <royball@disroot.org> skribis:

> From aac774421d5b746e633138c78768dcadb6be1650 Mon Sep 17 00:00:00 2001
> From: Royce Strange <royball@disroot.org>
> Date: Thu, 11 Jun 2020 00:41:45 -0500
> Subject: [PATCH] website: Fix duplicated packages in the package-list
>
> Fixes <https://bugs.gnu.org/36394>.
>
> * website/apps/packages/data.scm (%package-list):
> Filter out replaced packages.

Applied, thanks!

I think duplicates come from replacements that are also public (and thus
traversed by ‘fold-packages’), which is not necessarily the case, but
it’s good to do it this way.

Ludo’.




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-06-13 20:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-26 18:14 bug#36394: guix.gnu.org/packages lists incorrect sqlite versions Tobias Geerinckx-Rice
2020-06-11  6:07 ` Royce Strange
2020-06-13 20:43   ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).