Last modified: 2014-02-12 13:17:21 UTC
Using mw.message.newRawMessage allows performing several actions that are otherwise disabled because they break things, such as checking if a page exists without incrementing the expensive function count or adding a pagelink (see https://en.wikipedia.org/wiki/Wikipedia_talk:Lua#Ifexist_alternative for more), and for getting Wikidata properties of pages other than the current one, which also won't be updated properly (see https://en.wikipedia.org/wiki/Wikipedia_talk:Lua#.22Hacking.22_into_Wikidata_to_get_properties_of_miscellaneous_articles for more). Is there some way that newRawMessage could be tweaked to either not allow this type of thing at all, or to make it happen properly?
The problem is that it's not happening in Scribunto, it's the underlying Message classes that are doing this. The ideal thing to do might be to remove mw.message:parse, mw.message:parseAsBlock, mw.message:text, and mw.message:escaped. mw.message:plain would continue to be available; this is the equivalent of the {{int:}} magic word.
Also note it's not just RawMessage, someone with editinterface could put the same problematic things in the MediaWiki namespace and use it that way.
Change 110983 had a related patch set uploaded by Jackmcbarn: Remove message formats other than plain https://gerrit.wikimedia.org/r/110983
Change 110983 merged by jenkins-bot: Remove message formats other than plain https://gerrit.wikimedia.org/r/110983
The change will be deployed to WMF wikis with 1.23wmf14, see https://www.mediawiki.org/wiki/MediaWiki_1.23/Roadmap for the schedule.