[DEFAULT] # Suppressions applied repo-wide. pkgcheck only honors [DEFAULT], # [CHECKSETS], and repo-alias sections; per-package suppression via # [category/pkg] is not supported, so every entry here is global. # # RedundantVersionCheck: # Retention policy ("last two plus last-of-major-series") keeps older # slots on purpose for rollback. pkgcheck cannot tell deliberate # retention from forgotten cruft, so the whole check fires constantly # on packages we want to keep. # # NonsolvableDepsIn{Dev,Exp}: # Niche profiles (x32, musl, hardened) routinely lack keywords on # upstream sci-python deps. Verified concretely on 2026-04-23: a # re-enabled run surfaced 45 findings, split 26/x32 + 19/musl. # The x32 cluster is driven by dev-python/ipywidgets, jupyterlab, # jupyter-server-proxy and plotly not being ~amd64-keyworded on # the x32 sub-profile - hitting pyxem, abtem, ipympl, # hyperspy-gui-ipywidgets, dask-labextension, sasmodels, bumps. # The musl cluster is driven by dev-util/nvidia-cuda-toolkit, # dev-libs/cusparselt, dev-util/ruff, dev-python/sphinxcontrib-bibtex, # hatch-* and (now masked) sci-physics/ifeffit - hitting cupy, # mumax, prismatic, matplotlib-scalebar, colorspacious, sasview, # demeter. All are legitimate ~amd64 claims against sub-profiles # with narrower dep coverage; fixing would mean per-package # profile-specific masks for archs nobody using this overlay # consumes. Not actionable from this overlay. # # NonsolvableDepsInStable: # Same shape as the {Dev,Exp} suppression above, just on the # mainline stable profiles. We are a ~amd64-first overlay that # ships testing-keyworded ebuilds with version-pinned chains # (vllm/pytorch, cuda-bindings/cuda-pathfinder, qtdatavis3d/ # qtbase 6.11.0). None of those chains have stable counterparts # in either this overlay or ::gentoo, so the stable-profile dep # tree is unsolvable by construction; users on strictly-stable # systems wouldn't have ~amd64 enabled to install our packages # in the first place. Verified 2026-05-09: after narrowing # pyside-r99 to ~amd64-only and dropping ~x86 from pyvista/ # pyvistaqt (real cleanups, committed separately), the residual # ~32 findings are all chain-of-testing-deps cases. fabio's # x86 finding is intentional and documented separately # (see project_fabio_dropped_x86 in the maintainer's notes). # # UnderscoreInUseFlag, PythonMismatchedPackageName, RequiredUseDefaults: # Three overlapping check classes that all fire on the same handful # of intentional packaging shapes. Expected by design — verified # 2026-05-09 against the unsuppressed scan. # # * py2 forks (8 of UnderscoreInUseFlag, 4 of PythonMismatchedPackageName, # 3 of RequiredUseDefaults): the locally-vendored *_py2 eclasses and # dev-python/*-python2 packages keep python_targets_python2_7 in IUSE # and intentionally do not rename to match their py3 upstreams; they # are py2-only forks kept after ::gentoo dropped py2 support. # * `-bin` packages (3 of PythonMismatchedPackageName, 1 of # RequiredUseDefaults): dev-python/amd-quark-bin, cuda-tile-bin, # runai-model-streamer-bin disambiguate binary-wheel ebuilds from # hypothetical source ones in our overlay; the upstream PyPI name # is the suffix-less form. amd-quark-bin's REQUIRED_USE is also # here because upstream only ships cp311/cp312 wheels — the # default amd64 profile would otherwise pick python3_13 which has # no matching wheel. # * VIDEO_CARDS USE_EXPAND (2 of UnderscoreInUseFlag): dev-util/hip's # video_cards_amdgpu / video_cards_nvidia flags get their underscore # from Gentoo's USE_EXPAND naming, not from us; not actionable. # * sci-libs/silx desktop sub-profile (1 of RequiredUseDefaults): # desktop disables opencl while silx requires it. Profile/package # mismatch we don't get to fix from the overlay side. # # UnusedEclasses: # eclass/python-single-r1_py2.eclass is never directly inherited by # an ebuild. It is reached transitively via distutils-r1_py2 when a # consumer sets DISTUTILS_SINGLE_IMPL=1 (currently pycairo-python2 # and both sk1 ebuilds; confirmed 2026-04-23). pkgcheck does not # statically trace conditional `inherit` branches inside eclasses # and the @PROVIDES hint does not help here either, so the warning # fires even though the eclass is load-bearing for those three # ebuilds. Suppress; the check would only be reliable again if the # eclass were inlined or DISTUTILS_SINGLE_IMPL usage dropped. # # DeprecatedDep is intentionally left enabled: several findings # (gwyddion gtksourceview:2, mantid pyqt5/versioningit, qscintilla qt5, # dwarftherapist qt5, gtk+ gtk-engines-adwaita) are real pending # migrations that we want surfaced. # # UnknownRestrict: # pkgcheck only knows the PMS-blessed RESTRICT values (bindist, # fetch, mirror, primaryuri, splitdebug, strip, test, userpriv). # `network-sandbox` is a Portage extension that disables Portage's # network sandbox so the build can fetch at compile-time. It is # honored correctly at portage-time; pkgcheck just doesn't have it # in its allow-list. We use it in 13 ebuilds across 6 packages # (verified 2026-05-10): dev-python/nvidia-cudnn-frontend (cmake # FetchContent for sub-deps), dev-python/vllm (build-time runtime # extras), dev-util/zluda (live, cargo crate fetch), sci-ml/kokoros # (live, cargo crate fetch), sci-ml/fastflowlm + sci-ml/lemonade # (cmake FetchContent for cpp-httplib/libwebsockets and tokenizers-cpp # sub-cargo). The convention is that live ebuilds keep this bypass # while tagged releases should pre-vendor via the cargo eclass; the # tagged fastflowlm/lemonade versions still need vendoring (open # follow-up). Suppressing the warning until the tagged ones are # vendored AND pkgcheck learns network-sandbox. checks = -RedundantVersionCheck keywords = -NonsolvableDepsInDev,-NonsolvableDepsInExp,-NonsolvableDepsInStable,-UnderscoreInUseFlag,-PythonMismatchedPackageName,-RequiredUseDefaults,-UnusedEclasses,-UnknownRestrict