Subject: [bug#54000] [PATCH 0/2] Not showing upgraded/added packages in 'guix pull'

From: Liliana Marie Prikler <[email-masked]>
Date: Thu, 17 Feb 2022 13:52:11 +0100

Hi zimoun,

Am Donnerstag, dem 17.02.2022 um 13:04 +0100 schrieb zimoun:
> Hi Liliana,
> 
> Stats, ~24 updates and ~13 additions per day on average (over the
> past year).  If you pull twice a day, then yes you can read this
> information.
> But, I bet people pull once a week, at best, so it looks like more
> “noise“ and I guess most people miss the news.
For the record, that's < 150 updates and < 100 additions per week.  Of
course, these numbers tend to get higher as Guix grows, but for now I
personally find this both manageable and helpful.  Which doesn't mean I
want it done by default, just that I want a way of doing it.

Furthermore, news are displayed at the bottom, so if you're not
interested in the noise, just don't scroll up :P
Granted, if you're piping the output to a pager, that doesn't help you.

> About grepping, it is not straightforward.  For instance, I get this:
> 
> --8<---------------cut here---------------start------------->8---
> $ guix pull --news | grep python 
>     openshadinglanguage, perl-date-range, pgcli, plfit, poweralertd,
> pproxy, python-aiosignal, python-android-backup,
>     python-asdf-astropy, python-astral, python-astropy-healpix,
> python-astroquery, python-canvasapi, python-cmarkgfm,
>     python-cucumber-tag-expressions, python-cython-next, python-doit,
> python-esprima, python-executing,
>     python-flask-assets, python-flit-core-bootstrap, python-
> frozenlist, python-fs, python-geojson, python-gwcs,
>     python-ipython-sql, python-markdownify, python-miio, python-
> pgspecial, python-photutils, python-phpserialize,
>     python-piexif, python-psycopg, python-psycopg-pool, python-
> pydbus, python-pyftpdlib, python-pylru, python-pyowm,
>     python-pypdf3, python-pyrss2gen, python-pyscss, python-
> pysendfile, python-pystitcher,
>     python-pytest-doctest-custom, python-pytest-metadata, python-
> pytest-pydocstyle, python-pyvo, python-reedsolo,
>     python-regions, python-retry, python-roundrobin, python-sarge,
> python-sentry-sdk, python-setuptools-rust,
>     python-sphinx-click, python-sphinxcontrib-apidoc, python-tomli-w,
> python-tweepy, python-typeguard,
> --8<---------------cut here---------------end--------------->8---
> 
> So I do not think the current display is adequate for grepping.
I agree that with certain packages that's a little harder to do than
with others, but particularly with python the way to resolve this would
be to grep for 'python@'

> Somehow, the feature you want should be separated.  For instance,
> 
>     guix pull --updated
>     guix pull --added
>     guix pull --new-versions
That would perhaps help if your aim is to optimize for computation
time, but I'd still prefer all changes.  It also helps that we already
have that code, so we only have to tell people to e.g. use --changes
instead of --news if that is the thing they wanted.  
W.r.t. only listing some of the changes, one could later implement
options like --changes=added,removed,updated,rewritten,...

> > In general, it doesn't have to be named ‘--news --details’, but a
> > means of diffing two generations via the CLI -- in particular the
> > current one to the last -- would be very welcome, because then all
> > information we previously had would still be available quite
> > easily, albeit no longer printed by default.
> 
> That feature is interesting but it appears to me orthogonal with the
> current proposal.
Orthogonal in which way?  In that we could implement such a feature
without changing the way `guix pull' normally works and vice versa? 
Sure.  In that we'd not be losing any information if we changed `guix
pull' without providing such an option?  Eh...