Summary: | sys-apps/portage repomans RDEPEND.implicit warning is invalid | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Samuli Suominen (RETIRED) <ssuominen> |
Component: | Current packages | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | aballier, esigra, gentoo.integer, mgorny, mr_bones_, pms, pva, qa |
Priority: | High | Keywords: | InVCS |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 255358 | ||
Bug Blocks: | 288499, 335925 |
Description
Samuli Suominen (RETIRED)
2009-09-16 12:43:17 UTC
IIRC, EAPI 3 removes implicit RDEPEND setting entirely, so the RDEPEND.implicit check will be irrelevant then. So essentially, you're suggesting to remove the RDEPEND.implicit check. yeah, it's not technically required for anything, even pms guarantees it: <quote> PMS, 8.4 If RDEPEND is unset (but not if it set to an empty string) is an ebuild, the package manager must set its value to be equal to the value of DEPEND. </quote> (with the logic that it's implicit we might as well print warnings of missing src_unpack or missing src_compile as well and demand they to be set to default values...) The RDEPEND.implicit check is removed in svn r14471. This is fixed in 2.2_rc43. This is fixed in 2.1.7. As discussed in bug #314999: Currently we have policy: http://devmanual.gentoo.org/general-concepts/dependencies/index.html Runtime Dependencies ==================== ...If this variable is not specified, it defaults to the value of DEPEND, but you should always explicitly define RDEPEND="${DEPEND}" (as in the future this setting is planned to be removed from Portage). And last time it was discussed on -dev it was suggested differently and repoman check was created: http://archives.gentoo.org/gentoo-dev/msg_1c3b47875b87c9d0a2c93baf98698047.xml I'm not sure what changed since then and thus check was correct should be put back. If we're putting back the repoman check, we should probably also add a note to PMS saying that implicit RDEPEND="${DEPEND}" is deprecated. It's not deprecated. It's present in some EAPIs and not others. Anything beyond that is a QA policy, not a PMS policy. (In reply to comment #7) > If we're putting back the repoman check, we should probably also add a note to > PMS saying that implicit RDEPEND="${DEPEND}" is deprecated. > It's been tree QA policy for many years that you should not rely on implicit RDEPEND. It has worked but we have wanted the usage to be uniform in the tree. It should always be checked for this reason. It doesn't work in later EAPIs and it's not allowed by tree policy. For the future removals like this should not be done without prior discussion on gentoo-dev. (In reply to comment #1) > IIRC, EAPI 3 removes implicit RDEPEND setting entirely, so the RDEPEND.implicit > check will be irrelevant then. > RDEPEND.implicit as I see it: ./bin/repoman: "RDEPEND.implicit":"RDEPEND is unset in the ebuild which triggers implicit RDEPEND=$DEPEND assignment" Am I missing something or was your comment was wrong? I think in EAPI 3 it should be a fatal error in repoman to not define RDEPEND. The RDEPEND.implicit check is back now, in git: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=3b9488a32d6f170387b6dfbf1985e87db556f998 This is in the 2.2_rc68, but I'll leave this bug open until it's in an unmasked version. This is fixed in 2.1.9. |