* Write array literals with one item per line. This makes diffs which add or remove items far easier to interpret, and makes merging such changes feasible. And it looks nicer too.
* Use line breaks to show the logical structure of your code. This enhances readability. Bring similar elements in a list into alignment, in order to reveal the differences between those elements at a glance.
* Removed a fun game of spot-the-difference in AbuseFilterHistoryPager::getQueryInfo(). If I want fun games I'll play UFO:AI.
* Moved some oddly placed assignments (in expressions) to their own statements: such assignments reduce readbility.
* Add searching and filtering functionality to the existing 'test' interface.
* Add an 'examine' interface designed for testing filters against a previous change, selectable through the search interface in either the 'test' or the 'examine' view.
* Minor enabling change in ChangesList core, to allow subclassing.
* Remove one dupe call of addExtensionStyle from SpecialAbuseFilter::execute
* Bump $wgAbuseFilterStyleVersion per CSS changes in r46325
* Add a space between drop down and submit button
* Display result below the field, rather than at the top of the page.
* Clear the result when the field is changed, not after some arbitrary time period.
* Prettify history titles. They're now Special:AbuseFilter/history/<filterid>
* Prettify history *pages*. They now truncate the filters at a few hundred chars, and have links to open the individual history items in the editor, with a big boilerplate at the top and the bottom in case people forget.
* Fix up the log a bit. <li> elements in the 'details' view were invalid XHTML, and very annoying...
* Consolidate details on the last edit.
* Allow specification of a warning message to display instead of the standard warning (was already implemented in code, but there was no UI for it.
* Fix up selecting deleted / disabled filters on Special:AbuseFilter. Instead of weird links, it now has a proper form.
* Fix log entries so they can have wikitext, and add a link to the relevant abuse filter for detailed log entries.
* Reimplement tools, starting with a spiffy AJAX expression tester. Didn't bother implementing as non-AJAX, as it's just an extra.
* Change exchange protocol between native parser and PHP app. Resulted in 2-3-fold performance boost.
* Fix minor bug from last night.
* Introduce a syntax check on-save.
* Introduce filter history (requires DB schema change).
* Deprecate now non-working /tools interface (will come back).