Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 342185 - [Tracker] KEYWORDS must not be set in eclass
Summary: [Tracker] KEYWORDS must not be set in eclass
Status: CONFIRMED
Alias: None
Product: Quality Assurance
Classification: Unclassified
Component: Trackers (show other bugs)
Hardware: All Linux
: High QA
Assignee: Gentoo Quality Assurance Team
URL:
Whiteboard:
Keywords: Tracker
: 486392 (view as bug list)
Depends on: 562464
Blocks:
  Show dependency tree
 
Reported: 2010-10-22 13:15 UTC by Ralph Sennhauser (RETIRED)
Modified: 2021-08-31 09:57 UTC (History)
5 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 Ralph Sennhauser (RETIRED) gentoo-dev 2010-10-22 13:15:22 UTC
devmanual/eclass-writing/text.xml
149-
150-<p>
151-Top level variables may be defined as for ebuilds. If any USE flags are
152:used, <c>IUSE</c> must be set. The <c>KEYWORDS</c> variable must <b>not</b> be set in an
153-eclass.
154-</p>
155-

eclasses in violation of the above:

gentoo/eclass/games-q3mod.eclass 
-> no ebuilds inheriting games-q3mod eclass found in the maintree

gentoo/eclass/tetex.eclass 
-> no ebuilds inheriting tetex eclass which do not explicitly set KEYWORDS found in maintree

gentoo/eclass/enlightenment.eclass 
-> no ebuilds inheriting enlightenment eclass which do not explicitly set KEYWORDS found in maintree

gentoo/eclass/vdr-plugin.eclass 
-> no ebuilds inheriting vdr-plugin eclass which do not explicitly set KEYWORDS found in maintree

gentoo/eclass/autotools-utils.eclass 
-> no ebuilds inheriting autotools-utils eclass which do not explicitly set KEYWORDS found in maintree

Reproducible: Always
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2010-10-23 16:42:18 UTC
games-q3mod.eclass lacks a @MAINTAINER - CC'ing games@
tetex.eclass lacks a @MAINTAINER: - CC'ing tex@
vdr-plugin.eclass lacks a @MAINTAINER: - CC'ing vdr@
Comment 2 Thomas Sachau gentoo-dev 2010-10-23 17:49:57 UTC
From PMS, section 8.2:

KEYWORDS:

A Whitespace separated list of keywords for the ebuild. Each token must be a valid
keyword name, as per section 3.1.6. May include -*, which indicates that the package will
only work on explicitly listed archs. May include -arch, which indicates that the package
will not work on the specified arch. May be empty, which indicates uncertain functionality on
any architecture. >>>May be defined in an eclass.<<<

So it is valid to set KEYWORDS in the eclass and the devmanual may need to be updated.
Comment 3 Matthias Schwarzott gentoo-dev 2010-10-23 18:36:42 UTC
Where does vdr-plugin.eclass sets KEYWORDS?
I only see the commented KEYWORDS="..." as part of an example ebuild.
Comment 4 Alexis Ballier gentoo-dev 2010-10-23 21:10:57 UTC
whatever the decision is, feel free to touch tetex.eclass: it's deprecated, hasn't been updated for years, I don't think anyone care about it and it'll be useless when ptex will be removed (ptex has been merged with texlive for the 2010 release)
Comment 5 Maciej Mrozowski gentoo-dev 2010-10-24 06:47:15 UTC
Most of those are false positives (KEYWORDS is part of comment - example ebuild) - please fix reporting tool.
Removing myself and autotools-utils from bug.
Comment 6 Ralph Sennhauser (RETIRED) gentoo-dev 2010-10-24 07:39:01 UTC
(In reply to comment #5)
> Most of those are false positives (KEYWORDS is part of comment - example
> ebuild) - please fix reporting tool.
> Removing myself and autotools-utils from bug.
> 

I'm sorry for the overhead I created, only games-q3mod, enlightenment and tetex are effectively affected. Please someone remove @vdr as well.

(In reply to comment #2)
> 
> So it is valid to set KEYWORDS in the eclass and the devmanual may need to be
> updated.
> 

This is certainly less work as it wont break anything. However Gentoo may have stricter QA rules than the PM requires if it makes sense.
Comment 7 Christian Ruppert (idl0r) gentoo-dev 2012-01-15 20:55:53 UTC
Removing vdr as we don't set KEYWORDS in the vdr-plugin eclass.
Comment 8 Dan Johnson 2013-02-14 02:40:58 UTC
Update: games-q3mod and tetex are no longer in gentoo-x86, so only enlightenment.eclass is left doing this now.

(would likely be a good idea to remove games from CC, but I will not do this myself)
Comment 9 Ralph Sennhauser (RETIRED) gentoo-dev 2013-02-14 07:19:41 UTC
Indeed enlightenment.eclass is still doing it and we have a new one in this list, namely intel-sdp.eclass

Adding maintainers to CC.
Comment 10 Justin Lecher (RETIRED) gentoo-dev 2013-02-14 08:18:34 UTC
+  14 Feb 2013; Justin Lecher <jlec@gentoo.org> intel-sdp.eclass:
+  Drop KEYWORDS from eclass, #342185
+

Interestingly, the eclass was reviewed exactly with this on g-dev ml. This shows the quality of such an review.
Comment 11 SpanKY gentoo-dev 2013-02-19 07:26:17 UTC
(In reply to comment #9)

yes, 9 years and counting of enlightenment.eclass doing this and causing horrible QA breakage everywhere.  no, wait, that has yet to happen.  i see no reason to fix something isn't broken.
Comment 12 SpanKY gentoo-dev 2013-09-29 00:58:20 UTC
*** Bug 486392 has been marked as a duplicate of this bug. ***
Comment 13 Pacho Ramos gentoo-dev 2014-07-17 18:47:12 UTC
Well, I noticed this bug report some minutes ago due:
http://www.gossamer-threads.com/lists/gentoo/dev/289697

that explains we setting keywords outside ebuilds is a problem at stabilization time
Comment 14 Pacho Ramos gentoo-dev 2014-07-17 18:52:09 UTC
(In reply to Thomas Sachau from comment #2)
> From PMS, section 8.2:
> 
> KEYWORDS:
> 
> A Whitespace separated list of keywords for the ebuild. Each token must be a
> valid
> keyword name, as per section 3.1.6. May include -*, which indicates that the
> package will
> only work on explicitly listed archs. May include -arch, which indicates
> that the package
> will not work on the specified arch. May be empty, which indicates uncertain
> functionality on
> any architecture. >>>May be defined in an eclass.<<<
> 
> So it is valid to set KEYWORDS in the eclass and the devmanual may need to
> be updated.

In current PMS I see instead KEYWORDS listed under "Chapter 7", that is about variables defined by ebuilds :/ (maybe it was changed at some time)
Comment 15 Ulrich Müller gentoo-dev 2014-07-17 19:15:25 UTC
(In reply to Pacho Ramos from comment #14)
> In current PMS I see instead KEYWORDS listed under "Chapter 7", that is
> about variables defined by ebuilds :/ (maybe it was changed at some time)

We have moved a couple of variables from mandatory to optional at some point: http://git.overlays.gentoo.org/gitweb/?p=proj/pms.git;a=commit;h=d99d0fe7c4fef5b541604020642255de291e4dbd

Also, PMS primarily defines package manager behaviour. It is not a problem for the PM if KEYWORDS (or most other variables) are defined in an eclass. That doesn't prevent us from having a policy that is stricter than PMS. See bug 170165.
Comment 16 Ciaran McCreesh 2014-07-17 19:19:10 UTC
Well, the original issue was that KEYWORDS isn't a "merged" variable like IUSE is, so setting it in eclasses doesn't do what you'd expect.
Comment 17 Julian Ospald 2015-10-07 11:11:24 UTC
So far, everyone has ignored this QA issue. Can we get a QA vote on whether this will be enforced or not and if there will be exceptions?
Comment 18 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2015-10-07 11:17:11 UTC
Maybe you should suggest it for the Council agenda :-D.
Comment 19 Julian Ospald 2015-10-07 11:38:41 UTC
(In reply to Michał Górny from comment #18)
> Maybe you should suggest it for the Council agenda :-D.

I don't see how this issue needs the council to step in. It's clearly a QA issue.
Comment 20 Julian Ospald 2015-10-09 10:16:48 UTC
if QA agrees, we can make this a fatal repoman warning no?
Comment 21 Patrick Lauer gentoo-dev 2016-06-12 09:04:58 UTC
Fixed keywording for enlightenment.eclass.
Comment 22 tharvik 2018-02-04 14:15:21 UTC
It's been more than two years and paludis is still complaining. The only remaining eclass failing is ros-catkin, but bug 562464 wasn't updated since late 2015.

Is there anything I can help with to help fixing these?