Separating skins from core MediaWiki/Progress

I'm going to try keeping some kind of a progress log for the Separating skins from core MediaWiki project here.

Community bonding period
I was already an active community member, so I focused on getting a hang on the skinning landscape (existing skins and their creators).

My goals for the first half of the internship are still the same as in the original proposal: defining the recommended way of structuring skins, improving their installation process and allowing third-party skins the same degree of freedoms core skins have.

As outlined in my proposal, I am using the wikitech-l mailing list for important discussions and major milestones, and IRC for day-to-day communication.

2014-05-20

 * Asked "What should be the recommended / supported way to do skins? (A proposal.)" on wikitech-l: http://lists.wikimedia.org/pipermail/wikitech-l/2014-May/076591.html
 * Commented on pending changes aiming to move some skins out of core

2014-05-22

 * Reviewed changes to core and VectorBeta extension that aim to solve an incompatibility for custom skins using LESS stylesheets

2014-05-24

 * Replied to the discussion with a summary and some action items. http://lists.wikimedia.org/pipermail/wikitech-l/2014-May/076671.html (life interfered with my plans to do this earlier)

2014-05-25

 * Cleaned up the category tree of Category:Skinning a bit, fixing skin documentation pages and renaming several categories
 * Started the work on deprecating skin autodiscovery, tracked on.

2014-05-26

 * Complete list of patches about skin autodiscovery, finished today:
 * https://gerrit.wikimedia.org/r/#/c/135383/ (master) "Don't use autodiscovery for core skins"
 * https://gerrit.wikimedia.org/r/#/c/135384/ (master) "Move core skins to separate directories" See https://gerrit.wikimedia.org/r/#/c/135383/
 * https://gerrit.wikimedia.org/r/#/c/135429/ (master) "Officially deprecate skin autodiscovery"
 * https://gerrit.wikimedia.org/r/#/c/135427/ (REL1_23) "Officially deprecate skin autodiscovery"
 * https://gerrit.wikimedia.org/r/#/c/135439/ (master, on hold) "Completely remove skin autodiscovery"

2014-05-27

 * https://gerrit.wikimedia.org/r/#/c/118345/ "Move Modern and CologneBlue out of core" and related patches were merged by Chad. I was planning to do this in the second half of the project, but it might as well be done now.

2014-05-28

 * Fixed some minor issues with the merged patches related to the above, got poked myself and poked Chad about getting it deployed on Wikimedia wikis (tracked on ).

2014-05-29

 * Modern and CologneBlue moved out of core and deployed on testwiki: everything seems to work. As I was not planning to spend time on this right now, it might delay my schedule a little, but in the worst case I'll be able to regain the lost time in the second half of the project (which has just been partially done thanks to Chad's help).
 * "Officially deprecate skin autodiscovery" merged into REL1_23.

2014-05-31

 * Worked on deprecating old functionality: reviewed, updated and merged https://gerrit.wikimedia.org/r/#/c/63364/, submitted https://gerrit.wikimedia.org/r/#/c/136531/ and related patches to existing skins (Modern, CologneBlue, Nostalgia).
 * Cleaned up and updated Manual:Skinning in preparation for expanding it.

2014-06-01

 * Commented on things a lot.

2014-06-02

 * Wrote initial version of Manual:Skin autodiscovery and added release notes at MediaWiki 1.23.

2014-06-03

 * Gotten https://gerrit.wikimedia.org/r/#/c/135408/ merged, which blocked separating MonoBook from core.
 * Further Manual:Skin autodiscovery work.
 * Submitted patches for converting Nostalgia into a proper skin. https://bugzilla.wikimedia.org/show_bug.cgi?id=61256#c5

2014-06-04

 * Updated the status of deliverables on the project page.
 * Manual:Skin autodiscovery should be complete and usable now.

2014-06-09

 * Nothing done because I was fixing Vector bugs.

2014-06-10

 * Skin autodiscovery deprecation patches were merged, and then one was reverted again because of WMF CI issues.
 * Added support for enabling skins in MediaWiki installer, pending review: https://gerrit.wikimedia.org/r/138652

2014-06-11

 * Wrote tentative patches to separate Vector and MonoBook skins from core: https://gerrit.wikimedia.org/r/#/c/135413/ https://gerrit.wikimedia.org/r/#/c/138795/. Hopefully these can be finalized soon and the skin directory layout can be documented.

2014-06-15

 * Skin autodiscovery is deprecated in master again.

2014-06-20

 * Rebased several patches that became outdated.
 * Took part in a meeting where I responded to questions about what I'm doing and discussed about the replacement for : Architecture meetings/RFC review 2014-06-20.
 * Nostalgia skin patches from have been merged.
 * The patch to separate Vector from core (https://gerrit.wikimedia.org/r/#/c/135413/) has been merged, the one for MonoBook is on the way.

2014-06-21

 * MonoBook patch (https://gerrit.wikimedia.org/r/#/c/138795/) has been merged as well.
 * Submitted several patches to improve information shown on Special:Version for all the skins that have been split from core recently.

2014-06-23

 * Submitted a patch to allow skins to define  for arbitrary modules after discussing the approach with ResourceLoader developers. https://gerrit.wikimedia.org/r/#/c/141259/

2014-06-26

 * Worked with Nikerabbit and Reedy to fix an issue with translations for the Vector skin not being loaded. After the skin with its localisation messages was split, the translations did not follow due to a combination of bugs and mistakes. https://gerrit.wikimedia.org/r/#/c/141303/ https://gerrit.wikimedia.org/r/#/c/142270/ https://gerrit.wikimedia.org/r/#/c/142271/ https://gerrit.wikimedia.org/r/#/c/142273/
 * Follow-up for Vector splitting to fix i18n conflict with Vector extension: https://gerrit.wikimedia.org/r/#/c/142277/
 * Patch to separate skins and extensions on Special:Version merged. https://gerrit.wikimedia.org/r/136615

2014-06-29

 * Follow-up to the Vector i18n follow-up: https://gerrit.wikimedia.org/r/#/c/142968/

2014-07-01

 * FIxing an issue with the temporary skin requires in Setup.php. https://gerrit.wikimedia.org/r/143302

2014-07-02

 * Completed and tested the installer patch https://gerrit.wikimedia.org/r/#/c/138652/, discovering and fixing two pre-existing bugs https://gerrit.wikimedia.org/r/#/c/143702/ https://gerrit.wikimedia.org/r/#/c/143703/.

2014-07-03

 * Updated information about skin structure on Manual:Skinning, hopefully for the last time.
 * Updated the same page about new localisation messages format introduced in MediaWiki 1.23.

2014-07-07

 * Responded to code review.
 * Updated Manual:Skinning's information about ResourceLoader modules.
 * Updated project page with thus newly (finally!) completed documentation items.

2014-07-09

 * Finished Nostalgia cleanup.

2014-07-12

 * Responded to code review.
 * Finished updating Manual:Skinning.
 * Summarized the earlier skin standard discussion: http://lists.wikimedia.org/pipermail/wikitech-l/2014-July/077567.html
 * Submitted a patch to change MediaWiki to accept skin identifiers in any letter case https://gerrit.wikimedia.org/r/#/c/145874/.

2014-07-15

 * Responded to code review.
 * Reviewed and submitted some changes cleaning up references to Vector in mediawiki.ui.

2014-07-18

 * Completed the example skin.
 * Updated the skinning guide in some places that didn't work well in practice.

2014-07-20

 * More tweaks to the example skin.
 * Submitted https://gerrit.wikimedia.org/r/147901 to fix a tiny regression I caused when separating Vector skin from core earlier.

2014-07-21

 * "Support for enabling skins in the installer" https://gerrit.wikimedia.org/r/138652 merged.
 * Did some updates on Bugzilla.
 * Finished, published and publicized the example skin (https://gerrit.wikimedia.org/r/#/c/147690/). See Skin:Example and http://lists.wikimedia.org/pipermail/wikitech-l/2014-July/077727.html.
 * Submitted https://gerrit.wikimedia.org/r/148139 "mediawiki.page.watch.ajax: Remove #bodyContent, #content restriction on the link", the current way is incompatible with third-party skins.
 * Submitted more changes dependent on the (pending) skinStyles replacement https://gerrit.wikimedia.org/r/148304 https://gerrit.wikimedia.org/r/148305.

2014-07-22

 * Implemented the fallback skin with help messages https://gerrit.wikimedia.org/r/148508 and a method of using it https://gerrit.wikimedia.org/r/148424.
 * Submitted several other minor patches.
 * Updated the bug tree of, filing some sub-bugs to work on in near future.
 * Started preparations towards splitting off Vector and MonoBook from core. The patch https://gerrit.wikimedia.org/r/148509 currently still causes test failures.

2014-07-23

 * Submitted a ton of fixes for tests which would fail when the default skin was changed.
 * Submitted a minor tweak to Minerva skin.

2014-07-26

 * Merged https://gerrit.wikimedia.org/r/148846 instead of my own https://gerrit.wikimedia.org/r/#/c/148766 to fix one of the test issues.

2014-07-27

 * Responded to code review.
 * Submitted https://gerrit.wikimedia.org/r/149779 to fix one more issue with not having any usable skins.
 * Submitted https://gerrit.wikimedia.org/r/149780 for MobileFrontend to move some of Minerva skin's styling from core hacks to there.
 * Rebased dependencies for splitting off Vector and MonoBook (https://gerrit.wikimedia.org/r/#/c/148509/2).
 * Abandoned https://gerrit.wikimedia.org/r/148766 in favor of a different approach.

2014-07-28

 * $wgResourceModuleSkinStyles patch and some friends were merged.

2014-07-30

 * Created Manual:$wgResourceModuleSkinStyles and emailed wikitech-l about the new functionality being available: http://lists.wikimedia.org/pipermail/wikitech-l/2014-July/077878.html.
 * Submitted a patch to fully migrate Minerva skin to $wgResourceModuleSkinStyles: https://gerrit.wikimedia.org/r/#/c/150580/