On Mon, Aug 30, 2010 at 8:00 AM, Platonides <Platonides(a)gmail.com> wrote:
You seem to be using it just to not promet him again
when he has been
removed.
Why not change the user_groups entry to something like "~editor" ? (ie.
"not editor")
That seems a lot less obvious. Everything accessing user_groups will
have to special-case it. Making a separate table is cleaner, IMO.
Most uses in core are just to check if he's a bot,
and if an extension
accessed directly to the db (which shouldn't), would just see an unknown
group.
There are legitimate reasons for extensions or maintenance scripts to
directly access the DB, like to do batch queries. In trunk alone, it
looks like CentralAuth, EmailPage, Farmer, FlaggedRevs, Maintenance,
PageBy, SemanticNotifyMe, SpecialFileList, StrategyWiki, UserMerge,
and WhiteListEdit access the table directly. Some maybe wrongly, but
they do. There are at least a dozen different places in phase3 that
access it too.
I'm not against making breaking changes to the semantics of tables
when necessary (see categorylinks), but I don't think it's necessary
here -- especially since a separate table is a cleaner design to begin
with (no magic values).