On 5/11/09 11:54 AM, Marco Schuster wrote: > On Mon, May 11, 2009 at 8:50 PM, Daniel Schwen<[email protected]> wrote: > > >> The simple (albeit ugly) solution would to add a parser version field to >> the >> revision table, drag the old parser along as 'legacy', make the new parser >> the default (and only) option for all new edits, and spit out a warning >> when >> you are editing a legacy revision for the first time. The warning you be >> made >> dependent on the cases that break with the new parser. >> Cases that break could be detected by comparing tidied HTML output from >> both >> parser versions. >> > > > Sounds cool, but it'd require a formalization of MW markup first (something > that should have been done long ago). > What about correcting stuff from "old" behavior to new parser via > bots/update scripts, even for old revisions? > > Marco > > > During the Berlin conference, a very popular and passionate topic of conversation was the need for better testing of MediaWiki. However, if we can't define what it's supposed to do, how can we test it. Last I heard the parser has yet to pass all of the unit-tests written for it, which aren't even very robust. so the concept of the parser's behavior being it's own documentation is clearly conflicting with good software development practices. This said, any changes to the parser cause a risk of breaking old, or even current revisions of articles, which is I've noticed to generally be seen as unacceptable. So - this topic is probably a justifiably touchy one for those involved in working on this software since there's no really elegant solution and lots of complaints.
Seems like there's been some general talk about this idea... * Link a revision to a version of the parser * Allow multiple parser versions to co-exist * Provide an upgrade path for revisions to be brought into compatibility with a more modern parser Nothing about this sounds easy, but if we ever want to improve MW markup or parser behavior we will need to do something. Is there any support / criticism for this direction? I'm very curious what other potential directions could be taken which could also result in: * The parser's behavior being a reflection of a well-documented standard * Ability to make changes to MW markup standards over time without abandoning old revisions - Trevor _______________________________________________ Wikitech-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikitech-l
