Skip to content

eclean: Add --changed-subslot option to delete binpkgs with stale subslot deps#61

Merged
gentoo-bot merged 1 commit intogentoo:masterfrom
mattst88:changed-subslots
Mar 31, 2026
Merged

eclean: Add --changed-subslot option to delete binpkgs with stale subslot deps#61
gentoo-bot merged 1 commit intogentoo:masterfrom
mattst88:changed-subslots

Conversation

@mattst88
Copy link
Copy Markdown
Contributor

When a binpkg has a := slot operator dependency resolved to a specific subslot (e.g., sys-libs/bar:0/1=), but no version of that dependency in the ebuild repo still has that subslot, the binpkg is stale and would need a rebuild. The new --changed-subslot option detects and removes such binpkgs.

@mattst88
Copy link
Copy Markdown
Contributor Author

After running eclean packages --changed-deps, I ran eclean -v packages --changed-subslots:

 * Cleaning /var/cache/binpkgs/amd64/tigerlake-no-avx512f
!!!   app-text/libqxp-0.0.2: stale subslot dep on dev-libs/icu:0/74.1=, available subslot(s): 77, 78

!!!   app-text/pdfgrep-2.1.2: stale subslot dep on app-text/poppler:0/134=, available subslot(s): 155, 156, 157, 158, 9999

!!!   app-text/calibre-8.9.0: stale subslot dep on dev-qt/qtbase:6/6.9.3=, available subslot(s): 6.10.1, 6.10.2, 6.10.9999, 6.11.0, 6.11.9999, 6.9999

!!!   app-text/evince-48.1: stale subslot dep on app-text/poppler:0/154=, available subslot(s): 155, 156, 157, 158, 9999

!!!   app-text/evince-48.1: stale subslot dep on app-text/poppler:0/154=, available subslot(s): 155, 156, 157, 158, 9999

!!!   sys-fs/zfs-kmod-2.3.4: stale subslot dep on virtual/dist-kernel:0/6.12.58=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-kmod-2.3.3: stale subslot dep on virtual/dist-kernel:0/6.12.41=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-kmod-2.3.3: stale subslot dep on virtual/dist-kernel:0/6.12.38=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-kmod-2.3.4: stale subslot dep on virtual/dist-kernel:0/6.12.63=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-kmod-2.3.3: stale subslot dep on virtual/dist-kernel:0/6.12.47=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-kmod-2.3.3: stale subslot dep on virtual/dist-kernel:0/6.12.54=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-2.3.4: stale subslot dep on virtual/dist-kernel:0/6.12.58=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-2.3.4: stale subslot dep on virtual/dist-kernel:0/6.12.63=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   sys-fs/zfs-2.3.3: stale subslot dep on virtual/dist-kernel:0/6.12.54=, available subslot(s): 5.10.250, 5.10.252, 5.15.200, 5.15.202, 6.1.163, 6.1.166, 6.12.74, 6.12.77, 6.18.12, 6.18.18, 6.18.19, 6.19.8, 6.19.9, 6.6.126, 6.6.129

!!!   net-print/libcupsfilters-2.1.1: stale subslot dep on app-text/poppler:0/153=, available subslot(s): 155, 156, 157, 158, 9999

!!!   net-print/libcupsfilters-2.1.1: stale subslot dep on app-text/poppler:0/150=, available subslot(s): 155, 156, 157, 158, 9999

!!!   net-print/libcupsfilters-2.1.1: stale subslot dep on app-text/poppler:0/151=, available subslot(s): 155, 156, 157, 158, 9999

!!!   net-print/libcupsfilters-2.1.1: stale subslot dep on app-text/poppler:0/154=, available subslot(s): 155, 156, 157, 158, 9999

!!!   net-print/libcupsfilters-2.1.1: stale subslot dep on app-text/poppler:0/147=, available subslot(s): 155, 156, 157, 158, 9999

!!!   net-print/libcupsfilters-2.1.1: stale subslot dep on app-text/poppler:0/149=, available subslot(s): 155, 156, 157, 158, 9999

!!!   dev-libs/re2-2024.07.02: stale subslot dep on dev-libs/icu:0/76=, available subslot(s): 77, 78

!!!   dev-libs/re2-0.2022.12.01: stale subslot dep on dev-libs/icu:0/76=, available subslot(s): 77, 78

!!!   dev-libs/re2-0.2022.12.01: stale subslot dep on dev-libs/icu:0/75=, available subslot(s): 77, 78

!!!   dev-libs/re2-0.2022.12.01: stale subslot dep on dev-libs/icu:0/74.1=, available subslot(s): 77, 78

!!!   dev-libs/re2-2024.07.02: stale subslot dep on dev-libs/icu:0/76=, available subslot(s): 77, 78

!!!   dev-perl/B-Hooks-OP-Check-0.220.0-r2: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   dev-perl/bareword-filehandles-0.7.0-r2: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   dev-perl/SGMLSpm-1.1-r2: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   dev-perl/Class-XSAccessor-1.190.0-r3: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   dev-perl/MIME-Charset-1.13.1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   dev-perl/Text-WrapI18N-0.60.0-r2: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   dev-perl/Text-CharWidth-0.40.0-r2: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   sci-geosciences/qgis-3.44.6: stale subslot dep on dev-qt/qtbase:6/6.9.3=, available subslot(s): 6.10.1, 6.10.2, 6.10.9999, 6.11.0, 6.11.9999, 6.9999

!!!   dev-python/tree-sitter-0.24.0: stale subslot dep on dev-libs/tree-sitter:0/0.25.3=, available subslot(s): 0.24.3, 0.25.10, 0.25.6, 0.25.8, 0.26.3, 0.26.5, 0.26.6, 0.26.7, 9999

!!!   media-gfx/zbar-0.23.93-r2: stale subslot dep on media-gfx/imagemagick:0/7.1.1-18=, available subslot(s): 6.9.13-0, 7.1.2-18, 9999-18

!!!   media-plugins/gst-plugins-vpx-1.24.11: stale subslot dep on media-libs/libvpx:0/9=, available subslot(s): 11, 12

!!!   dev-lua/mpack-1.0.12: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/busted-2.2.0: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/mediator_lua-1.1.2_p0-r1: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/lua-term-0.8: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/luassert-1.9.0: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/luafilesystem-1.8.0-r101: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/luv-1.45.0.0: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   dev-lua/say-1.4.1: stale subslot dep on dev-lang/luajit:2/2.1.0_beta3_p20220127=, available subslot(s): 2.1.1716656478, 2.1.1731601260, 2.1.1770848219, 2.1.9999999999

!!!   app-crypt/seahorse-47.0.1-r1: stale subslot dep on app-crypt/gpgme:1/11.6.15.2=, available subslot(s): 45.0

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-libs/protobuf:0/23.3.0=, available subslot(s): 25.6.0, 28.0.0, 29.5.0, 3.21.12.0, 30.2.0, 31.1.0, 32.1.0, 33.0.0, 33.1.0, 9999

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-cpp/abseil-cpp:0/20230125=, available subslot(s): 2501.1.0, 2505.1.0, 2508.1.0

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-libs/protobuf:0/22.5.0=, available subslot(s): 25.6.0, 28.0.0, 29.5.0, 3.21.12.0, 30.2.0, 31.1.0, 32.1.0, 33.0.0, 33.1.0, 9999

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-libs/protobuf:0/27.2.0=, available subslot(s): 25.6.0, 28.0.0, 29.5.0, 3.21.12.0, 30.2.0, 31.1.0, 32.1.0, 33.0.0, 33.1.0, 9999

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-cpp/abseil-cpp:0/2407.0.0=, available subslot(s): 2501.1.0, 2505.1.0, 2508.1.0

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-cpp/abseil-cpp:0/2407.0.0=, available subslot(s): 2501.1.0, 2505.1.0, 2508.1.0

!!!   dev-util/bloaty-1.1-r1: stale subslot dep on dev-libs/protobuf:0/27.2.0=, available subslot(s): 25.6.0, 28.0.0, 29.5.0, 3.21.12.0, 30.2.0, 31.1.0, 32.1.0, 33.0.0, 33.1.0, 9999

!!!   dev-util/source-highlight-3.1.9-r2: stale subslot dep on dev-libs/boost:0/1.85.0.1=, available subslot(s): 1.88.0, 1.89.0, 1.90.0

!!!   dev-util/source-highlight-3.1.9-r2: stale subslot dep on dev-libs/boost:0/1.84.0=, available subslot(s): 1.88.0, 1.89.0, 1.90.0

!!!   virtual/perl-CPAN-2.360.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-parent-0.241.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-Scalar-List-Utils-1.630.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-Math-Complex-1.620.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-ExtUtils-MakeMaker-7.700.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-Storable-3.320.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-ExtUtils-ParseXS-3.510.0-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-File-Temp-0.231.100-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   virtual/perl-Digest-MD5-2.580.100_rc-r1: stale subslot dep on dev-lang/perl:0/5.38=, available subslot(s): 5.40, 5.42

!!!   sci-libs/gdal-3.9.3-r1: stale subslot dep on app-text/poppler:0/154=, available subslot(s): 155, 156, 157, 158, 9999

!!!   x11-drivers/xf86-input-libinput-1.5.0: stale subslot dep on x11-base/xorg-server:0/21.1.20=, available subslot(s): 21.1.21, 9999

!!!   x11-drivers/xf86-input-libinput-1.5.0: stale subslot dep on x11-base/xorg-server:0/21.1.16=, available subslot(s): 21.1.21, 9999

!!!   x11-drivers/xf86-input-libinput-1.5.0: stale subslot dep on x11-base/xorg-server:0/21.1.14=, available subslot(s): 21.1.21, 9999

!!!   x11-drivers/xf86-input-libinput-1.5.0: stale subslot dep on x11-base/xorg-server:0/21.1.18=, available subslot(s): 21.1.21, 9999

!!!   x11-drivers/xf86-input-libinput-1.5.0: stale subslot dep on x11-base/xorg-server:0/21.1.15=, available subslot(s): 21.1.21, 9999

!!!   x11-wm/mutter-48.5: stale subslot dep on media-libs/libdisplay-info:0/2=, available subslot(s): 3

!!!   media-libs/libmypaint-1.6.1-r3: stale subslot dep on dev-libs/json-c:0/5=, available subslot(s): 5.1

!!!   app-misc/localsearch-3.8.2: stale subslot dep on app-text/poppler:0/153=, available subslot(s): 155, 156, 157, 158, 9999

!!!   app-misc/localsearch-3.8.2: stale subslot dep on app-text/poppler:0/154=, available subslot(s): 155, 156, 157, 158, 9999

!!!   app-misc/localsearch-3.8.2: stale subslot dep on app-text/poppler:0/154=, available subslot(s): 155, 156, 157, 158, 9999

>>> Parsing Exclude file: /etc/eclean/packages.exclude
>>> Exclude file parsed. Found 0 categories, 0 packages, 0 anti-packages 0 filenames
>>> Building file list for packages cleaning...
>>> Cleaning binary packages...
 * Location /var/cache/binpkgs/amd64/tigerlake-no-avx512f
 [    1.6 M ] app-crypt/seahorse-47.0.1-r1~1
 [  930.0 K ] app-misc/localsearch-3.8.2~1
 [  930.0 K ] app-misc/localsearch-3.8.2~4
 [  930.0 K ] app-misc/localsearch-3.8.2~5
 [   38.7 M ] app-text/calibre-8.9.0~1
 [    2.6 M ] app-text/evince-48.1~1
 [    2.6 M ] app-text/evince-48.1~2
 [  160.0 K ] app-text/libqxp-0.0.2~1
 [   60.0 K ] app-text/pdfgrep-2.1.2~1
 [  220.0 K ] dev-libs/re2-0.2022.12.01~1
 [  240.0 K ] dev-libs/re2-0.2022.12.01~2
 [  240.0 K ] dev-libs/re2-0.2022.12.01~3
 [  280.0 K ] dev-libs/re2-2024.07.02~1
 [  290.0 K ] dev-libs/re2-2024.07.02~2
 [   60.0 K ] dev-lua/busted-2.2.0~1
 [   30.0 K ] dev-lua/lua-term-0.8~1
 [   50.0 K ] dev-lua/luafilesystem-1.8.0-r101~1
 [   50.0 K ] dev-lua/luassert-1.9.0~1
 [  110.0 K ] dev-lua/luv-1.45.0.0~1
 [   30.0 K ] dev-lua/mediator_lua-1.1.2_p0-r1~1
 [   40.0 K ] dev-lua/mpack-1.0.12~1
 [   30.0 K ] dev-lua/say-1.4.1~1
 [   50.0 K ] dev-perl/B-Hooks-OP-Check-0.220.0-r2~1
 [  130.0 K ] dev-perl/Class-XSAccessor-1.190.0-r3~1
 [   50.0 K ] dev-perl/MIME-Charset-1.13.1~1
 [   50.0 K ] dev-perl/SGMLSpm-1.1-r2~1
 [   50.0 K ] dev-perl/Text-CharWidth-0.40.0-r2~1
 [   30.0 K ] dev-perl/Text-WrapI18N-0.60.0-r2~1
 [   40.0 K ] dev-perl/bareword-filehandles-0.7.0-r2~1
 [   90.0 K ] dev-python/tree-sitter-0.24.0~1
 [  200.0 K ] dev-util/bloaty-1.1-r1~1
 [  200.0 K ] dev-util/bloaty-1.1-r1~2
 [  600.0 K ] dev-util/bloaty-1.1-r1~3
 [  200.0 K ] dev-util/bloaty-1.1-r1~4
 [  200.0 K ] dev-util/bloaty-1.1-r1~5
 [  200.0 K ] dev-util/bloaty-1.1-r1~6
 [  200.0 K ] dev-util/bloaty-1.1-r1~7
 [  660.0 K ] dev-util/source-highlight-3.1.9-r2~1
 [   10.5 M ] dev-util/source-highlight-3.1.9-r2~2
 [  250.0 K ] media-gfx/zbar-0.23.93-r2~1
 [  110.0 K ] media-libs/libmypaint-1.6.1-r3~1
 [   80.0 K ] media-plugins/gst-plugins-vpx-1.24.11~1
 [  720.0 K ] net-print/libcupsfilters-2.1.1~1
 [  720.0 K ] net-print/libcupsfilters-2.1.1~2
 [  720.0 K ] net-print/libcupsfilters-2.1.1~3
 [  720.0 K ] net-print/libcupsfilters-2.1.1~4
 [  720.0 K ] net-print/libcupsfilters-2.1.1~5
 [  720.0 K ] net-print/libcupsfilters-2.1.1~6
 [   92.3 M ] sci-geosciences/qgis-3.44.6~1
 [   10.1 M ] sci-libs/gdal-3.9.3-r1~1
 [    3.1 M ] sys-fs/zfs-2.3.3~1
 [    3.1 M ] sys-fs/zfs-2.3.4~1
 [    3.1 M ] sys-fs/zfs-2.3.4~2
 [    3.0 M ] sys-fs/zfs-kmod-2.3.3~1
 [    3.0 M ] sys-fs/zfs-kmod-2.3.3~2
 [    3.0 M ] sys-fs/zfs-kmod-2.3.3~3
 [    3.0 M ] sys-fs/zfs-kmod-2.3.3~4
 [    3.0 M ] sys-fs/zfs-kmod-2.3.4~1
 [    3.0 M ] sys-fs/zfs-kmod-2.3.4~2
 [   20.0 K ] virtual/perl-CPAN-2.360.0-r1~1
 [   20.0 K ] virtual/perl-Digest-MD5-2.580.100_rc-r1~1
 [   20.0 K ] virtual/perl-ExtUtils-MakeMaker-7.700.0-r1~1
 [   20.0 K ] virtual/perl-ExtUtils-ParseXS-3.510.0-r1~1
 [   20.0 K ] virtual/perl-File-Temp-0.231.100-r1~1
 [   20.0 K ] virtual/perl-Math-Complex-1.620.0-r1~1
 [   20.0 K ] virtual/perl-Scalar-List-Utils-1.630.0-r1~1
 [   20.0 K ] virtual/perl-Storable-3.320.0-r1~1
 [   20.0 K ] virtual/perl-parent-0.241.0-r1~1
 [   90.0 K ] x11-drivers/xf86-input-libinput-1.5.0~1
 [   90.0 K ] x11-drivers/xf86-input-libinput-1.5.0~2
 [   90.0 K ] x11-drivers/xf86-input-libinput-1.5.0~3
 [   80.0 K ] x11-drivers/xf86-input-libinput-1.5.0~4
 [   80.0 K ] x11-drivers/xf86-input-libinput-1.5.0~5
 [    3.2 M ] x11-wm/mutter-48.5~1
 [  101.7 K ] Packages Index
 ===========
 [  201.4 M ] Total space from 74 files were freed in the packages directory

@thesamesam
Copy link
Copy Markdown
Member

Could you rebase? CI should be fixed now.

…slot deps

When a binpkg has a := slot operator dependency resolved to a specific
subslot (e.g., sys-libs/bar:0/1=), but no version of that dependency
in the ebuild repo still has that subslot, the binpkg is stale and
would need a rebuild. The new --changed-subslot option detects and
removes such binpkgs.

Signed-off-by: Matt Turner <mattst88@gentoo.org>
@gentoo-bot gentoo-bot merged commit bab2c68 into gentoo:master Mar 31, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants