Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.bugs.dist > #1171268

Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries

From Jonathan Kamens <jik@kamens.us>
Newsgroups linux.debian.bugs.dist
Subject Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries
Date 2023-10-09 17:40 +0200
Message-ID <Hn0wp-eFIF-1@gated-at.bofh.it> (permalink)
References <HmK8h-etra-1@gated-at.bofh.it> <HmK8h-etra-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

TLDR this will be fixed in 4.1 and it's a significant enough fix that I 
should probably release 4.1 to experimental

So, this was one of the edge cases mentioned in the design documentation 
for the revamped changelog filtering logic: when the persistent database 
is not being used in a particular invocation of the program or there is 
no data for a particular package in the database (this is what you ran 
into), and the changelog data for a package is being fetched over the 
network because it is not present in the package, we can't use 
historical changelog data to determine which entries to display and 
which to filter out.

I was going to treat this as a transitional issue arising from the 
switch to the new filtering logic, but I think it's going to happen more 
often than expected and not just because of that transition (e.g., it 
will happen whenever anybody installs a new package that doesn't have 
local changelogs and then later it gets upgraded), so I went ahead and 
implemented the additional logic I had suggested in bug#1052697: in this 
one particular edge case, fall back on version-number filtering like the 
program used to do.

However, the logic I've added back is not exactly like the old logic; it 
is more robust and careful not to exclude changelog entries it 
shouldn't. As a result, there will still be cases in which it decides it 
can't reliably filter the network changelog and display all of it. 
Fortunately, however, the case you cited in this bug is not one of those 
cases. ;-)

I added a unit test for this and it failed before this change and passes 
now.

jik

On 10/8/23 18:02, Russ Allbery wrote:
> Package: apt-listchanges
> Version: 4.0
> Severity: normal
> X-Debbugs-Cc:rra@debian.org
>
> An apt run that included the following upgrades:
>
> Unpacking python3.11-dev (3.11.6-3) over (3.11.6-2) ...
> Unpacking libpython3.11-dev:amd64 (3.11.6-3) over (3.11.6-2) ...
> Unpacking libpython3.11:amd64 (3.11.6-3) over (3.11.6-2) ...
> Unpacking python3.11-venv (3.11.6-3) over (3.11.6-2) ...
> Unpacking python3.11 (3.11.6-3) over (3.11.6-2) ...
> Unpacking libpython3.11-stdlib:amd64 (3.11.6-3) over (3.11.6-2) ...
> Unpacking python3.11-minimal (3.11.6-3) over (3.11.6-2) ...
> Unpacking libpython3.11-minimal:amd64 (3.11.6-3) over (3.11.6-2) ...
> Unpacking python3.11-doc (3.11.6-3) over (3.11.6-2) ...
>
> appears to have gotten confused about what entries I would have seen before
> and showed me what appeared to be the entire python3.11 changelog. I thought
> it may have only been because the package name in that changelog changes
> over time, but it also showed me the entries for 3.11.6-2 and 3.11.6-1,
> which have the same source and binary package names and were already
> installed. That makes me think something more fundamental may have gone
> wrong.
>
> I'm not completely sure which package the changelog entries were pulled from.
> I spot-checked a few of them on disk and they all seemed to be truncated at
> python3.8, but apt-listchanges found and displayed changelog entries going
> back to python2.* versions.
>
> -- Package-specific info:
> ==> /etc/apt/listchanges.conf <==
> [apt]
> frontend=pager
> email_address=none
> confirm=0
> save_seen=/var/lib/apt/listchanges
> which=both
> no_network=false
> headers=false
> reverse=false
>
>
> -- System Information:
> Debian Release: trixie/sid
>    APT prefers unstable
>    APT policy: (990, 'unstable'), (500, 'unstable-debug'), (500, 'testing'), (1, 'experimental')
> Architecture: amd64 (x86_64)
> Foreign Architectures: i386
>
> Kernel: Linux 6.5.0-1-amd64 (SMP w/8 CPU threads; PREEMPT)
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
> Shell: /bin/sh linked to /usr/bin/dash
> Init: systemd (via /run/systemd/system)
> LSM: AppArmor: enabled
>
> Versions of packages apt-listchanges depends on:
> ii  apt                    2.7.6
> ii  debconf [debconf-2.0]  1.5.82
> ii  python3                3.11.4-5+b1
> ii  python3-apt            2.6.0
> ii  python3-debconf        1.5.82
> ii  sensible-utils         0.0.20
> ii  ucf                    3.0043+nmu1
>
> apt-listchanges recommends no packages.
>
> Versions of packages apt-listchanges suggests:
> ii  chromium [www-browser]              117.0.5938.149-1
> ii  firefox [www-browser]               118.0-1+b1
> ii  google-chrome-stable [www-browser]  117.0.5938.149-1
> ii  links [www-browser]                 2.29-1+b1
> ii  lynx [www-browser]                  2.9.0dev.12-1
> ii  postfix [mail-transport-agent]      3.8.2-1
> ii  python3-gi                          3.46.0-1
> ii  w3m [www-browser]                   0.5.3+git20230121-2
> ii  xterm [x-terminal-emulator]         385-1
>
> -- debconf information:
> * apt-listchanges/headers: false
>    apt-listchanges/email-format: text
> * apt-listchanges/frontend: pager
> * apt-listchanges/email-address:
> * apt-listchanges/reverse: false
> * apt-listchanges/confirm: false
> * apt-listchanges/which: both
> * apt-listchanges/save-seen: true
> * apt-listchanges/no-network: false
>

Back to linux.debian.bugs.dist | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries Russ Allbery <rra@debian.org> - 2023-10-09 00:10 +0200
  Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries Russ Allbery <rra@debian.org> - 2023-10-09 04:30 +0200
    Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries Jonathan Kamens <jik@kamens.us> - 2023-10-09 05:10 +0200
  Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries Jonathan Kamens <jik@kamens.us> - 2023-10-09 17:40 +0200
    Bug#1053696: Upgrading Python packages showed numerous ancient changelog entries Russ Allbery <rra@debian.org> - 2023-10-09 18:20 +0200

csiph-web