Extensions History in enwiki

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Extensions History in enwiki

Lukas Benedix
Hi,

I'm looking for the history of extension usage in enwiki. I asked for
that in the IRC and was told that all the information can be found in
the two files: CommonSettings.php and InitialiseSettings.php.

One of my main problems is that there are so many ways extensions get
included in the CommonSettings.php…

for example:
include( $IP . '/extensions/Renameuser/Renameuser.php' );
include( "$IP/extensions/AntiBot/AntiBot.php" );
include $IP . '/extensions/AntiSpoof/AntiSpoof.php';
include "$IP/extensions/WikimediaMessages/WikimediaMessages.php";
require( "$IP/extensions/Oversight/HideRevision.php" );
require_once( "$IP/extensions/LocalisationUpdate/LocalisationUpdate.php" );
require "$IP/extensions/UserDailyContribs/UserDailyContribs.php";
(I don't think this list is complete)

The next problem is that I have to look at the InitialiseSettings.php
for a lot of extensions:

CommonSettings:
if ( $wmgUserDailyContribs ) {
require "$IP/extensions/UserDailyContribs/UserDailyContribs.php";
}

InitialiseSettings:
'wmgUserDailyContribs' => array(
'default' => true,
),


The other problem is getting all versions of these two files and
correlate them to figure out which extensions were live in enwiki.



Another idea was to look at the History of Special:Version
http://web.archive.org/web/20120126235208*/http://en.wikipedia.org/wiki/Special:Version 
but I don't think the history there is complete (there is a big gap in
2007).


Can anyone help me creating a list like this for enwiki:

EXTENSION_NAME; DEPLOYMENT_DATE; REMOVAL_DATE;


kind regards,

Lukas




_______________________________________________
Wikitech-l mailing list
[hidden email]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Reply | Threaded
Open this post in threaded view
|

Re: Extensions History in enwiki

thingles
My project WikiApiary (http://wikiapiary.com) can tell you this information, and has it for enwiki but only since the site came online which was at the end of December 2012.

Here is the overview for enwiki

http://wikiapiary.com/wiki/Wikipedia_(en)

and extension information is recorded on a subpage

http://wikiapiary.com/wiki/Wikipedia_(en)/Extensions

the history of this page shows the changes in extensions

http://wikiapiary.com/w/index.php?title=Wikipedia_(en)/Extensions&action=history

For example, it shows on May 1, 2013 that Echo and AccountAudit (1.0.0) were added:

http://wikiapiary.com/w/index.php?title=Wikipedia_%28en%29%2FExtensions&diff=151428&oldid=149149

WikiApiary collects this information for all websites every 24 hours.
Jamie Thingelstad
[hidden email]
mobile: 612-810-3699
find me on AIM Twitter Facebook LinkedIn

On May 4, 2013, at 1:41 PM, Lukas Benedix <[hidden email]> wrote:

> Hi,
>
> I'm looking for the history of extension usage in enwiki. I asked for that in the IRC and was told that all the information can be found in the two files: CommonSettings.php and InitialiseSettings.php.
>
> One of my main problems is that there are so many ways extensions get included in the CommonSettings.php…
>
> for example:
> include( $IP . '/extensions/Renameuser/Renameuser.php' );
> include( "$IP/extensions/AntiBot/AntiBot.php" );
> include $IP . '/extensions/AntiSpoof/AntiSpoof.php';
> include "$IP/extensions/WikimediaMessages/WikimediaMessages.php";
> require( "$IP/extensions/Oversight/HideRevision.php" );
> require_once( "$IP/extensions/LocalisationUpdate/LocalisationUpdate.php" );
> require "$IP/extensions/UserDailyContribs/UserDailyContribs.php";
> (I don't think this list is complete)
>
> The next problem is that I have to look at the InitialiseSettings.php for a lot of extensions:
>
> CommonSettings:
> if ( $wmgUserDailyContribs ) {
> require "$IP/extensions/UserDailyContribs/UserDailyContribs.php";
> }
>
> InitialiseSettings:
> 'wmgUserDailyContribs' => array(
> 'default' => true,
> ),
>
>
> The other problem is getting all versions of these two files and correlate them to figure out which extensions were live in enwiki.
>
>
>
> Another idea was to look at the History of Special:Version http://web.archive.org/web/20120126235208*/http://en.wikipedia.org/wiki/Special:Version but I don't think the history there is complete (there is a big gap in 2007).
>
>
> Can anyone help me creating a list like this for enwiki:
>
> EXTENSION_NAME; DEPLOYMENT_DATE; REMOVAL_DATE;
>
>
> kind regards,
>
> Lukas
>
>
>
>
> _______________________________________________
> Wikitech-l mailing list
> [hidden email]
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l

_______________________________________________
Wikitech-l mailing list
[hidden email]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Reply | Threaded
Open this post in threaded view
|

Re: Extensions History in enwiki

Krinkle
In reply to this post by Lukas Benedix
On May 4, 2013, at 8:41 PM, Lukas Benedix <[hidden email]> wrote:

> Hi,
>
> I'm looking for the history of extension usage in enwiki. I asked for that in the IRC and was told that all the information can be found in the two files: CommonSettings.php and InitialiseSettings.php.
>
> One of my main problems is that there are so many ways extensions get included in the CommonSettings.php…
>
> for example:
> include( $IP . '/extensions/Renameuser/Renameuser.php' );
> include( "$IP/extensions/AntiBot/AntiBot.php" );
> include $IP . '/extensions/AntiSpoof/AntiSpoof.php';
> include "$IP/extensions/WikimediaMessages/WikimediaMessages.php";
> require( "$IP/extensions/Oversight/HideRevision.php" );
> require_once( "$IP/extensions/LocalisationUpdate/LocalisationUpdate.php" );
> require "$IP/extensions/UserDailyContribs/UserDailyContribs.php";
> (I don't think this list is complete)
>
> The next problem is that I have to look at the InitialiseSettings.php for a lot of extensions:
>
> CommonSettings:
> if ( $wmgUserDailyContribs ) {
> require "$IP/extensions/UserDailyContribs/UserDailyContribs.php";
> }
>
> InitialiseSettings:
> 'wmgUserDailyContribs' => array(
> 'default' => true,
> ),
>
>
> The other problem is getting all versions of these two files and correlate them to figure out which extensions were live in enwiki.
>
>
>
> Another idea was to look at the History of Special:Version http://web.archive.org/web/20120126235208*/http://en.wikipedia.org/wiki/Special:Version but I don't think the history there is complete (there is a big gap in 2007).
>
>
> Can anyone help me creating a list like this for enwiki:
>
> EXTENSION_NAME; DEPLOYMENT_DATE; REMOVAL_DATE;
>
>
> kind regards,
>
> Lukas

I don't think there is such a record readily available.

However it should be relatively straight forward to develop something that could generate the data you're looking for.

The program would:

* Browse trough the git history of mediawiki-config.git (optionally picking one per day, or every commit if you like)
* Use a PHP interpreter to run CommonSettings.php with site context dbname=enwiki. No need to explicitly have it read InitialiseSettings.php since that is referenced from CommonSettings.php
* Fetch list of run-time included php files
* Filter for $IP/extensions/*/*.php
* Strip to match only directory name
* Insert into database of some sorts with timestamp of commit

From there you'll be able to determine exactly when and for how long an extension was deployed.

-- Krinkle

PS: The public mediawiki-config.git only dates back to 24 Feb 2012. Before that date the information was in a non-public svn repository inside the wmf-production cluster.




_______________________________________________
Wikitech-l mailing list
[hidden email]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Reply | Threaded
Open this post in threaded view
|

Re: Extensions History in enwiki

Platonides
On 04/05/13 20:57, Krinkle wrote:
> PS: The public mediawiki-config.git only dates back to 24 Feb 2012. Before that date the information was in a non-public svn repository inside the wmf-production cluster.

Rather than using mediawiki-config, you may have more luck using
> http://web.archive.org/web/*/http://en.wikipedia.org/wiki/Special:Version



_______________________________________________
Wikitech-l mailing list
[hidden email]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l