mw.loader: Make 'mwLoadEnd' less expensive with a single using()
authorTimo Tijhof <krinklemail@gmail.com>
Fri, 26 Aug 2016 04:51:01 +0000 (21:51 -0700)
committerTimo Tijhof <krinklemail@gmail.com>
Wed, 31 Aug 2016 00:39:06 +0000 (17:39 -0700)
commit2bdd56e89334d85c48753b0052b0a94689dd584b
treec958e04241babb335fdb77552de80ae04d976c6f
parentfa9695e8bf9bd12a01921d2b09ab84b6d0efe365
mw.loader: Make 'mwLoadEnd' less expensive with a single using()

20-30ms before this patch, ~2ms after this patch (MacBookPro, Chrome 52).

The creation of 100s of Deferred objects, $.when() tracking them
all, and bubbling up the completion took 20-30ms. This is quite
expensive. Optimise by using a single deferred first.
A module reaching state 'missing' or 'error' is very rare.

Change-Id: I90eea4bfe8fe6d85c395d9d0868bbde482c4a703
resources/src/mediawiki/mediawiki.js