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_st…
[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=201…
James.
--
James D. Forrester
Product Manager for Visual Editor and Flagged Revisions
Wikimedia Foundation, Inc.
jforrester(a)wikimedia.org | @jdforrester | +1 415-839-6885 x6844