Thanks Dantman,  

(1.) I agree, maybe it's better that I don't take over an existing RFC -- it 
sounded like a good idea at first! 

(2.) A configuration database for Mediawiki would be awesome. Extension:Update 
is trying to do the same thing and I think the extension repository can benefit 
from this immensely. A GUI configuration manager would fit right in, and 
storing the configs in a database makes sense. Although it would be easier to 
work in a working implementation of the configuration manager, I think it is 
not a required perquisite. As long as there's a defined interface established 
early in each project they can be developed simultaneously. 

(3.) I've edited the "Thoughts on client-server model" section to clarify 
things and incorporate your thoughts. This is the exact reason for comments -- 
I rarely think of things that are obvious to others.  

(4.) Current extensions will always work -- they are hardcoded that way. Any 
extensions developed (or retrofitted) to work with the proposed management 
system will have a superset of functionality that is currently required. An 
ideal situation would be a script to partially convert a "require_once()" 
extension to a "managed" one. (Of course version info and dependency info will 
need to be figured out and added manually.) 

-DanielRenfro


On Saturday, July 28, 2012 at 9:29 PM, Daniel Friesen wrote:

> On Sat, 28 Jul 2012 17:33:42 -0700, Daniel Renfro <bluecu...@gmail.com 
> (mailto:bluecu...@gmail.com)> 
> wrote:
> 
> > To all developers:
> > 
> > I would like to gather some feedback for an idea that has been around 
> > for a while -- implementing an extension manager for Mediawiki.
> > 
> > The topic came up a few times recently at Wikimania 2012's "Ask the 
> > developers" session and got me thinking. I've been developing with 
> > Mediawiki for 7 years now and have no contributed anything significant 
> > to the community. I've taken on this project as a serious opportunity to 
> > contribute, and would like to get some comments, opinions, and general 
> > feedback (if not some interested parties willing to help out!) I've 
> > expanded the current "request for comments" page to include a history of 
> > the idea and a number of ideas for features.
> > 
> > You can view the proposal at [ 
> > http://www.mediawiki.org/wiki/Requests_for_comment/Extension_release_management
> >  
> > ]. Please leave your comments on the Talk page (and don't forget to sign 
> > your name!)
> > 
> > -Daniel
> > 
> > MW: http://www.mediawiki.org/wiki/User:DanielRenfro
> > IRC: daniel_renfro
> > 
> 
> 
> Shouldn't you have created your own RFC instead of usurping ^demon/Chad's?
> 
> Speaking of Chad. He's been dying to work on his project trying to create 
> a configuration database for MediaWiki. He's been busy with Gerrit stuff 
> but hoping to work on configuration after that's done.
> 
> I think that extension management is the second step. We can't have a good 
> system for installing extensions in a UI when we don't even have a good 
> system for configuring MediaWiki in a UI.
> 
> 
> I don't like what's in the "Thoughts on client-server model" section.
> - Firstly a lot of the reasoning is based on the assumption "The 
> repository would most definitely be an instance of Mediawiki itself". But 
> there's no reason provided why we need to do that. Almost no-one needs the 
> ability to run a centralized repository besides Wikimedia and perhaps some 
> in-house environments that want to handle extensions themselves (and a 
> good portion of those may not want to even bother with this remote stuff; 
> They'll just run some script to distribute extension code to their servers 
> and run install scripts). So there is no reason that the server needs to 
> be written in PHP much less be part of MediaWiki. There are other 
> languages and many of them may have libraries that are better at doing 
> this kind of thing on the server than PHP does it. I see no reason to 
> preclude the possibility of using a different language if someone shows 
> that there would be some advantage to doing so.
> - This section appears to assume that extension distribution would be 
> handled by the server including the code for all extensions inside of it's 
> extensions/ directory and serving them out. This does not seem right. 
> Extension distribution code will likely involve something that interacts 
> more directly with code repositories or allows uploading of tarballs than 
> something that just serves files from a directory. In fact that's almost 
> necessary to properly handle versions.
> - I should probably point this out as a side point. Wikimedia host the 
> standard central repository. Even if we 'were' to develop something the 
> way you describe there where the wiki distributes extensions it serves 
> itself. Wikimedia would probably NOT be using this system to distribute 
> extensions to it's own wikis. ie: There is no recursive problem anyways 
> because Wikimedia wouldn't be using the system to distribute itself.
> 
> "Extension pages can ONLY exist (excluding subpages) if an extension has 
> been defined in the database, a path to the repo given, and author(s) 
> defined"
> I see no reason to lock in an Extension: page = part of the repository 
> setup like this. We can provide parser functions and whatnot to display 
> extension information on Extension: pages on MW.org (http://MW.org). And we 
> can use some 
> method to use information on the extension base itself to define some 
> information for extensions, etc... but Extension pages and extension 
> management will be two separate things.
> 
> "(requirement) don't break the current extensions"
> Extensions currently depend on our old method of configuration. This means 
> that the idea of installing an extension via interface and the idea of 
> keeping extensions as-is is already incompatible. Extensions are 
> inevitably going to need to be tweaked to start working in an interface 
> based installation environment.
> Unless you just mean that new versions of MediaWiki should keep working 
> with old require_once based extensions until they migrate to the extension 
> installer setup.
> 
> -- 
> ~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://daniel.friesen.name]
> 
> _______________________________________________
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org (mailto:Wikitech-l@lists.wikimedia.org)
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
> 
> 


_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to