Re: [PATCH] net/, drivers/net/ , missing EXPERIMENTAL in menus
From: Jeff Garzik <hidden>
Date: 2007-08-31 18:07:13
Also in:
lkml
Robert P. J. Day wrote:
On Fri, 31 Aug 2007, Randy Dunlap wrote:quoted
On Thu, 19 Jul 2007 23:05:57 +0100 Simon Arlott wrote:quoted
On 19/07/07 17:19, Robert P. J. Day wrote:quoted
On Thu, 19 Jul 2007, Randy Dunlap wrote:quoted
I think that Stefan means a patch to the kconfig source code, not the the Kconfig files. Good luck. I'd still like to see it.yes, i understand what he wanted now. as a first step (that theoretically shouldn't change any behaviour), i'd patch the Kconfig structure to add a new attribute ("maturity") which would be allowed to be set to *exactly one* of a pre-defined set of values (say, OBSOLETE, DEPRECATED, EXPERIMENTAL, and STILLBLEEDING). and that's it, nothing more. don't try to do anything with any of that just yet, just add the infrastructure to support the (optional) association of a maturity level with a config option. that's step one.What about something like this? I'm not sure if the addition to sym_init is desirable... I also had to prefix _ to the name for now otherwise it conflicts badly with the current symbols. It probably should stop "depends on _BROKEN" etc. too.i'm sure i'm going to get shouted down here, but i really disagree with "BROKEN" being considered a "maturity level". IMHO, things like EXPERIMENTAL, DEPRECATED and OBSOLETE represent maturity levels, for what i think are obvious reasons. something like BROKEN, though, has *nothing* to do with maturity. a feature can be any of those maturity levels, and simultaneously be BROKEN. i consider BROKEN to be what i call a "status", and different status levels might be the default of normal, or KIND_OF_FLAKY or TOTALLY_BORKED -- that's where BROKEN would fit in.
BROKEN is definitely a maturity level. A more accurate description would be BITROTTING perhaps. The code in question has passed through bleeding -> experimental -> stable, and come out the other side. In contrast, OBSOLETE and DEPRECATED reflect high-level status not code quality/maturity. Jeff