Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 631358 - sys-apps/portage: add emerge --changed-slot option
Summary: sys-apps/portage: add emerge --changed-slot option
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 155723 651804
  Show dependency tree
 
Reported: 2017-09-19 01:56 UTC by Zac Medico
Modified: 2018-07-02 18:40 UTC (History)
3 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 Zac Medico gentoo-dev 2017-09-19 01:56:06 UTC
Currently, emerge triggers rebuilds for changed subslots lazily. It would be nice to have an option to trigger these rebuilds explicitly, especially for use in building stage3 and stage4 images. Theses bzip2 and zlib subslot changes are examples of the kinds of changes that it's useful for:

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b5f0471fe97de820f888702e1938989b9fd25522
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84fe49cbda355b53354c11432e54ec7ea15671f1

Since emerge is lazy about triggering the rebuilds, it's possible for a user of a fresh stage3 or stage4 image to experience unexpected rebuilds like these:

The following packages are causing rebuilds:

 (app-arch/bzip2-1.0.6-r8:0/1::gentoo, ebuild scheduled for merge) causes rebuilds for:
   (dev-lang/python-2.7.12:2.7/2.7::gentoo, ebuild scheduled for merge)
   (dev-lang/python-3.4.5:3.4/3.4m::gentoo, ebuild scheduled for merge)
 (sys-libs/zlib-1.2.11:0/1::gentoo, ebuild scheduled for merge) causes rebuilds for:
   (sys-fs/btrfs-progs-4.12:0/0::gentoo, ebuild scheduled for merge)
   (x11-libs/libpciaccess-0.13.4:0/0::gentoo, ebuild scheduled for merge)
   (dev-lang/python-3.4.5:3.4/3.4m::gentoo, ebuild scheduled for merge)
   (net-misc/openssh-7.5_p1-r2:0/0::gentoo, ebuild scheduled for merge)
   (dev-lang/python-2.7.12:2.7/2.7::gentoo, ebuild scheduled for merge)
   (dev-libs/libxml2-2.9.4-r3:2/2::gentoo, ebuild scheduled for merge)

This situation can be avoided by using the proposed --changed-slot option when building stage3 or stage4 images.
Comment 2 Larry the Git Cow gentoo-dev 2018-03-28 05:56:41 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/portage.git/commit/?id=1879d3ca019ebe4b870c3ee8d80910a90a8e4408

commit 1879d3ca019ebe4b870c3ee8d80910a90a8e4408
Author:     Zac Medico <zmedico@gentoo.org>
AuthorDate: 2018-03-26 20:59:57 +0000
Commit:     Zac Medico <zmedico@gentoo.org>
CommitDate: 2018-03-28 05:51:50 +0000

    emerge: add --changed-slot [ y | n ] option (bug 631358)
    
    This is similar to --changed-deps, but for SLOT metadata.
    
    Bug: https://bugs.gentoo.org/631358

 man/emerge.1                                          |  7 +++++++
 pym/_emerge/create_depgraph_params.py                 |  6 ++++++
 pym/_emerge/depgraph.py                               | 11 +++++++++++
 pym/_emerge/main.py                                   | 13 +++++++++++++
 .../resolver/test_slot_change_without_revbump.py      | 19 +++++++++++++++++++
 5 files changed, 56 insertions(+)}
Comment 3 Zac Medico gentoo-dev 2018-07-02 18:40:47 UTC
Fixed in portage-2.3.40-r1.