Extension:Scribunto/Deployment priorities
From MediaWiki.org
This list is completely unofficial, but it reflects my current thoughts about what the priorities are prior to widespread deployment of Scribunto/Lua to Wikimedia wikis.
Contents |
Must have [edit]
- Support for Lua in mwlib (Collection extension)
- (bugzilla:39610) Scribunto should support global module invocations
Should have [edit]
- (bugzilla:39605) Auto-categorize Scribunto module pages that contain errors
- (bugzilla:39606) Auto-categorize pages containing script errors from Scribunto module invocations
- (bugzilla:39646) Scribunto needs sane Unicode string support
- Can use a pure-Lua UTF-8 decoder, like the one in require('luabit/utf8.lua')
- os.date() with support for at least "!*t" and "*t" formats; and os.time()
- 280 thousand pages on the English Wikipedia use its w:en:Template:Birth date and age template, and they all expect to be able to obtain the current date in a broken down form so that they can do calendar arithmetic.
- Other templates also use the current date and time. See w:en:Template:Indian population clock for example.
- A Lua program should be able to obtain everything that non-Scribunto templates can obtain through {{CURRENTYEAR}}, {{CURRENTMONTH}}, {{CURRENTMONTHNAME}}, {{CURRENTMONTHNAMEGEN}}, {{CURRENTMONTHABBREV}}, {{CURRENTDAY}}, {{CURRENTDAY2}}, {{CURRENTDOW}}, {{CURRENTDAYNAME}}, {{CURRENTTIME}}, {{CURRENTHOUR}}, and {{CURRENTWEEK}}.
- mw.page.title.name
- Lots of English Wikipedia templates have default title to name of current page semantics.
- mw.page.title.namespaceName and mw.page.title.namespace
- Lots of English Wikipedia maintenance templates effectively do the {{#switch:{{NAMESPACENUMBER}}}} trick.
- mw.text.escape(), mw.url.encode(), mw.url.encodeAnchor()
- Of course, these can be done in Lua. But these encoders are used frequently. The English Wikipedia's citation templates need to URL encode COinS data, for example. A C implementation would be faster than a Lua one.
- mw.text.tag()
- Same as the encoders above. This is used a lot.
- mw.url.local() and mw.url.full()
- Navigation boxes on the English Wikipedia need these for their "v·d·e" links.
- mw.page.talk and mw.page.subject
- An {{#ifexist:}} equivalent.
- The English Wikipedia uses this in templates as diverse as w:en:Template:infobox country and w:en:Template:article for deletion/dated.
Can have [edit]
- (bugzilla:39609) Limit scope of title-based syntax highlighting
Won't have [edit]
- Speed problems!
Deployment following [edit]
These dates can be later than the true ones, because they are followed by final users.
See also [edit]
- MediaWiki_1.21/Roadmap dates of deployment for each wiki.
- Lua_scripting/statusMonthly summary of the key stages of development.
- bugzilla list of last bugs in Scribunto
- Recent code review of Scribunto
- Extension:Scribunto/Brainstorming

