Hello,
I am the Wikimedia Foundation's Product Manager for the VisualEditor[0] project (and others).
I am conscious that the VisualEditor will be a major change that is coming down the tracks, and that I need to do more to make sure that all our communities (through you) know what is happening (and make sure they have as much opportunity to tell us when we're wrong, as well as help guide the priorities for development and improvement).
Right now (and for the past few months), both the core of MediaWiki and all the extensions on Wikimedia's cluster are updated on the live site every fortnight in a new branch. Though VisualEditor is currently only deployed to mediawiki.org[1], in time (when it's ready) we'll be making it available on all other Wikimedia wikis. I have started to write up the technical "changelog" as a status update, giving some (hopefully ;-)) more useful, human-readable "release notes".
I thought it might be useful to copy them below, both for the VisualEditor tool and the new Parsoid service that is separate but vital for VisualEditor to work.
However, I am worried that posting these here every two weeks might be a bit spammy, so I'd love feedback not just on the content (for which the best venue is the central feedback page[2]) but also as to whether you would value me doing this every fortnight (or perhaps less regularly?), or if there are better, or additional fora that might be suited to getting this information for users on the Wikimedia projects.
VisualEditor[3]
The VisualEditor was updated as part of the wider on Monday 20 August MediaWiki 1.20wmf10 branch deployment[4].
The most visible new item in the two weeks since 1.20wmf9 is the much-improved link inspector. This now guides users to create a link to a suggested existing article, a redlink or an external link, and replaces the previous basic functionality that did not suggest links or inform you if the target of your link existed. We have also improved the save dialogue, streamlining the interaction based on feedback from the design team.
There have also been a number of bug fixes, such as preserving spaces before and after the content in headings and other forms (so that "<nowiki>== Foo ==</nowiki>" doesn't have spacing either side of it in the editor display, but doesn't strip them either -- bug 37935 [5]), using browsers' native deletion mechanisms which helps with support for short-cuts and internationalisation (bug 38461 [6]), and handling of "alien nodes" (pieces of content that the editor does not know how to edit yet) so that they do not break the rest of the editor when included. However, most of the changes have been improvements to the code architecture to allow it to be re-used and extended to support new 'node types' like categories or tables when we work on these later.
A complete list of individual code commits is available in the 1.20/wmf10 changelog[7], and all Bugzilla bugs closed in this period on Bugzilla's list[8].
Parsoid[9]
The Parsoid team[A] worked on the final tasks in the JavaScript prototype, in preparation for the C++ port. The port will allow an efficient integration with PHP and Lua, improve performance and allow the parallelization of the parser in the longer term in preparation for production use.
An important milestone we reached is the implementation and verification of the template DOM range encapsulation algorithm, which now identifies all template-affected parts of the DOM for round-tripping and protection in the VisualEditor[0]. We are currently implementing template round-tripping based on this. Other new features include oldid support so that previous versions of pages can be edited, rather than just the current one, and more complete error reporting in the web service. Wikitext escaping in the serializer is much improved, and now also handles interactions across multiple DOM nodes. An ongoing task has been improving test coverage to enable us to refactor code with more confidence and also help test the correctness of the C++ port.
Most details of the C++ port were researched. A basic build system including the selected libraries was set up, and design work on the basic data structures has started, ahead of full porting which we expect to start next iteration.
The full list of Parsoid bugs closed in the last two weeks is available in Bugzilla[B].
Hope this is helpful! As I said, feedback gratefully received.
[0] - https://mediawiki.org/wiki/VisualEditor [1] - https://mediawiki.org/wiki/VisualEditor:Welcome [2] - https://mediawiki.org/wiki/VisualEditor/Feedback [3] - https://mediawiki.org/wiki/VisualEditor/status#2012-08-20_.28MW_1.20wmf10.29 [4] - https://mediawiki.org/wiki/MediaWiki_1.20/wmf10 [5] - https://bugzilla.wikimedia.org/show_bug.cgi?id=37935 [6] - https://bugzilla.wikimedia.org/show_bug.cgi?id=38461 [7] - https://mediawiki.org/wiki/MediaWiki_1.20/wmf10#VisualEditor [8] - https://bugzilla.wikimedia.org/buglist.cgi?query_format=advanced&bug_sta... [9] - https://mediawiki.org/wiki/Parsoid/status#2012-08-20_.28MW_1.20wmf10.29 [A] - https://mediawiki.org/wiki/Parsoid [B] - https://bugzilla.wikimedia.org/buglist.cgi?list_id=140016&chfieldto=2012...
James.