I probably have an idea of how to implement this using a bot (or post-commit hook if we want real-time data) and externals.
Essentially bot script should be checking the version of extension folder and generate and check-in an entry in another repository in the form like this:
http://extensionversioningrepo/trunk/OpenID/version.php
and write a Last Changed Rev from svn info http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/OpenID/something like this:
<? $wgExtensionRevisions['OpenID'] = 49664;
Then we'll use externals trick to map this into constant location withing http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/OpenID/ - something like:
svn propset svn:externals 'version http://extensionversioningrepo/trunk/OpenID/' http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/OpenID/
Then $wgExtensionCredits declaration in http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/OpenID/OpenID.se... have something constant like this:
$wgExtensionCredits['other'][] = array( 'name' => 'OpenID', 'version' => '1.8.4.rev'.$wgExtensionRevisions['OpenID'], ... );
This way every svn checkout and svn update will have extension version checked out from extensionversioningrepo
Alternative, more simple approach to this is to just store versions directly in repository as http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/OpenID/version.p... post-commit hook, but it'll double the revision number in main repository - it still can be done using a bot, in this case it'll only add one revision per run checking all updated versions in.
Hope this can be a solution.
Sergey
On Wed, Apr 22, 2009 at 12:14 PM, Brion Vibber brion@wikimedia.org wrote:
On 4/22/09 5:54 AM, Chad wrote:
Not sure it's worth it :-\ What's wrong with just giving version numbers that make sense, rather than relying on the revision number which isn't indicative of anything?
It's indicative of the running version of the code, as long as it also tells you which branch to pull from. :) And of course as long as it's a relevant number like the revision of the extension directory...
-- brion
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l