Summary: | dev-util/pkgcheck: check if inherited eclass has banned used EAPI | ||
---|---|---|---|
Product: | Gentoo Hosted Projects | Reporter: | Manuel Rüger (RETIRED) <mrueg> |
Component: | PkgCore | Assignee: | Arthur Zamarin <arthurzam> |
Status: | RESOLVED OBSOLETE | ||
Severity: | normal | CC: | johu, mgorny, nelo, sam |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=873754 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 808261 |
Description
Manuel Rüger (RETIRED)
![]() +1, this could be set up so that we can move deprecation/banning checks from eclass code to portage, i.e. portage checks EAPI, if EAPI in banned it prints a standard bailout message. These environmental variables are rather wrong idea since ebuild can inherit multiple eclasses and different eclasses can set environmental variables to different values. A special, parsed marker in comment would be better. (Anyway die() in global scope is more effective for banned EAPIs.) So better proposal would be # @DEPRECATED_EAPI 4 # @BANNED_EAPI 1 2 3 as already used for @DEAD? I like comment #3, and it should produce a warning or not allow you to commit anything that is not at the current EAPI level. That way people are forced to update to current EAPI anytime they commit anything. Though that might cause issues for stablization keywording. repoman support has been removed per bug 835013. Please file a new bug (or, I suppose, reopen this one) if you feel this check is still applicable to pkgcheck and doesn't already exist. I'm not sure if pkgcheck actually does this right now. This is done at two stages: 1. banned EAPI is put as such using the eclass EAPI guard, resulting in `die` in global scope, which results in pkgcheck failing hard and blocking it. If pushed to master (without checking), this breaks the repository and notifies the dev. 2. deprecated EAPI is marked as such in repo level, and is reported by pkgcheck as warning. |