On Thu, Feb 20, 2014 at 1:20 PM, Sumana Harihareswara <sumanah(a)wikimedia.org
Reuben Smith of wikiHow asked:
"We're having a hard time figuring out whether we should be basing our
wikiHow code off Mediawiki's external releases (such as the latest 1.22.2),
or off the branches that WMF uses for their internal infrastructure (latest
looks to be wmf/1.23wmf14).
Do you have any thoughts of guidance on that? We're leaning towards moving
to using the WMF internal branches, since we use MySQL as well, but I
wanted to hear from different people about the drawbacks."
Greg Grossmeier responded:
"The quick answer is:
Feel free to base it off of either. There shouldn't be any WMF-specific
things in those wmfXX branches. If there is, it is a commit called
something like "Commit of various WMF live hacks". That one commit can
be safely reverted.
The wmfXX branches are made every week on Thursday morning (Pacific)
before we deploy. As we get closer to the next release (1.23) the
MediaWiki Release Managers (our outside contractors, Mark and Markus,
not myself) will pick a wmfXX to call a Release Candidate.
Going with a 1.22.x would give you stability at the loss of getting
fixes faster and it means a bigger upgrade task when 1.23 is out.
Summary: If you want to keep closer to WMF, pick a wmfXX branch (this
assumes you'll follow at some pace behind WMF). If you don't want to be
that bleeding edge, stick with 1.22.x.
Note that unless you're willing to keep up to date with WMF's relatively
fast pace of branching, you're going to miss security updates. No matter
what, if you use git you're going to get security updates slower, since
they are released into the tarballs first, then merged into master, then
branches (is this accurate?). Sometimes the current WMF branch won't even
get the security updates since they are already merged locally onto
Wikimedia's deployment server.
That said, due to the poor state of extension management in MediaWiki, the
only reasonable way to manage MediaWiki is to use the WMF branches since
they handle dependencies for the most popular extensions. I was hoping that
composer would make managing extensions easier, but I've been tracking it
in SMW and it's actually making things more difficult.