I will take a look over the bug, quite a long conversation. It will take me the night most likely to digest the suggestions included. I suppose my first worry is that I was targeting simple changes which can be agree'd on and implemented in a few lines, whereas the linked bug report seems to suggest a system that I know will require many iterations and weeks of on/off work before +2'd into core.
Erik Bernhardson
On Thu, Sep 19, 2013 at 5:07 PM, Daniel Friesen daniel@nadir-seen-fire.comwrote:
~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://danielfriesen.name/]
On 2013-09-19 4:44 PM, Chad wrote:
On Thu, Sep 19, 2013 at 11:45 AM, Erik Bernhardson < ebernhardson@wikimedia.org> wrote:
- Replace RC_EXTERNAL with RC_WIKIDATA and RC_FLOW constants in
their
respective extensions. This is also straightforward, but adds development overhead to ensure future creators of RC_* constants do not conflict with each other. It would be handled similarly to NS_* constants with an on-wiki list. I have heard some mention that naming conflicts have occurred in the past with this solution. This would force queries looking for only core sources of change to provide an inclusive list of RC_* values to find, rather than using rc_type != RC_EXTERNAL.
Please don't repeat the mistake of having extension authors actually
caring
what their namespace number is. Everyone just goes "Oh, nobody's probably using 200 so I'll just do that."
-Chad
+1
@Eric The on-wiki list you talk about is here: https://www.mediawiki.org/wiki/Extension_default_namespaces
"I have heard some mention that naming conflicts have occurred in the past with this solution." Yes there are plenty. 120-121 is used by both RefHelper and Rich Media 200-203 is used by SocialProfile and Data Import 300-301 is used by PollNY and Access Control List Wikia also uses 300-399 when writing it's own extensions and doesn't bother co-operating by at least adding the defaults they use to that list to avoid conflicts. 500-501 is used by BlogPage and Linked Data 700-701 is used by LinkFilter and Collaboration BlueSpice and BlogPage have a different type of conflict too. They BOTH use the constant NS_BLOG and define different namespace defaults for it.
This on-wiki page is ONLY a registry of defaults. The standard practice for these is that the starting number should be configurable so namespace ids other than the default can be used to avoid conflicts. I'm not so sure you'll be able to to that very well for RC external ids.
Anyways, this whole extension namespace id setup is considered a bug. You don't want to get into this situation again. We have an open bug on dropping this default namespace nonsense and using dynamic registration of namespace IDs https://bugzilla.wikimedia.org/show_bug.cgi?id=31063
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l