second thoughts about DEPRECATED and OBSOLETE maturity levels

From: Robert P. J. Day
Date: Sun Feb 25 2007 - 17:10:14 EST



having championed the cause of adding those two code maturity levels
to init/Kconfig, i just realized that implementing them as simple
dependencies has a *really* annoying shortcoming.

in order to display that a kernel config feature is experimental,
developers have not only made that feature depend on EXPERIMENTAL, but
they've also had to *explicitly* add the trailer "(EXPERIMENTAL)" to
the prompt line in the Kconfig file, to make it visually obvious.

obviously, it would be *way* nicer if that trailer were produced on
the fly for any "EXPERIMENTAL" feature, just as it would be for
OBSOLETE or DEPRECATED (or any other maturity levels people can dream
up).

one solution is to hack Kconfig to look for specific dependencies
that represent maturity levels and add them automatically to those
respective lines. doable, but kind of hacky.

another solution is to add a new keyword like "status" or
"maturity", so that:

config EXT4DEV_FS
tristate "Ext4dev/ext4 extended fs support development (EXPERIMENTAL)"
depends on EXPERIMENTAL
...

becomes simply:

config EXT4DEV_FS
tristate "Ext4dev/ext4 extended fs support development"
maturity EXPERIMENTAL
...

internally, it could still be treated as a simple dependency, and
everything would still work.

you know, this seemed so simple at first ...

rday

--
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA

http://fsdev.net/wiki/index.php?title=Main_Page
========================================================================
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/