mediawiki-extensions-Visual.../modules
Roan Kattouw ccef625a08 Rewrite MetaList.onTransact
The previous implementation couldn't deal with transactions that
replaced both data and metadata at the same time (rather than replacing
data while moving metadata around), and extending its approach to
deal with that case would have made it much more complex.

So I rewrote the algorithm from scratch. The previous implementation
scheduled deferred moves for existing items, but immediately processed
insertions and removals. This is problematic for replacements and
maintaining the order in the binary search list. So instead, this new
implementation builds an array representing what the new item list
should be, then processes insertions, removals and moves in the correct
order to achieve that state.

It looks like the previous implementation didn't always work correctly,
which was masked because the test suite passed full=false to
assertItemsMatchMetadata(). This rewrite fixes this.

Also remove setMove/applyMove from MetaItem, because we don't need them
anymore and they're evil anyway; and add isAttached(), because the new
algorithm needs it.

Change-Id: I899d2b3c94c2cfa55823879bca95456750f64382
2013-09-11 15:29:28 -07:00
..
jquery jquery.client: Update to upstream from 92f06b4a in mediawiki/core.git 2013-07-10 23:23:11 +02:00
jquery.uls Language Inspector UI 2013-07-29 00:38:59 -04:00
oojs oojs: Update to upstream v1.0.2 2013-07-25 17:57:41 +00:00
qunit
rangy
unicodejs Fix typo (was comma instead of semicolon) 2013-08-28 11:51:52 -07:00
ve Rewrite MetaList.onTransact 2013-09-11 15:29:28 -07:00
ve-mw docs: Minor improvements 2013-09-05 23:56:59 +00:00