With v2.3.20 I get the following: [ebuild UD ] dev-libs/leveldb-1.15.0-r1 [1.18-r2] [ebuild UD#] net-libs/ldns-1.7.0-r1 [1.7.0-r2] USE="ssl%*" [ebuild UD ] dev-cpp/gtest-1.7.0-r1 [1.8.0-r1] USE="-static-libs%" [ebuild N ] dev-cpp/gmock-1.7.0-r1 USE="{test} -static-libs" ABI_X86="(64) -32 (-x32)" [ebuild UD#] dev-libs/protobuf-3.3.0 [3.5.1.1] USE="python%* {test*} -java%" PYTHON_TARGETS="python2_7%* python3_4%* python3_6%* -python3_5%" [ebuild NS ] sys-devel/automake-1.12.6-r1 [1.11.6-r2, 1.15.1-r1] [ebuild NS ] sys-devel/automake-1.14.1-r1 [1.11.6-r2, 1.15.1-r1] [ebuild N ] media-libs/speexdsp-1.2_rc3-r2 USE="-static-libs" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse sse2" [uninstall ] media-libs/speex-1.2_rc1-r2 [blocks b ] <media-libs/speex-1.2.0 ("<media-libs/speex-1.2.0" is blocking media-libs/speexdsp-1.2_rc3-r2) !!! Multiple package instances within a single package slot have been pulled !!! into the dependency graph, resulting in a slot conflict: dev-libs/protobuf:0 (dev-libs/protobuf-3.5.1.1:0/15::gentoo, installed) pulled in by dev-libs/protobuf:0/15= required by (dev-qt/qtwebengine-5.7.1-r2:5/5.7::playground, installed) ^^^^^^ ~dev-libs/protobuf-3.5.1.1 required by (dev-python/protobuf-python-3.5.1.1:0/15::gentoo, installed) ^ ^^^^^^^ (and 3 more with the same problems) (dev-libs/protobuf-3.3.0:0/13::gentoo, ebuild scheduled for merge) pulled in by dev-libs/protobuf[python,python_targets_python2_7(-),-python_single_target_python2_7(-)] required by (sys-process/criu-2.5:0/0::gentoo, installed) ^^^^^^ dev-libs/leveldb:0 (dev-libs/leveldb-1.18-r2:0/0::gentoo, installed) pulled in by >=dev-libs/leveldb-1.18-r1 required by (dev-qt/qtwebkit-5.7.1:5/5.7::gentoo, installed) ^^ ^^^^^^^ (dev-libs/leveldb-1.15.0-r1:0/0::gentoo, ebuild scheduled for merge) pulled in by =dev-libs/leveldb-1.15.0-r1 required by (virtual/bitcoin-leveldb-0-r1:0/0::gentoo, installed) issues one by one: 1a) [ebuild UD ] dev-libs/leveldb-1.15.0-r1 [1.18-r2] virtual/bitcoin-leveldb-0-r1 lists dev-libs/leveldb-1.18-r2:0/0 as || dependency, the downgrade is incorrect. Issue might be the following difference between VDB and Gentoo repository: --- /var/db/pkg/virtual/bitcoin-leveldb-0-r1/bitcoin-leveldb-0-r1.ebuild 2017-07-11 09:23:47.517452323 +0200 +++ virtual/bitcoin-leveldb/bitcoin-leveldb-0-r1.ebuild 2017-08-17 18:00:57.872178511 +0200 @@ -9,7 +9,7 @@ RDEPEND=" || ( - =dev-libs/leveldb-1.18-r1 + =dev-libs/leveldb-1.18-r2 =dev-libs/leveldb-1.18 =dev-libs/leveldb-1.17 =dev-libs/leveldb-1.15.0-r1 1b) [ebuild UD#] net-libs/ldns-1.7.0-r1 [1.7.0-r2] USE="ssl%*" Basically the same issue with a silent dependency change in the openssh ebuilds - !bindist? ( net-libs/ldns[ecdsa,ssl] ) - bindist? ( net-libs/ldns[-ecdsa,ssl] ) + !bindist? ( net-libs/ldns[ecdsa,ssl(+)] ) + bindist? ( net-libs/ldns[-ecdsa,ssl(+)] ) without version bump. Running emerge openssh virtual/bitcoin-leveldb fixed the issue. These silent dependency changes without revision bump should still be acceptable from my point of view. Instead of resorting to some magic by Portage, a (reviewable) VDB update, when dependencies get updated behind ones back, would be quite nice. 2a) [ebuild UD#] dev-libs/protobuf-3.3.0 [3.5.1.1] USE="python%* {test*} -java%" PYTHON_TARGETS="python2_7%* python3_4%* python3_6%* -python3_5%" Actually valid, the python use flag isn't available in protobuf-3.5.1.1 2b) [uninstall ] media-libs/speex-1.2_rc1-r2 [blocks b ] <media-libs/speex-1.2.0 ("<media-libs/speex-1.2.0" is blocking media-libs/speexdsp-1.2_rc3-r2) The bug here is that net-analyzer/wireshark-2.4.3 requires <media-libs/speex-1.2.0 as well as speexdsp, but speex-1.2.0-r1 went stable, without caring that all consumers of the stable tree are compatible. It would be nice, if Portage gave a suitable hint regarding newer ebuilds use flag requirements or the speex/wireshark dependency issue. I see non of the issues with v2.3.19-r1. Congratulations regarding the improvements.
p.s.: Portage provides the information regarding wireshark when trying to emerge speex. It's just not available, when running 'emerge -puD world'. emerge speex -pv These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] media-libs/speex-1.2_rc1-r2::gentoo USE="ogg -static-libs" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse" 0 KiB Total: 1 package (1 reinstall), Size of downloads: 0 KiB WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict: media-libs/speex:0 (media-libs/speex-1.2.0-r1:0/0::gentoo, ebuild scheduled for merge) conflicts with <media-libs/speex-1.2.0 required by (net-analyzer/wireshark-2.4.3:0/2.4.3::gentoo, installed)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bff161dc0ddd14907fdc459e0cded3e1b22eca70 commit bff161dc0ddd14907fdc459e0cded3e1b22eca70 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2018-01-22 00:28:08 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2018-01-22 00:33:28 +0000 virtual/bitcoin-leveldb: revbump to 0-r2 for leveldb-1.18-r2 dep change (bug 645310) Since sys-apps/portage-2.3.20 defaults to --dynamic-deps=n, this revbump is needed in order to correct the dependencies of installed instances of virtual/bitcoin-leveldb-r1. Fixes: e8bc28b6fdd ("virtual/bitcoin-leveldb: Add =dev-libs/leveldb-1.18-r2") Bug: https://bugs.gentoo.org/645310 Package-Manager: Portage-2.3.20, Repoman-2.3.6 RepoMan-Options: --force .../{bitcoin-leveldb-0-r1.ebuild => bitcoin-leveldb-0-r2.ebuild} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)}
You notice the problem with sys-apps/portage-2.3.20 because it defaults to --dynamic-deps=n. It's also possible to use the emerge --dynamic-deps=y or --changed-deps=y options as a workaround for this sort of issue. I'm going to revbump all of the ebuilds in order to trigger rebuilds for everyone.
Same with the dev-python/reportlab versions after this commit: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf7345045e1414960dc4672d50827fbb73aa6960 emerge -avuDN @world These are the packages that would be merged, in order: Calculating dependencies... done! Total: 0 packages, Size of downloads: 0 KiB WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict: dev-python/pillow:0 (dev-python/pillow-4.3.0:0/0::gentoo, ebuild scheduled for merge) conflicts with >=dev-python/pillow-2.4.0[tiff,truetype,jpeg,python_targets_python2_7(-),python_targets_python3_6(-),-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-)] required by (dev-python/reportlab-3.4.0:0/0::gentoo, installed) ^^^^ Nothing to merge; quitting. Rebuild dev-python/reportlab fixed this. I think a revision bump on dev-python/reportlab versions would be fine. Thanks.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=862b70b2c90e1889e684381b188d492027755573 commit 862b70b2c90e1889e684381b188d492027755573 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2018-01-22 01:14:34 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2018-01-22 01:26:46 +0000 net-analyzer/wireshark: revbumps for media-libs/speexdsp dep change Since sys-apps/portage-2.3.20 defaults to --dynamic-deps=n, this revbump is needed in order to correct the dependencies of installed instances of wireshark. Fixes: 68e22dda8c90 ("net-analyzer/wireshark: Preferentially depend on media-libs/speexdsp over media-libs/speex (bug #611766).") Bug: https://bugs.gentoo.org/645310 Bug: https://bugs.gentoo.org/611766 Package-Manager: Portage-2.3.20, Repoman-2.3.6 RepoMan-Options: --force .../wireshark/{wireshark-2.2.7.ebuild => wireshark-2.2.7-r1.ebuild} | 2 +- .../wireshark/{wireshark-2.4.2.ebuild => wireshark-2.4.2-r1.ebuild} | 2 +- .../wireshark/{wireshark-2.4.3.ebuild => wireshark-2.4.3-r1.ebuild} | 0 3 files changed, 2 insertions(+), 2 deletions(-)}
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c7d03d22b3b20d80a30c56cf118d6b848341718 commit 9c7d03d22b3b20d80a30c56cf118d6b848341718 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2018-01-22 01:37:02 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2018-01-22 01:42:26 +0000 sys-process/criu: revbumps for protobuf-python dep change Since sys-apps/portage-2.3.20 defaults to --dynamic-deps=n, this revbump is needed in order to correct the dependencies of installed instances of criu. Fixes: 11f24667f843 ("sys-process/criu: Depend on || ( dev-python/protobuf-python dev-libs/protobuf[python] ).") Bug: https://bugs.gentoo.org/645310 Package-Manager: Portage-2.3.20, Repoman-2.3.6 RepoMan-Options: --force sys-process/criu/{criu-2.12.1.ebuild => criu-2.12.1-r1.ebuild} | 2 +- sys-process/criu/{criu-2.5.ebuild => criu-2.5-r1.ebuild} | 2 +- sys-process/criu/{criu-3.4.ebuild => criu-3.4-r1.ebuild} | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)}
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1966270177684d9503d861cefcf9e7b6567c5c3c commit 1966270177684d9503d861cefcf9e7b6567c5c3c Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2018-01-22 01:48:09 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2018-01-22 01:48:56 +0000 dev-python/reportlab: revbumps for changed pillow dep Since sys-apps/portage-2.3.20 defaults to --dynamic-deps=n, this revbump is needed in order to correct the dependencies of installed instances of reportlab. Fixes: cf7345045e14 ("dev-python/reportlab: Fix dev-python/pillow dependency") Bug: https://bugs.gentoo.org/645310 Package-Manager: Portage-2.3.20, Repoman-2.3.6 RepoMan-Options: --force .../reportlab/{reportlab-3.3.0-r1.ebuild => reportlab-3.3.0-r2.ebuild} | 2 +- .../reportlab/{reportlab-3.4.0.ebuild => reportlab-3.4.0-r1.ebuild} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)}
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de02520f0c9d660af8a2cd0317648f69177f57c1 commit de02520f0c9d660af8a2cd0317648f69177f57c1 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2018-01-22 02:10:08 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2018-01-22 02:18:16 +0000 net-misc/openssh: revbumps for net-libs/ldns dep change Since sys-apps/portage-2.3.20 defaults to --dynamic-deps=n, this revbump is needed in order to correct the dependencies of installed instances of openssh. It's not possible to revbump the 7.6_p1 ebuild to 7.6_p1-r1, since the 7.6_p1-r1 ebuild already exists with the only difference being that the HPN_PATCH variable is commented out. As a compromise, make 7.6_p1-r2 include HPN_PATCH but also remove the default IUSE setting for hpn in order to suppress bug 634594 by default. Fixes: a71042d76cb4 ("net-misc/openssh: Fix net-libs/ldns dependency") Bug: https://bugs.gentoo.org/645310 Bug: https://bugs.gentoo.org/634594 Package-Manager: Portage-2.3.20, Repoman-2.3.6 RepoMan-Options: --force ...h-7.5_p1-r3.ebuild => openssh-7.5_p1-r4.ebuild} | 0 net-misc/openssh/openssh-7.6_p1-r1.ebuild | 336 --------------------- ...nssh-7.6_p1.ebuild => openssh-7.6_p1-r2.ebuild} | 4 +- 3 files changed, 2 insertions(+), 338 deletions(-)}
Hopefully I've fixed all of the issues mentioned here. Please open new bugs for any more issues that you find.
*** Bug 645284 has been marked as a duplicate of this bug. ***
Thank you, Zac. As I'm not following gentoo-dev the policy change¹ comes as a surprise. This change requires quite some sensibility on the maintainers side or it will imply _plenty_ of additional (up to now avoidable) rebuilds. Gentoo ebuilds have never been that exact or static regarding their dependencies. There will always be the need to change a dependency from foo/bar to foo/bar-X to foo/bar:Y over time; And for lots of systems it'll mean full rebuild cycles - with the only real change being updated vdb entries. For a binary distribution the advantages of a static resolver make lots of sense, for Gentoo I'm not so sure. This has probably been discussed to death on the mailing list, so I'll stop here. :) [1] https://wiki.gentoo.org/wiki/Project:Portage/Dynamic_dependencies