Extension:Scribunto/Deployment priorities

From MediaWiki.org
< Extension:Scribunto
Jump to: navigation, search

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.

Can have [edit]

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.

date wmflabs test2 Mediawiki wikipedia wikisource
voir   ➤ wmflabs test2 Mediawiki Scribunto en:wikipedia fr:wikisource
2013-02-04 4c69b13 MediaWiki 1.21/wmf9 4c69b13
2013-01-17 af0f192 MediaWiki 1.21/wmf8 af0f192
2013-01-03 9a5dc93 MediaWiki 1.21/wmf7 9a5dc93
version not displayed
because the bug 36271
without Scribunto without Scribunto
2012-12-11 bbd155c MediaWiki 1.21/wmf6 bbd155c
2012-11-28 54aef84 MediaWiki 1.21/wmf5 54aef84
2012-11-12 c2aa4c7 MediaWiki 1.21/wmf4 c2aa4c7
2012-10-31 396bf79 MediaWiki 1.21/wmf3 396bf79
2012-10-17 MediaWiki 1.21/wmf2 e7dd3e5
2012-10-15 e7dd3e5 MediaWiki 1.21/wmf1
2012-10-07 MediaWiki 1.21/wmf1 303b8c0
2012-10-01 MediaWiki 1.21/wmf1 without Scribunto
2012-10-02 303b8c0 MediaWiki 1.20/wmf12 303b8c0
2012-09-26 27428ca MediaWiki 1.20/wmf12 27428ca
2012-09-17 a2d18c9 MediaWiki 1.20/wmf12 a2d18c9
2012-09-12 MediaWiki 1.20/wmf11 aea0553
2012-09-05 aea0553 MediaWiki 1.20/wmf11
2012-08-27 MediaWiki 1.20/wmf10 ea1347a
2012-05-31 5f5b09e
2012-05-11 first deployment

See also [edit]