VisualEditor/changelog/Archive/MediaWiki 1.21

2012-10-01 (MW 1.21wmf1)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf1 branch deployment on Monday 1 October.

The team have spent most of the two weeks since 1.20wmf12 working on re-designing how the code integrates together, providing clean interfaces between them so new developers can re-use and extend VisualEditor to support new 'node types' like categories or tables when we work on these later.

Beyond this API work, we added a few updates. Firstly, you can now set the 'annotation' where the caret is, without a selection &mdash; i.e., you can click somewhere, type Ctrl+B (or press the 'Bold' icon) and start typing with the text appearing bold (33140). We also now switch around the order of the undo and redo buttons for right-to-left languages (38548). Finally, we fixed a bug where applying a link to some text would remove any other 'annotations' (such as bold or italics) already set on it (40337).

A complete list of individual code commits is available in the 1.21/wmf1 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2012-10-15 (MW 1.21wmf2)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf2 branch deployment on Monday 15 October.

In the two weeks since 1.21wmf1, the team have again spent most of their time working on re-designing how the code integrates together, providing clean interfaces between them so new developers can re-use and extend VisualEditor to support new 'node types' like categories or tables when we work on these later.

Beyond the API work, we have entirely re-written the selection system (33058, 34095, 37814, 37833, 37834, 38000, 39465, and 39965), part of which included us adding IME support back in to the VisualEditor (33076). We also fixed some bugs including selections not being restored correctly on undo/redo (40538), backspace not always deleting the right character (40416), pre-annotations (40677), and fixing a JavaScript error when using Internet Explorer 10 (37851).

A complete list of individual code commits is available in the 1.21/wmf2 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2012-10-29 (MW 1.21wmf3)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf3 branch deployment on Monday 29 October.

In the two weeks since 1.21wmf2, the team have continued to devote most of their time working on re-designing how the code integrates together and providing clean interfaces between them so new developers can re-use and extend VisualEditor in the future.

Beyond the API work, we have worked to fix a number of serious bugs in the new code from the last release such as not being able to enter text in blank paragraphs in Firefox 41120, as well as copy-and-paste (41055) and cutting (41092) both breaking, a JavaScript error being caused when editing a blank page (37843), and not being able to change the formatting on two lists at once (41434).

A complete list of individual code commits is available in the 1.21/wmf3 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2012-11-12 (MW 1.21wmf4)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf4 branch deployment on Monday 12 November.

In two weeks since 1.21wmf3, the team have spent their time mostly working on finalising the code in preparation for its deployment in December as a test for users. One of the major changes to the integration code is how the VisualEditor can be used; it now can work on other pages than just those in the VisualEditor: namespace. (This is configurable on a per-wiki basis, rather than defined in the code itself.) Amongst other things, this now means that editing the wikitext of VisualEditor: namespace pages can be done by anyone, and is no longer restricted to just sysops (as will be needed for the December deployment). The related bugs surrounding permission checks, filter checks, conflicts, etc. remain, and will be fixed in the next release.

Part of the preparations involved entirely re-writing the user interface code including the way in which commands operate (40896). Another aspect was the addition of "Change Markers" to the data sent to the Parsoid system to reduce any accidental changes that should not happen when users save. Finally, a bug with how the "save page" button worked on old revisions was fixed (41865).

A complete list of individual code commits is available in the 1.21/wmf4 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2012-11-26 (MW 1.21wmf5)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf5 branch deployment on Monday 26 November.

In two weeks since 1.21wmf4, the team have spent their time mostly working on finalising the code and preparing for its deployment in December as a test for users.

A lot of work went into the 'Data Model' component that converts between the information that Parsoid gives us and a structure that the code can edit. This now supports HTML entities (so "&amp;ocirc;", "&amp;#xf4;", and "ô" do not get switched when users don't expect it - 42118), HTML comments (so they don't get accidentally removed - 42124; viewing and editing them is not yet supported), better handling for content that we don't yet recognise (42119), fixing a bug with our integration with Parsoid (42121), and supporting in production the "Change Markers" code that was worked on last iteration (41947).

In the integration work, we removed the "Feedback" link as this would not work well with the code being deployed to multiple wikis (41722) and unfortunately had to add Internet Explorer temporarily to the "blacklist" of browsers that the VisualEditor will not support for December, due to a number of critical issues that the team does not have time to fix (42335) - post-December, the team will work to find a way around the various bugs and inconsistencies in Internet Explorer.

We fixed bugs on handling "alien nodes" (items of content that we don't have a specific handler for yet, like templates), such as the floated alien-covering "phantoms" for selection purposes appearing wrongly in Firefox (42177) and them not appearing at all for items that floated due to a class in Chrome 42134). There was also some nasty bugs that we fixed, including when editing around inline (mid-paragraph) alien nodes (42212) and the data model and the display getting out of sync sometimes when cutting-and-pasting (42219).

Finally, a great deal of work was done to overhaul the link inspector's code and quash a large number of minor bugs with it, such as wrongly replacing links's spaces with underscores (42140).

A complete list of individual code commits is available in the 1.21/wmf5 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2012-12-10 (MW 1.21wmf6)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf6 branch deployment on Monday 10 December.

In the two weeks since 1.21wmf5, the team have spent their time finalising the code and preparing for its test deployment tomorrow for editors to use and give us feedback.

A lot of changes were made to how the VisualEditor integrates with MediaWiki. These included having a separate VisualEditor tab rather than replacing the existing edit tab (42221 and 41159), integrating into the existing edit controls so that protection, global blocks, AbuseFilter etc. work (37844, 38268 and 42142) and the user is sent somewhere when there's an edit conflict (37828), adding a 'cancel' button from editing mode back into read mode (37845), fixing watch and minor edit functions in the save dialog so they work as expected (38034, 40774, 42136, 42137, and 42764), custom save buttons for old revisions and new pages (41865 and 42750), adding page notices into the workflow so it's clear when you're editing a page with some form of protection, or which has special issues (42220), and tagging all edits made with the VisualEditor so that they can be identified (42172).

The user interface inside the editor, and in particular the link inspector, had a number of changes, including preventing undetectable links over whitespace (42839), avoiding two highlights for the same suggestion (42665), highlighting suggestions on mouse hover (39977), instant response from the link suggestions box (42341), allowing link "pre-annotations" when nothing is selected (33141), buttons not responding to clicks when disabled (40976), and a bug when switching between links (42552).

We fixed a number of bugs and minor annoyances with the core editing surface module, including deleting failing on blank lines (42657 and 42655), on documents that had been blanked (41071), around 'alienated' content (42350), in Firefox with empty paragraphs (41223) and select-all replacements (42404), selection getting removed every few moments (42801) and breaking going backwards (42401), with errors being wrongly-thrown (39255, 41501, and 41504).

Finally, a series of changes were made to the 'Data Model' component that converts between the information that Parsoid gives us and a structure that the code can edit. These include allowing paragraphs inside spans (and other invalid HTML sequences - 42487), fixing the way that unlisting buttons work (41929), correcting the data model when "unbalanced" content is copied (42806) or when you delete alienated content (42707), the leading newline of  elements (42469), and annotating inline aliens (like HTML entities - 42340).

A complete list of individual code commits is available in the 1.21/wmf6 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2013-01-02 (MW 1.21wmf7)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf7 branch deployment on Wednesday 2 January.

In the three-and-a-half weeks since 1.21wmf7, the team have mostly been on leave, and otherwise making some progress on cleaning up the codebase and fixing a number of bugs and issues highlighted by the community since the code was deployed more widely in December.

These bugs included no longer marking all edits as minor and adding the page to the user's watchlist regardless of setting (43040); ensuring that "phantoms" appearing correctly over the top of complicated template contents (43098); not showing that there is an edit notice when it is present but displays nothing to the user, as used on the English Wikipedia (43013); making sure that media items are loaded in a protocol-insensitive manner (43015); fixing the wikitext-corruption system to work for pages with '/'s in them (42988); and avoiding the undo/redo functions causing an error if used first before anything else is done (43033).

A complete list of individual code commits is available in the 1.21/wmf7 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2013-01-16 (MW 1.21wmf8)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf8 branch deployment on Wednesday 16 January.

In the two weeks since 1.21wmf7, the team have started the planning for the next segment of work in line with the strategic goals for the VisualEditor set out in the 2012/13 plan. A small number of changes have made it into the codebase for this release, mostly focussed on fixing bugs reported by the community and preparing for future developments.

Firstly, there was a large refactoring of the link inspector code so that it is now easier to extend, which amongst other things means that it will now not over-write other formatting on text like bold or italics (43841) and links now have a target exposed, so editors can where the link goes in their browser without needing to edit the link (37904). The way that the code is integrated now does not take over edit section links, which had been mistakenly left switched on (43036). There were some changes to how "alien" nodes were assigned, fixing a few irregularities in how they worked (42398, 43056, and 43076).

A complete list of individual code commits is available in the 1.21/wmf8 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2013-02-04 (MW 1.21wmf9)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf9 branch deployment on Monday 4 February.

In the two-and-a-half weeks since 1.21wmf8, the team have continued planning for the next tranche of work, and working on the core changes that will be needed in preparation for this. For the end of 2012/13, in line with the strategic goals for the VisualEditor set out in the 2012/13 plan, we are looking to provide VE as the 'default' editor for all users, capable of letting them edit the majority of content without needing to use the wikitext editor. This means adding support for at least basic templates, references, categories and images, each of which is a very large piece of work.

The initial focus has included a major expansion in the capabilities of the 'document model' module that converts between the HTML+RDFa rendered by Parsoid and an editable document. Other areas of work have covered editability of images in the "ContentEditable" editing surface, refactoring the keyboard short-cut command triggering system, and improving the documentation system used so that the code is easier to extend.

A small number of changes have made it into the codebase for this release, most notably adding support for Microsoft Internet Explorer v. 9 and above (42847), adding hints of what keyboard short-cuts are available to each button (42919), which can now vary more easily by platform (44012), and internationalisation support for toolbar icons (38551).

A complete list of individual code commits is available in the 1.21/wmf9 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2013-02-18 (MW 1.21wmf10)
The VisualEditor was updated as part of the wider MediaWiki 1.21wmf10 branch deployment on Monday 18 February. During this time, the team has expanded with the recruitment of Ed Sanders who will focus on the data infrastructure of the VisualEditor platform.

In the two weeks since 1.21wmf9, the team have worked on the infrastructure needed to support the new features being added for wider launch of the VisualEditor as the default way users will edit wikis. This infrastructure work has included further expansion in the capabilities of the 'document model' module that converts between the HTML+RDFa rendered by Parsoid and an editable document, such as adding the ability in the system to edit "meta-data" like categories (45029); note that the user-facing editing component for this is yet to come. Other work has included supporting Microsoft Internet Explorer, adding new user interface widgets for a consistent UI, and reviewing and expanding the design of the user experience for inspectors and editors to cover template and reference editing.

Alongside this work, the team have fixed a number of bugs. These include integration improvements so that the toolbar doesn't appear multiple times if a user clicks back and forth (44838), errors thrown when users click at the end of a document (41199) or when using the link inspector in the stand-alone VE environment (44686), and making sure that inserted links get the link applied correctly (44086).

A complete list of individual code commits is available in the 1.21/wmf10 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2013-03-04 (MW 1.21wmf11)
VisualEditor was updated as part of the wider MediaWiki 1.21wmf11 branch deployment on Monday 4 March.

In the two weeks since 1.21wmf10, the team have worked on the new features being added for wider launch of VisualEditor as the default way users will edit wikis. Part of this work has been some of the last infrastructure changes expanding the capabilities of the 'document model' module, including landing the last of the major re-write there (45062). This has also covered letting the converter work with full HTML documents rather than just fragments and be more robust, significant fixes to bugs around list items being merged and un-merged wrongly, better support for 'meta' nodes, fixed handling of text that in normal MediaWiki would be auto-linked (37940), and better documentation (45264 amongst others). The user interface through a major refactor and refresh now has access to a much more consistent set of 'widgets' for the main interface and for items like the link inspector as well as the to-come category, template and references dialogs which are being designed.

The 'content editable' module has improved keyboard support, fixed the ability to add new items in a list (due to an unfortunate typo) and add new lines in pre-formatted blocks using Shift-Enter (45344), added some changes to improve issues with selection of content in the browser (especially "backwards" selection), will now hide the 'phantom' overlays for non-editable content blocks if the mouse leaves the page (43461). Additionally, the dependency on a key library called 'rangy' was refactored, and the broken copy-and-paste support between VisualEditor instances was removed, in anticipation of better copy-and-paste to work with non-VisualEditor surfaces as well.

A complete list of individual code commits is available in the 1.21/wmf11 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.

2013-03-18 (MW 1.21wmf12)
VisualEditor was updated as part of the wider MediaWiki 1.21wmf12 branch deployment on Monday 18 March. In the two weeks since 1.21wmf11, the team have worked on building infrastructure for the new features that we are adding for VisualEditor's wider launch as the default way users will edit wikis.

In the way that the code integrates with MediaWiki, the save button now will be disabled if a user makes changes and then undoes all of them (42939). When an error happens with the Parsoid server, those errors are split out so that the user can report what broke in a way that we can trouble-shoot their issue (44354). When the Parsoid server is not responding, the code supplies a better error message for users (45916).

When selections are auto-expanded to the current context (when a user double-clicks on a word), we now better cover the concept of a 'word boundary', working towards Unicode's definition (44085). Lists now don't get corrupted for Parsoid when "unlist"ing their contents, removing their 'generated' property (45590).

Leaving the link inspector no longer clears a link accidentally (46025). The document model layer now presents categories (and other kinds of meta-content, like language links) for editing to other parts of the code base ahead of supporting user editing of categories in VisualEditor (39597), which is one of the four major features planned before wider launch.

A complete list of individual code commits is available in the 1.21/wmf12 changelog, and all Bugzilla bugs closed in this period on Bugzilla's list.