Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 474806 - sys-apps/portage: autounmask unmasked ~arch dev-util/mdds-0.9.0 unnecessarily
Summary: sys-apps/portage: autounmask unmasked ~arch dev-util/mdds-0.9.0 unnecessarily
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Dependencies (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: autounmask 484436
  Show dependency tree
 
Reported: 2013-06-26 02:18 UTC by Matthias Blümel
Modified: 2014-10-07 02:16 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Blümel 2013-06-26 02:18:36 UTC
To install =libreoffice 4.1.0.1 I used autounmask-write. This unmasked =dev-util/mdds-0.9.0 ~ and I ran into bug 474710. Deleting the unmask and installing mdds-0.8.1 works fine for libreoffice (“>=dev-util/mdds-0.8.1:=” in ebuild) so it wasn’t neccessary to unmask 0.9.0

Reproducible: Didn't try

Steps to Reproduce:
# emerge -v =app-office/libreoffice-4.1.0.1 --autounmask-write
Actual Results:  
=dev-util-0.9.0 is getting unmasked

Expected Results:  
shouldn’t get unmasked, because >=dev-util/mdds-0.8.1 is in 0.8.1 stable.
Comment 1 Zac Medico gentoo-dev 2013-06-26 05:28:55 UTC
We have not had any similar reports. If anyone can reproduce this, then please attach a debug log created as follows:

   emerge [args] --pretend --debug > debug.log 2>&1
Comment 2 shad0VV 2013-07-04 19:43:09 UTC
I think based on ebuilds, that =libreoffice-4.1.0.1 depends on =mdds-0.8* not a greater version. 

I have not exactly the same issue but the opposite case in testing branch, cause in ~amd64 the last update for mdds is 0.9.0 and it conflicts with libreoffice-4.1.0.1, so 0.9.0 needs to be masked(not unmasked as Matthias said) in order to install libreoffice-4.1.0.1.
Comment 3 gringo 2013-07-05 16:58:20 UTC
not sure if this is relevant or not but this is what i get :

emerge -uaDNv @world @system
Nothing to merge; quitting.

but if i add --with-bdeps=y :

emerge -uaDNv @world @system --with-bdeps=y

[ebuild     UD] dev-util/mdds-0.7.1 [0.9.0]
[ebuild  N    ] dev-libs/libzip-0.11.1  USE="-static-libs" 
[ebuild     UD] dev-libs/liborcus-0.3.0 [0.5.1] USE="-static-libs" 
[ebuild     UD] app-office/libreoffice-l10n-4.0.4.2 [4.1.0.1] USE="-offlinehelp" LINGUAS="es -af -am -ar -as -ast -be -bg -bn -bn_IN -bo -br -brx -bs -ca -ca_XV -cs -cy -da -de -dgo -dz -el -en -en_GB -en_ZA -eo -et -eu -fa -fi -fr -ga -gd -gl -gu -he -hi -hr -hu -id -is -it -ja -ka -kk -km -kn -ko -kok -ks -ku -lb -lo -lt -lv -mai -mk -ml -mn -mni -mr -my -nb -ne -nl -nn -nr -nso -oc -om -or -pa_IN -pl -pt -pt_BR -ro -ru -rw -sa_IN -sat -sd -sh -si -sk -sl -sq -sr -ss -st -sv -sw_TZ -ta -te -tg -th -tn -tr -ts -tt -ug -uk -uz -ve -vi -xh -zh_CN -zh_TW -zu" 
[ebuild     UD] app-office/libreoffice-4.0.4.2 [4.1.0.1] USE="bluetooth branding cups dbus eds gnome gstreamer gtk opengl vba (-aqua) -debug -java -jemalloc -kde -mysql -odk -postgres -telepathy {-test} -webdav (-gtk3%*)" LIBREOFFICE_EXTENSIONS="presenter-minimizer -nlpsolver -scripting-beanshell -scripting-javascript -wiki-publisher" PYTHON_SINGLE_TARGET="python2_7 -python3_3" PYTHON_TARGETS="python2_7 -python3_3" 

and i have no idea why it does that.
Shouldnt portage actually have blocked the update to mdds-0.9* anyways because of the LO dep ?

Furthermore, portage didnt complain about Lo having to be rebuilt after the mdds-0.9.0 update, it only wanted to rebuild liborcus which i did. revdep-rebulid says everthing is fine too.

sorry if this unrelated, was searching and this bug looked relevant to me.

portage version:
Portage 2.2.0_alpha186 (default/linux/amd64/13.0/desktop/gnome, gcc-4.7.3, glibc-2.17, 3.10.0-rc3 x86_64)

thanks for your time !
Comment 4 Zac Medico gentoo-dev 2013-07-06 19:54:57 UTC
(In reply to gringo from comment #3)
> not sure if this is relevant or not but this is what i get :
> 
> emerge -uaDNv @world @system
> Nothing to merge; quitting.
> 
> but if i add --with-bdeps=y :
> 
> emerge -uaDNv @world @system --with-bdeps=y
> 
> [ebuild     UD] dev-util/mdds-0.7.1 [0.9.0]

It seems unrelated to this bug report.

> and i have no idea why it does that.
> Shouldnt portage actually have blocked the update to mdds-0.9* anyways
> because of the LO dep ?

It should if you use --with-bdeps. Unless --with-bdeps=y is enabled, emerge is not supposed to account for build-time (DEPEND) only dependencies, so it's perfectly valid to upgrade to dev-util/mdds-0.9.0.

> Furthermore, portage didnt complain about Lo having to be rebuilt after the
> mdds-0.9.0 update, it only wanted to rebuild liborcus which i did.
> revdep-rebulid says everthing is fine too.

That's because libreoffice only uses dev-util/mdds at build time. At runtime, it doe not need it at all.
Comment 5 gringo 2013-07-10 11:22:54 UTC
> It seems unrelated to this bug report.

thanks, could someone split this off this bug ?
or should i open a new one ( in case it really is relevant of course) ?
 
> It should if you use --with-bdeps. Unless --with-bdeps=y is enabled, emerge
> is not supposed to account for build-time (DEPEND) only dependencies, so
> it's perfectly valid to upgrade to dev-util/mdds-0.9.0.

shouldnt there be some logic in portage to avoid this even if we call --with-bdeps ? 
I mean, whats the point of having =dev-util/mdds-0.8* in the LO ebuild when --with-bdeps=y wont care about it and just update anyways.

and why does it want to downgrade to mdds-0.7.1 instead of mdds-0.8.1 ? or, by extension, why does it want to pick libreoffice-4.0.4.2 instead of the already installed libreoffice-4.1.0.1 ? Wouldnt just a downgrade to mdds-0.8.1 ( & rebuild) be enough ?

Im not complaining because of the LO downgrade o because i have to rebuild anything, i dont care at all. Just trying to understand the logic behind all this.

TIA !
Comment 6 Zac Medico gentoo-dev 2013-07-10 18:36:10 UTC
(In reply to gringo from comment #5)
> > It seems unrelated to this bug report.
> 
> thanks, could someone split this off this bug ?
> or should i open a new one ( in case it really is relevant of course) ?

Please go ahead and file a new bug. It may turn out to be duplicate of one of the bugs blocking bug 300071, but that's okay.

> > It should if you use --with-bdeps. Unless --with-bdeps=y is enabled, emerge
> > is not supposed to account for build-time (DEPEND) only dependencies, so
> > it's perfectly valid to upgrade to dev-util/mdds-0.9.0.
> 
> shouldnt there be some logic in portage to avoid this even if we call
> --with-bdeps ? 
> I mean, whats the point of having =dev-util/mdds-0.8* in the LO ebuild when
> --with-bdeps=y wont care about it and just update anyways.

This specific problem has already been reported as bug 427938.

> and why does it want to downgrade to mdds-0.7.1 instead of mdds-0.8.1 ? or,
> by extension, why does it want to pick libreoffice-4.0.4.2 instead of the
> already installed libreoffice-4.1.0.1 ? Wouldnt just a downgrade to
> mdds-0.8.1 ( & rebuild) be enough ?
> 
> Im not complaining because of the LO downgrade o because i have to rebuild
> anything, i dont care at all. Just trying to understand the logic behind all
> this.

Apparently the dependency resolver is not able to settle on a good solution, so it's producing some bad results.
Comment 7 Joe Kappus 2013-09-24 02:18:38 UTC
So… this is still an issue.

        =dev-util/mdds-0.8*:=

is the atom in DEPEND on libreoffice ebuild.  It's weird looking, I'm assuming the := is for slotting? I don't know but it could be breaking stuff.

Another workaround could be to throw this in RDEPEND so we don't end up with deps breaking.  

Else, fix portage? I figured in 2 months of having this if trying to update --with-bdeps=y someone would have noticed this is not working as expected™.
Comment 8 tman 2013-09-27 05:36:26 UTC
[ebuild  rR   ] dev-libs/liborcus-0.5.1 
[ebuild  rR   ] dev-util/mdds-0.8.1 
[ebuild  r  U ] dev-util/mdds-0.9.0 [0.8.1]
[nomerge      ] x11-misc/bumblebee-3.2.1 
[nomerge      ]  x11-base/xorg-drivers-1.14 
[nomerge      ]   x11-drivers/xf86-video-intel-2.99.901 
[ebuild     U ]    x11-base/xorg-server-1.14.3-r1 [1.14.3]
[ebuild  rR   ]     media-libs/mesa-9.2.0 
[nomerge      ] app-office/libreoffice-4.1.2.2 
[ebuild     U ]  dev-libs/nss-3.15.2 [3.15.1-r2]
[ebuild     U ]   dev-libs/nspr-4.10.1 [4.10]
[nomerge      ] net-p2p/deluge-1.3.6 
[nomerge      ]  dev-python/twisted-web-13.0.0-r1 
[nomerge      ]   dev-python/twisted-core-13.0.0-r3 
[nomerge      ]    net-zope/zope-interface-4.0.5 
[ebuild  NS   ]     dev-python/python-exec-2.0 [0.3.1]
[nomerge      ] app-misc/freemind-0.9.0-r1 
[nomerge      ]  dev-java/javahelp-2.0.05_p63 
[nomerge      ]   virtual/jdk-1.7.0 
[nomerge      ]    dev-java/icedtea-bin-7.2.4.1 
[nomerge      ]     sys-libs/glibc-2.17 
[ebuild     U ]      sys-libs/timezone-data-2013f [2013d]

!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

dev-util/mdds:0

  (dev-util/mdds-0.9.0::gentoo, ebuild scheduled for merge) pulled in by
    (no parents that aren't satisfied by other packages in this slot)

  (dev-util/mdds-0.8.1::gentoo, ebuild scheduled for merge) pulled in by
    =dev-util/mdds-0.8*:= required by (app-office/libreoffice-4.1.2.2::gentoo, installed)
    >=dev-util/mdds-0.7.1:0/0.8.1= required by (dev-libs/libixion-0.5.0::gentoo, installed)
    (and 1 more with the same problems)
Comment 9 Philipp Leonhardt 2013-09-28 16:12:38 UTC
(In reply to tman from comment #8)
> [ebuild  rR   ] dev-libs/liborcus-0.5.1 
> [ebuild  rR   ] dev-util/mdds-0.8.1 
> [ebuild  r  U ] dev-util/mdds-0.9.0 [0.8.1]
> [nomerge      ] x11-misc/bumblebee-3.2.1 
> [nomerge      ]  x11-base/xorg-drivers-1.14 
> [nomerge      ]   x11-drivers/xf86-video-intel-2.99.901 
> [ebuild     U ]    x11-base/xorg-server-1.14.3-r1 [1.14.3]
> [ebuild  rR   ]     media-libs/mesa-9.2.0 
> [nomerge      ] app-office/libreoffice-4.1.2.2 
> [ebuild     U ]  dev-libs/nss-3.15.2 [3.15.1-r2]
> [ebuild     U ]   dev-libs/nspr-4.10.1 [4.10]
> [nomerge      ] net-p2p/deluge-1.3.6 
> [nomerge      ]  dev-python/twisted-web-13.0.0-r1 
> [nomerge      ]   dev-python/twisted-core-13.0.0-r3 
> [nomerge      ]    net-zope/zope-interface-4.0.5 
> [ebuild  NS   ]     dev-python/python-exec-2.0 [0.3.1]
> [nomerge      ] app-misc/freemind-0.9.0-r1 
> [nomerge      ]  dev-java/javahelp-2.0.05_p63 
> [nomerge      ]   virtual/jdk-1.7.0 
> [nomerge      ]    dev-java/icedtea-bin-7.2.4.1 
> [nomerge      ]     sys-libs/glibc-2.17 
> [ebuild     U ]      sys-libs/timezone-data-2013f [2013d]
> 
> !!! Multiple package instances within a single package slot have been pulled
> !!! into the dependency graph, resulting in a slot conflict:
> 
> dev-util/mdds:0
> 
>   (dev-util/mdds-0.9.0::gentoo, ebuild scheduled for merge) pulled in by
>     (no parents that aren't satisfied by other packages in this slot)
> 
>   (dev-util/mdds-0.8.1::gentoo, ebuild scheduled for merge) pulled in by
>     =dev-util/mdds-0.8*:= required by
> (app-office/libreoffice-4.1.2.2::gentoo, installed)
>     >=dev-util/mdds-0.7.1:0/0.8.1= required by
> (dev-libs/libixion-0.5.0::gentoo, installed)
>     (and 1 more with the same problems)

Same here for me
Comment 10 Joe Kappus 2013-09-30 19:08:34 UTC
tman, still a fail but a different bug for you.

https://bugs.gentoo.org/show_bug.cgi?id=486550
Comment 11 Peter Asplund 2013-10-07 10:52:51 UTC
I have this issue as well... Seems unnecessary to upgrade mdds if nobody is using it. Or have I misunderstood the problem?
I thought the slotting would allow the to co-exist.
Comment 12 Peter Asplund 2013-10-07 10:53:21 UTC
These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild     U  ] app-office/libreoffice-4.1.2.3 [4.1.2.2-r1] USE="bluetooth branding cups dbus gnome gstreamer gtk gtk3 java kde opengl telepathy vba webdav (-aqua) -debug -eds -jemalloc -mysql -odk -postgres {-test}" LIBREOFFICE_EXTENSIONS="presenter-minimizer -nlpsolver -scripting-beanshell -scripting-javascript -wiki-publisher" PYTHON_SINGLE_TARGET="python2_7 -python3_3" PYTHON_TARGETS="python2_7 python3_3" 0 kB

Total: 1 package (1 upgrade), Size of downloads: 0 kB

WARNING: One or more updates have been skipped due to a dependency conflict:

dev-util/mdds:0

  (dev-util/mdds-0.9.0::gentoo, ebuild scheduled for merge) conflicts with
    =dev-util/mdds-0.8*:= required by (app-office/libreoffice-4.1.2.3::gentoo, ebuild scheduled for merge)
Comment 13 Zac Medico gentoo-dev 2014-10-07 02:09:47 UTC
If this issue was due to some misbehavior in backtracking triggered by a slot conflict (multiple versions of dev-util/mdds pulled into the graph), then it may have been fixed since portage-2.2.9 by solving the conflict without backtracking:

https://github.com/gentoo/portage/commit/a862cc5dd1a56114fa579c5fb01b518b243666d9
Comment 14 Zac Medico gentoo-dev 2014-10-07 02:16:41 UTC
Please re-open if you can reproduce this with >=sys-apps/portage-2.2.9.