Bug 29335 - urpmi does not install new recommends during package update from Core Backports Testing
Summary: urpmi does not install new recommends during package update from Core Backpor...
Status: RESOLVED INVALID
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 8
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Mageia tools maintainers
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-08-06 00:33 CEST by Barry Jackson
Modified: 2021-08-06 16:27 CEST (History)
2 users (show)

See Also:
Source RPM: urpmi-8.125-1.mga8.src.rpm
CVE:
Status comment:


Attachments

Description Barry Jackson 2021-08-06 00:33:09 CEST
Description of problem:
Testing a proposed update of opencpn which has new recommends from both Core Backports (testing) and Nonfree Backports (testing) I find that the ones from 
Nonfree Backports (testing) are installed correctly and the ones from Core Backports (testing) are not. *Updates* from Core Backports (testing) are installed correctly.

To satisfy dependencies, the following packages are going to be installed:
(test only, installation will not be actually done)
  Package                        Version      Release       Arch    
(medium "Extra Release")
  opencpn                        5.2.4        2.1.5.mga8_b> x86_64  
(medium "Core Release")
  lib64usb-compat0.1_4           0.1.5        10.mga8       x86_64  (recommended)
  lib64wx_baseu_net3.0_0         3.0.5.1      1.mga8        x86_64  
  lib64wx_gtk3u_gl3.0_0          3.0.5.1      1.mga8        x86_64  
  lib64wx_gtk3u_qa3.0_0          3.0.5.1      1.mga8        x86_64  
  lib64wx_gtk3u_webview3.0_0     3.0.5.1      1.mga8        x86_64  
(medium "Core Updates Testing")
  opencpn-ais-radar-plugin       1.2.10.0     1.mga8        x86_64  
  opencpn-celestial-navigation-> 2.3          9.1.mga8      x86_64  
  opencpn-climatology-plugin     1.4.23.0     2.mga8        x86_64  
  opencpn-iacfleet-plugin        0.21.1       1.mga8        x86_64  
  opencpn-logbookkonni-plugin    1.4.008      5.2.mga8      x86_64  
  opencpn-objsearch-plugin       0.21         6.1.mga8      x86_64  
  opencpn-polar-plugin           1.1.17.1     2.1.mga8      x86_64  
  opencpn-squiddio-plugin        1.3.10.0     3.1.mga8      x86_64  
  opencpn-statusbar-plugin       0.8          2.1.mga8      x86_64  
  opencpn-watchdog-plugin        2.4.30.2     1.mga8        x86_64  
  opencpn-weather-routing-plugin 1.13.22.0    1.mga8        x86_64  
  opencpn-weatherfax-plugin      1.9.18.0     1.mga8        x86_64  
(medium "Core Backports Testing")
  opencpn-radar-plugin           5.1.5        1.mga8        x86_64  
(medium "Nonfree Backports Testing")
  opencpn-oernc-plugin           1.2.5        3.mga8.nonfr> x86_64  (recommended)
  opencpn-oesenc-plugin          4.2.15       6.mga8.nonfr> x86_64  (recommended)
  opencpn-s63-plugin             1.17.1       3.mga8.nonfr> x86_64  (recommended)
3.8MB of additional disk space will be used.
31MB of packages will be retrieved.

All the packages from Core Updates Testing above are updates of recommended packages from previous install - OK.
The one package from Core Backports Testing is also an update which provides and obsoletes an old package - OK.
The three packages in Nonfree Backports Testing are new recommends - OK.

However there are two new recommends from Core Backports Testing missing:
opencpn-route-plugin
opencpn-sar-plugin

These install fine from a clean new install but are ignored on update.

If the expected behaviour is *not* to install new recommends on update then it is broken for Nonfree Backports testing.

If the expected behaviour *is* to install new recommends on update then it is broken for Core Backports testing.

I am not sure which is expected, but something is inconsistent.

Tested in a clean net-installed Mga8 VM.

Running urpmi --debug there is no mention of the missing recommends.


 

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
Comment 1 Dave Hodgins 2021-08-06 01:55:37 CEST
Is this using qarepo?

Which repos have the update keyword in /etc/urpmi/urpmi.cfg?

CC: (none) => davidwhodgins

Comment 2 Philippe Didier 2021-08-06 03:52:56 CEST
Hi Dave
I've got the same problem as Barry for the same rpms and the same procedure
(testing to update opencpn from testing repos before proposing this to QA)

in /etc/urpmi/urpmi.cfg 

The only ones that have the update keyword are
Core Updates
NonFree Updates
Tainted Updates


neither Core Updates Testing
nor Core Backports Testing
nor Nonfree Updates Testing
nor Nonfree Backports Testing 
have this update keyword

That doesn't prevent that when opencpn is updated from Core Updates testing this installs automatically 
the 3 recommended nonfree rpms  from  Nonfree Backports Testing
and one of the three rpms from Core Backports Testing (but one only !)

CC: (none) => philippedidier

Comment 3 Philippe Didier 2021-08-06 04:44:08 CEST
I forgot to say that I tested on a real machine with an installed and totally updated Mageia8 
Two kinds of tests :
- Testing to update an installed opencpn with the testing repos
- Or doing a "fresh install" from the testing repos after having uninstalled the actual Mageia8 version of opencpn

(after having acivated in rpmdrake
the core updates testing repo
the core backports testing repo
the nonfree backports testing repo )

Nearly the same way as a simple user will do when the updates will have passed QA (core updates activated and eventually backports too)
Comment 4 Dave Hodgins 2021-08-06 04:59:29 CEST
Thanks for the info. Assigning to the mageiatools group.

Assignee: bugsquad => mageiatools

Comment 5 Thomas Backlund 2021-08-06 07:52:39 CEST
was "core backports testing" meedia fully updated ?

they got listed here:

To satisfy dependencies, the following packages are going to be installed:
(test only, installation will not be actually done)
  Package                        Version      Release       Arch
(medium "Core Release")
  accountsservice                0.6.55       2.mga8        x86_64  (recommended)
  bubblewrap                     0.4.1        1.mga8        x86_64
  fonts-otf-adobe-source-code-p> 2.030.1.050  2.mga8        noarch  (recommended)
  geoclue                        2.5.7        1.mga8        x86_64  (recommended)
  glib-networking                2.66.0       1.mga8        x86_64  (recommended)
  gnome-desktop                  3.38.3       1.mga8        x86_64  (recommended)
  gnome-themes-extra             3.28         8.mga8        x86_64  (recommended)
  gpsd-clients                   3.21         2.mga8        x86_64
  gsettings-desktop-schemas      3.38.0       1.mga8        x86_64  (recommended)
  gstreamer1.0-tools             1.18.3       1.mga8        x86_64
  jackit                         1.9.14       1.mga8        x86_64
  lib64accountsservice-gir1.0    0.6.55       2.mga8        x86_64  (recommended)
  lib64accountsservice0          0.6.55       2.mga8        x86_64  (recommended)
  lib64audiofile1                0.3.6        11.mga8       x86_64  (recommended)
  lib64config11                  1.7.2        3.mga8        x86_64
  lib64dconf1                    0.38.0       1.mga8        x86_64  (recommended)
  lib64exif12                    0.6.22       3.mga8        x86_64
  lib64ffado2                    2.4.4        1.mga8        x86_64
  lib64flac8                     1.3.3        3.mga8        x86_64
  lib64geoclue2_0                2.5.7        1.mga8        x86_64  (recommended)
  lib64glib-networking           2.66.0       1.mga8        x86_64  (recommended)
  lib64glib-networking-gnutls    2.66.0       1.mga8        x86_64  (recommended)
  lib64glibmm2.4_1               2.64.5       1.mga8        x86_64
  lib64gnome-desktop3_19         3.38.3       1.mga8        x86_64  (recommended)
  lib64gstreamer1.0_0            1.18.3       1.mga8        x86_64
  lib64gtk-gir3.0                3.24.24      1.mga8        x86_64
  lib64hyphen0                   2.8.8        8.mga8        x86_64
  lib64ice6                      1.0.10       2.mga8        x86_64
  lib64iec61883_0                1.2.0        15.mga8       x86_64
  lib64jack0                     1.9.14       1.mga8        x86_64
  lib64malcontent-gir0           0.10.0       1.mga8        x86_64  (recommended)
  lib64malcontent0               0.10.0       1.mga8        x86_64  (recommended)
  lib64mm-glib0                  1.14.10      1.mga8        x86_64  (recommended)
  lib64mspack0                   0.10.1       0.alpha.2.mg> x86_64
  lib64notify4                   0.7.9        1.mga8        x86_64
  lib64ogg0                      1.3.4        2.mga8        x86_64
  lib64opus0                     1.3.1        3.mga8        x86_64
  lib64orc0.4_0                  0.4.32       1.mga8        x86_64
  lib64ostree1                   2020.8       2.mga8        x86_64  (recommended)
  lib64pipewire0.3_0             0.3.19       1.mga8        x86_64  (recommended)
  lib64portaudio2                19.6.0       snapshot2016> x86_64
  lib64proxy-webkit              0.4.17       1.mga8        x86_64  (recommended)
  lib64proxy1                    0.4.17       1.mga8        x86_64  (recommended)
  lib64raw1394_11                2.1.2        4.mga8        x86_64
  lib64rtl-sdr0                  0.6.0        2.mga8        x86_64  (recommended)
  lib64samplerate0               0.1.9        4.mga8        x86_64
  lib64sbc1                      1.4          2.mga8        x86_64  (recommended)
  lib64sdl2.0_0                  2.0.14       1.mga8        x86_64
  lib64secret1_0                 0.20.4       1.mga8        x86_64
  lib64sigc++2.0_0               2.10.6       1.mga8        x86_64
  lib64sm6                       1.2.3        2.mga8        x86_64
  lib64tinyxml0                  2.6.2        12.mga8       x86_64
  lib64vorbis0                   1.3.7        1.mga8        x86_64
  lib64vorbisenc2                1.3.7        1.mga8        x86_64
  lib64woff2common1.0.2          1.0.2        3.mga8        x86_64
  lib64woff2dec1.0.2             1.0.2        3.mga8        x86_64
  lib64wx_baseu3.0_0             3.0.5.1      1.mga8        x86_64
  lib64wx_baseu_net3.0_0         3.0.5.1      1.mga8        x86_64
  lib64wx_baseu_xml3.0_0         3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_adv3.0_0         3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_aui3.0_0         3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_core3.0_0        3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_gl3.0_0          3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_html3.0_0        3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_qa3.0_0          3.0.5.1      1.mga8        x86_64  (recommended)
  lib64wx_gtk3u_webview3.0_0     3.0.5.1      1.mga8        x86_64
  lib64wx_gtk3u_xrc3.0_0         3.0.5.1      1.mga8        x86_64  (recommended)
  lib64xml++2.6_2                2.40.1       6.mga8        x86_64
  libexif12-common               0.6.22       3.mga8        x86_64
  libsecret-i18n                 0.20.4       1.mga8        noarch
  libsecret-tools                0.20.4       1.mga8        x86_64
  malcontent                     0.10.0       1.mga8        x86_64  (recommended)
  malcontent-i18n                0.10.0       1.mga8        noarch  (recommended)
  notification-daemon            3.20.0       3.mga8        x86_64
  notification-daemon-engine-no> 0.1.0        10.mga8       x86_64  (recommended)
  ostree                         2020.8       2.mga8        x86_64  (recommended)
  pipewire                       0.3.19       1.mga8        x86_64  (recommended)
  python3-cairo                  1.20.0       1.mga8        x86_64
  python3-gobject                3.38.0       5.mga8        x86_64
  rtkit                          0.13         1.mga8        x86_64  (recommended)
  rtl-sdr                        0.6.0        2.mga8        x86_64  (recommended)
  wxgtk3.0                       3.0.5.1      1.mga8        x86_64
  xdg-dbus-proxy                 0.1.2        1.mga8        x86_64
  xdg-desktop-portal             1.8.0        1.mga8        x86_64  (recommended)
  xdg-desktop-portal-gtk         1.8.0        2.mga8        x86_64  (recommended)
(medium "Core Updates")
  flatpak                        1.10.2       1.mga8        x86_64  (recommended)
  json-glib                      1.6.2        1.mga8        x86_64  (recommended)
  lib64avahi-glib1               0.8          6.2.mga8      x86_64  (recommended)
  lib64flatpak-gir1.0            1.10.2       1.mga8        x86_64  (recommended)
  lib64flatpak0                  1.10.2       1.mga8        x86_64  (recommended)
  lib64gstgl1.0_0                1.18.3       1.1.mga8      x86_64
  lib64gstreamer-plugins-base1.> 1.18.3       1.1.mga8      x86_64
  lib64json-glib1.0_0            1.6.2        1.mga8        x86_64  (recommended)
(medium "Core Updates Testing")
  lib64javascriptcoregtk4.0_18   2.32.3       1.mga8        x86_64
  lib64sndfile1                  1.0.31       1.1.mga8      x86_64
  lib64webkit2gtk4.0_37          2.32.3       1.mga8        x86_64
  opencpn                        5.2.4        2.1.mga8      x86_64
  opencpn-ais-radar-plugin       1.2.10.0     1.mga8        x86_64  (recommended)
  opencpn-celestial-navigation-> 2.3          9.1.mga8      x86_64  (recommended)
  opencpn-climatology-plugin     1.4.23.0     2.mga8        x86_64  (recommended)
  opencpn-iacfleet-plugin        0.21.1       1.mga8        x86_64  (recommended)
  opencpn-logbookkonni-plugin    1.4.008      5.2.mga8      x86_64  (recommended)
  opencpn-objsearch-plugin       0.21         6.1.mga8      x86_64  (recommended)
  opencpn-polar-plugin           1.1.17.1     2.1.mga8      x86_64  (recommended)
  opencpn-squiddio-plugin        1.3.10.0     3.1.mga8      x86_64  (recommended)
  opencpn-statusbar-plugin       0.8          2.1.mga8      x86_64  (recommended)
  opencpn-watchdog-plugin        2.4.30.2     1.mga8        x86_64  (recommended)
  opencpn-weather-routing-plugin 1.13.22.0    1.mga8        x86_64  (recommended)
  opencpn-weatherfax-plugin      1.9.18.0     1.mga8        x86_64  (recommended)
  webkit2                        2.32.3       1.mga8        x86_64
(medium "Core Backports Testing")
  opencpn-radar-plugin           5.1.5        1.mga8        x86_64  (recommended)
  opencpn-route-plugin           1.2          1.mga8        x86_64  (recommended)
  opencpn-sar-plugin             2.6          2.mga8        x86_64  (recommended)
269MB of additional disk space will be used.
75MB of packages will be retrieved.
Proceed with the installation of the 113 packages? (Y/n) n
Comment 6 Philippe Didier 2021-08-06 13:45:19 CEST
Hi Thomas
Yes the core backports testing repo is updated...

The problem is strange because there are two different results depending how these backported rpms are installed by urpmi. 

In both cases the  three following repos are activated :
-core backports testing (containing opencpn-radar-plugin opencpn-route-plugin opencpn-sar-plugin)
-core updates testing
-nonfree backports testing (containing opencpn-oernc-plugin, opencpn-oesenc-plugin, opencpn-s63-plugin)


1) first case 
(opencpn from Mageia8 core release is not installed)
    We test a first install of opencpn 5.2.4-2.2 from a local repo (commited but not yet in core updates testing) this  installs all its recommended plugins from the three repos:
every plugin from core updates testing
the 3 from nonfree backports testing
the 3 from core backports testing 

2) second case
(We install first the opencpn 5.2.4-2 rpm and its recommends from Mageia8 core release repo)

Then we try to update it with opencpn 5.2.4-2.2 this installs :
- all the plugins from core updates testing
- the 3 new plugins from nonfree backports testing 
- BUT only one plugin from core backports testing (opencpn-radar-plugin)

We can't find any explanation to this...
Comment 7 Thomas Backlund 2021-08-06 14:35:45 CEST
Ah,
Now I see.

the release package already have recommends on:
opencpn-route-plugin
opencpn-sar-plugin 

so basically when urpmi compares opencpn recommends from release with the one from updates_testing, it will only see the:

opencpn-radar-plugin

as a new recommends, and only adds that to the list of packages to install

that's why you see the difference between clean install pulling in all deps, and update only pulling in new deps
Comment 8 Thomas Backlund 2021-08-06 14:39:14 CEST
and this is actually by design, as otherwise people would be forced to remove "unwanted recommended packages" after every package update, wich would not be nice either...
Comment 9 Philippe Didier 2021-08-06 15:49:44 CEST
Hi Thomas

thanks for this explanation

Unfortunaly the release package of opencpn had already Recommends for the 2 problematic rpms that were not yet provided in release... (the previous Cauldron was frozen before they were submitted...)
Those ghost rpms may have caused the problem for updating...

I think we can close this bug report as unconfirmed
Comment 10 Barry Jackson 2021-08-06 16:27:20 CEST
Thanks Philippe and Thomas for working through this, nice catch!

I think it is resolved invalid.

Our fault for having unavailable Recommends in the previous package :\

Resolution: (none) => INVALID
Status: NEW => RESOLVED


Note You need to log in before you can comment on or make changes to this bug.