all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: emacs-devel@gnu.org
Cc: Stefan Monnier <monnier@iro.umontreal.ca>
Subject: Re: [ELPA] New package: repology.el (v4)
Date: Tue, 19 Jan 2021 10:50:06 +0100	[thread overview]
Message-ID: <87eeih9rxt.fsf_-_@nicolasgoaziou.fr> (raw)
In-Reply-To: <jwvr1n0txte.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Mon, 04 Jan 2021 12:32:59 -0500")

Hello,

As announced a few days ago, and with the guidance of Stefan Monnier,
I tweaked "repology.el" so it is somewhat aware about freedom, and
cautious about what it displays.

TL;DR: it is currently located at <https://elpa.gnu.org/devel/repology.html>.

Here is its current commentary section. The third and fifth paragraphs
are of particular interest for the discussion.

    This package provides tools to query Repology API
    (<https://repology.org/api>), process results, and display them.
    
    The results of a query revolve around three types of objects:
    projects, packages and problems.  Using this library, you can find
    projects matching certain criteria, packages in a given project,
    and possible problems in some repository.  See `repology-search-projects',
    `repology-lookup-project', and `repology-report-problems'.
    Projects-related requests are limited to `repology-projects-limit'.
    All requests are cached during `repology-cache-duration' seconds.
    
    By default, only projects recognized as free are included in the search
    results.  You can control this behavior with the variable
    `repology-free-only-projects'.  The function `repology-check-freedom'
    is responsible for guessing if a project, or a package, is free.
    
    You can then access data from those various objects using dedicated
    accessors.  See, for example, `repology-project-name',
    `repology-project-packages', `repology-package-field', or
    `repology-problem-field'.
    
    You can also decide to display (a subset of) results in a tabulated
    list.  See `repology-display-package', `repology-display-packages',
    `repology-display-projects' and `repology-display-problems'.  You
    can control various aspects of the display, like the colors used
    (see `repology-status-faces'), or the columns shown (see
    `repology-display-packages-columns',`repology-display-projects-columns',
    and `repology-display-problems-columns').  When projects or packages
    are displayed, pressing <RET> gives you more information about the item
    at point, whereas pressing <F> reports their "freedom" status.
    
    For example, the following expression displays all outdated projects
    named after "emacs" and containing a package in GNU Guix repository
    that I do not ignore:
    
       (repology-display-projects
        (seq-filter (lambda (project)
                      (not (member (repology-project-name project)
                                   my-ignored-projects)))
                    (repology-search-projects
                     :search "emacs" :inrepo "gnuguix" :outdated "on")))
    
    Eventually, this library provides an interactive function with
    a spartan interface wrapping this up: `repology'.  Since it builds
    and displays incrementally search filters, you may use it as
    a template to create your own queries.

The library distinguishes between three categories of freedom for
projects/packages: free, non-free, and unknown. Out of the 200.000
projects from Repology, it currently considers that about 73.000 are
free, 300 are non-free, and the rest is unknown.

Out of the box, the interface now only displays projects _most likely
free_ (more in this below). It is also possible to configure it so it
displays both free and unknown categories, or everything.

The commentary section in "repology-license.el" explains how freedom
state is obtained:

    This library provides the `repology-check-freedom' function, which returns
    t when a package or a project can be considered as free, nil it is
    identified as being non-free, and `unknown' otherwise.
    
    The decision is made by polling a number of "Reference repositories",
    defined in `repology-license-reference-repositories'.  If the ratio of
    "Free" votes is above `repology-license-poll-threshold', the project is
    declared as free.
    
    In order to see the results of each vote, and possibly debug the process,
    you can set `repology-license-debug' to a non-nil value.

Currently, reference repositories are: Debian, Fedora, OpenSUSE, Gentoo,
Mageia, along with all FSF-endorsed distributions known to Repology: GNU
Guix, Hyperbola, Parabola, PureOS, and Trisquel. I also added GNU ELPA
as a specialized repository.

The poll threshold is set to 0.5, so a package/project needs a strict
majority of "Free" votes to be considered as free. As explained above,
it is possible to look at the vote results to understand the final
decision for each project.

I hope this is now more in line with GNU expectations. Let me know if
you have questions, or suggestions.

Regards,
-- 
Nicolas Goaziou



  reply	other threads:[~2021-01-19  9:50 UTC|newest]

Thread overview: 252+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-30 16:23 [ELPA] New package: repology.el Nicolas Goaziou
2020-12-30 19:34 ` Jean Louis
2020-12-30 21:01   ` Clément Pit-Claudel
2020-12-31 13:31     ` Jean Louis
2020-12-31 11:46   ` Nicolas Goaziou
2020-12-31 13:11     ` Jean Louis
2020-12-31 20:30       ` Ulrich Mueller
2021-01-01  7:31         ` Richard Stallman
2021-01-01 10:05         ` Jean Louis
2021-01-01 11:56           ` Eli Zaretskii
2021-01-02  9:56             ` Jean Louis
2021-01-02  5:30           ` Richard Stallman
2021-01-04 12:09             ` Dmitry Gutov
2021-01-04 14:39               ` Alfred M. Szmidt
2021-01-04 15:00                 ` Ulrich Mueller
2021-01-04 16:32                   ` Alfred M. Szmidt
2021-01-05  6:45                   ` Richard Stallman
2021-01-05  8:56                     ` Alfred M. Szmidt
2021-01-07  7:34                       ` Richard Stallman
2021-01-04 15:02                 ` Dmitry Gutov
2021-01-04 16:29                   ` Alfred M. Szmidt
2021-01-04 17:08                     ` Dmitry Gutov
2021-01-04 17:12                       ` Alfred M. Szmidt
2021-01-04 17:17                         ` Dmitry Gutov
2021-01-04 17:58                           ` Alfred M. Szmidt
2021-01-04 17:43                         ` Clément Pit-Claudel
2021-01-04 17:55                           ` Vasilij Schneidermann
2021-01-04 18:51                             ` Clément Pit-Claudel
2021-01-04 22:21                               ` Vasilij Schneidermann
2021-01-05  2:09                                 ` Stefan Monnier
2021-01-05  6:42                                   ` Richard Stallman
2021-01-05  9:28                                     ` Ulrich Mueller
2021-01-06  5:03                             ` Richard Stallman
2021-01-06  9:44                               ` Alfred M. Szmidt
2021-01-07 17:51                                 ` Richard Stallman
2021-01-04 19:14                           ` Ulrich Mueller
2021-01-04 19:17                             ` Clément Pit-Claudel
2021-01-06  5:02                       ` Richard Stallman
2021-01-06 10:58                         ` Dmitry Gutov
2021-01-06 14:41                         ` Jean Louis
2021-01-06 14:59                           ` Arthur Miller
2021-01-06 15:21                             ` Jean Louis
2021-01-06 16:23                               ` Arthur Miller
2021-01-06 18:53                                 ` Jean Louis
2021-01-06 19:26                                   ` Eli Zaretskii
2021-01-06 21:18                                     ` Alfred M. Szmidt
2021-01-06 21:25                                       ` Dmitry Gutov
2021-01-07  7:47                                         ` Richard Stallman
     [not found]                                         ` <E1kxGuO-00079C-NR@fencepost.gnu.org>
     [not found]                                           ` <b94804db-7140-d450-6fc2-5afa440a8736@yandex.ru>
     [not found]                                             ` <E1kxZru-0007Cl-DD@fencepost.gnu.org>
2021-01-07 18:46                                               ` Dmitry Gutov
2021-01-07 21:07                                                 ` Alfred M. Szmidt
2021-01-08  7:04                                                   ` Eli Zaretskii
2021-01-08 10:14                                                     ` Privileges and practicalities [was: Re: [ELPA] New package: repology.el] Göktuğ Kayaalp
2021-01-08 11:46                                                       ` Jean Louis
2021-01-08 12:51                                                         ` Aldric Giacomoni
2021-01-08 16:23                                                         ` Ulrich Mueller
2021-01-08 18:47                                                           ` Jean Louis
2021-01-09  6:42                                                           ` Richard Stallman
2021-01-11 14:11                                                             ` Arthur Miller
2021-01-12  6:09                                                               ` Richard Stallman
2021-01-12 14:29                                                                 ` Arthur Miller
2021-01-08 19:17                                                         ` Göktuğ Kayaalp
2021-01-09  6:41                                                           ` Richard Stallman
2021-01-11 14:24                                                             ` Arthur Miller
2021-01-12  6:09                                                               ` Richard Stallman
2021-01-12 14:19                                                                 ` Arthur Miller
2021-10-04 13:46                                                             ` Time to dial back the dialectic? [was: Re: Privileges and practicalities] dick
2021-10-04 14:20                                                               ` Eli Zaretskii
2021-10-06 20:53                                                               ` Richard Stallman
2021-01-09  7:25                                                           ` Privileges and practicalities [was: Re: [ELPA] New package: repology.el] Jean Louis
2021-01-10 17:18                                                           ` Devin Prater
2021-01-11 15:57                                                             ` Jean Louis
2021-01-09  6:40                                                         ` Richard Stallman
2021-01-09  6:40                                                         ` Richard Stallman
2021-01-11 13:47                                                         ` Arthur Miller
2021-01-12  6:10                                                           ` Richard Stallman
2021-01-12 14:32                                                             ` Arthur Miller
2021-01-13  5:42                                                               ` Richard Stallman
2021-01-08 13:53                                                     ` [ELPA] New package: repology.el Jean Louis
2021-01-08 17:22                                                     ` Alfred M. Szmidt
2021-01-08 18:38                                                       ` Eli Zaretskii
2021-01-08 19:40                                                       ` Dmitry Gutov
2021-01-10  6:06                                                       ` Sv: " arthur miller
2021-01-11  4:42                                                         ` Richard Stallman
2021-01-11 13:00                                                           ` Arthur Miller
2021-01-12  6:11                                                             ` Richard Stallman
2021-01-12 14:10                                                               ` Arthur Miller
2021-01-13  5:42                                                                 ` Richard Stallman
2021-01-09  6:37                                                   ` Richard Stallman
2021-01-09  8:41                                                     ` Eli Zaretskii
2021-01-10  6:31                                                     ` Sv: " arthur miller
2021-01-13  5:29                                                       ` Richard Stallman
2021-01-15 14:37                                                         ` Arthur Miller
     [not found]                                               ` <2c5399e3-fa36-575d-d662-c7498dc334d6@yandex.ru>
     [not found]                                                 ` <X/dsHBhcgPAXbqwe@protected.rcdrun.com>
2021-01-07 20:34                                                   ` Dmitry Gutov
2021-01-07 20:47                                                     ` Jean Louis
     [not found]                                               ` <834kjslexq.fsf@gnu.org>
     [not found]                                                 ` <E1kxcV3-0005Rt-7a@fencepost.gnu.org>
2021-01-08  7:06                                                   ` Eli Zaretskii
2021-01-08 11:48                                                     ` Jean Louis
2021-01-08 12:34                                                       ` Eli Zaretskii
2021-01-08 13:56                                                         ` Jean Louis
2021-01-08 14:45                                                           ` Eli Zaretskii
2021-01-08 18:27                                                             ` Jean Louis
2021-01-08 19:38                                                               ` Eli Zaretskii
2021-01-09  6:41                                                                 ` Richard Stallman
2021-01-09  8:54                                                                   ` Eli Zaretskii
2021-01-10  6:07                                                                     ` Richard Stallman
2021-01-10  6:04                                                             ` Richard Stallman
2021-01-10  6:04                                                         ` Richard Stallman
2021-01-07  8:54                                       ` Jean Louis
2021-01-07 14:07                                       ` Eli Zaretskii
2021-01-07 18:18                                         ` Alfred M. Szmidt
2021-01-07 19:31                                           ` Eli Zaretskii
2021-01-07 21:07                                             ` Alfred M. Szmidt
2021-01-07 21:17                                               ` Dmitry Gutov
2021-01-08 17:22                                                 ` Alfred M. Szmidt
2021-01-08 19:43                                                   ` Dmitry Gutov
2021-01-09  6:41                                                     ` Richard Stallman
2021-01-09  8:57                                                       ` Eli Zaretskii
2021-01-08 19:48                                                   ` Eli Zaretskii
2021-01-10  5:59                                                   ` Sv: " arthur miller
2021-01-11  4:43                                                     ` Richard Stallman
2021-01-11 13:35                                                       ` Arthur Miller
2021-01-12  6:10                                                         ` Richard Stallman
2021-01-12 15:20                                                           ` Eli Zaretskii
2021-01-12 15:28                                                             ` Dmitry Gutov
2021-01-12  6:11                                                         ` Richard Stallman
2021-01-12 14:08                                                           ` Arthur Miller
2021-01-13  5:43                                                             ` Richard Stallman
2021-01-15 14:46                                                               ` Arthur Miller
2021-01-09  6:34                                                 ` Richard Stallman
2021-01-09 19:04                                                   ` Dmitry Gutov
2021-01-11  4:43                                                     ` Richard Stallman
2021-01-09  6:37                                               ` Richard Stallman
2021-01-09  8:43                                                 ` Eli Zaretskii
2021-01-07  7:49                                     ` Richard Stallman
2021-01-07 11:41                                       ` Dmitry Gutov
2021-01-09  6:39                                         ` Richard Stallman
2021-01-09 10:50                                           ` Dmitry Gutov
2021-01-07 14:24                                       ` Eli Zaretskii
2021-01-07  8:15                                     ` Jean Louis
2021-01-07 14:37                                       ` Eli Zaretskii
2021-01-07 19:38                                         ` Jean Louis
2021-01-07 20:00                                           ` Eli Zaretskii
2021-01-07 20:31                                             ` Jean Louis
2021-01-07 20:38                                               ` Eli Zaretskii
2021-01-07 21:00                                                 ` Jean Louis
2021-01-08  6:58                                                   ` Eli Zaretskii
2021-01-08 10:24                                                     ` Arthur Miller
2021-01-08 11:28                                                     ` Jean Louis
2021-01-09  6:35                                             ` Richard Stallman
2021-01-09  8:36                                               ` Eli Zaretskii
2021-01-09  8:39                                               ` Eli Zaretskii
2021-01-10  6:13                                                 ` Sv: " arthur miller
2021-01-06 20:36                                   ` Arthur Miller
2021-01-07  7:48                                     ` Richard Stallman
2021-01-07 16:53                                       ` Arthur Miller
2021-01-14  5:21                                         ` Richard Stallman
2021-01-15 14:52                                           ` Arthur Miller
2021-01-16  5:14                                             ` Richard Stallman
2021-01-07  8:49                                     ` Jean Louis
2021-01-07  7:49                                   ` Richard Stallman
2021-01-07  9:00                                     ` Jean Louis
2021-01-08  6:21                                       ` Richard Stallman
2021-01-08  6:25                                       ` Richard Stallman
2021-01-08  6:30                                         ` Jean Louis
2021-01-09  6:45                                           ` frepology.org Richard Stallman
2021-01-09  8:11                                             ` frepology.org Jean Louis
2021-01-11  4:47                                               ` frepology.org Richard Stallman
2021-01-07 10:55                                     ` [ELPA] New package: repology.el Ulrich Mueller
2021-01-07 11:46                                       ` Jean Louis
2021-01-07 19:38                                         ` Ulrich Mueller
2021-01-07 20:23                                           ` Jean Louis
2021-01-08 11:54                                             ` Ulrich Mueller
2021-01-08 18:23                                               ` Jean Louis
2021-01-09  6:35                                           ` Richard Stallman
2021-01-07 18:18                                       ` Alfred M. Szmidt
2021-01-09  6:34                                       ` Richard Stallman
2021-01-09 21:07                                         ` Ulrich Mueller
2021-01-11  4:46                                           ` Richard Stallman
2021-01-12  8:24                                             ` Ulrich Mueller
2021-01-20  6:14                                       ` Richard Stallman
2021-01-21 11:09                                         ` Ulrich Mueller
2021-01-22  6:06                                           ` Richard Stallman
2021-01-22  9:43                                             ` Ulrich Mueller
2021-01-24  6:35                                               ` Richard Stallman
2021-01-24  8:34                                                 ` Ulrich Mueller
2021-01-25  5:53                                                   ` Richard Stallman
2021-01-25  6:52                                                     ` Jean Louis
2021-01-25 12:11                                                       ` Fabrice BAUZAC-STEHLY
2021-01-25 15:29                                                       ` Eli Zaretskii
2021-01-27  7:37                                                       ` Richard Stallman
2021-01-25 15:51                                                     ` Dmitry Gutov
2021-01-25 17:59                                                       ` Jean Louis
2021-01-25 18:21                                                         ` Dmitry Gutov
2021-01-26  3:40                                                           ` Jean Louis
2021-01-26  6:10                                                           ` Richard Stallman
2021-01-26 13:42                                                             ` Stefan Monnier
2021-01-27 18:32                                                               ` Jean Louis
2021-01-25 19:33                                                         ` Eli Zaretskii
2021-01-25 19:38                                                         ` Eli Zaretskii
2021-01-26 13:21                                                         ` Richard Stallman
2021-01-26  5:59                                                       ` Richard Stallman
2021-01-26 13:15                                                         ` Dmitry Gutov
2021-01-27  7:41                                                           ` Richard Stallman
2021-01-24 10:53                                                 ` Org schemas we talked to be non-free, was: " Jean Louis
2021-01-24 17:50                                                   ` Ulrich Mueller
2021-01-24 19:12                                                     ` Jean Louis
2021-01-24 19:53                                                       ` Eli Zaretskii
2021-01-24 20:36                                                         ` Ulrich Mueller
2021-01-25 15:06                                                           ` Eli Zaretskii
2021-01-26  6:01                                                             ` Richard Stallman
2021-01-26 15:57                                                               ` Eli Zaretskii
2021-01-26 16:03                                                                 ` Dmitry Gutov
2021-01-26 16:13                                                                   ` Eli Zaretskii
2021-01-26 16:14                                                                     ` Dmitry Gutov
2021-01-26 16:31                                                                       ` Eli Zaretskii
2021-01-26 22:55                                                                         ` Dmitry Gutov
2021-01-28  6:29                                                                 ` Richard Stallman
2021-01-28 14:08                                                                   ` Eli Zaretskii
2021-01-29  6:36                                                                     ` Richard Stallman
2021-01-24 20:47                                                         ` Jean Louis
2021-01-25 15:13                                                           ` Eli Zaretskii
2021-01-25 17:50                                                             ` Jean Louis
2021-01-25 17:56                                                             ` Jean Louis
2021-01-25 19:27                                                               ` Eli Zaretskii
2021-01-26  3:50                                                                 ` Jean Louis
2021-01-26  6:09                                                               ` Richard Stallman
2021-01-25 20:10                                                             ` Ulrich Mueller
2021-01-25 20:21                                                               ` Eli Zaretskii
2021-01-26  6:09                                                               ` Richard Stallman
2021-01-25  5:53                                                         ` Richard Stallman
2021-01-25 15:27                                                           ` Eli Zaretskii
2021-01-24 20:46                                                       ` tomas
2021-01-27  7:35                                                         ` Richard Stallman
2021-01-25  5:53                                                       ` Richard Stallman
2021-01-25  9:27                                                         ` Ulrich Mueller
2021-01-26  6:03                                                           ` Richard Stallman
2021-01-26  9:24                                                             ` Ulrich Mueller
2021-01-27  7:43                                                               ` Richard Stallman
2021-01-26 15:43                                                             ` Jose A. Ortega Ruiz
2021-01-26 16:48                                                             ` Kévin Le Gouguec
2021-01-28  6:34                                                               ` Richard Stallman
2021-01-25  5:51                                                     ` Richard Stallman
2021-02-16  5:21                                       ` freedom issues in free software Richard Stallman
2021-01-07 15:05                                     ` [ELPA] New package: repology.el Stefan Monnier
2021-01-13 15:57                                       ` Richard Stallman
2021-01-05  6:33               ` Richard Stallman
2021-01-05 11:21                 ` Dmitry Gutov
2021-01-07  7:32                   ` Richard Stallman
2020-12-30 21:58 ` [ELPA] New package: repology.el (v2) Nicolas Goaziou
2021-01-04 11:45   ` [ELPA] New package: repology.el (v3) Nicolas Goaziou
2021-01-04 17:32     ` Stefan Monnier
2021-01-19  9:50       ` Nicolas Goaziou [this message]
2021-01-20  6:13         ` [ELPA] New package: repology.el (v4) Richard Stallman

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=87eeih9rxt.fsf_-_@nicolasgoaziou.fr \
    --to=mail@nicolasgoaziou.fr \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /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/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.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.