Commit graph

312 commits

Author SHA1 Message Date
Brad Jorsch 3622f82bd1 (bug 47300) Fix sandboxing with require
Two related issues:
* The package module was inheriting the loaders from the outer sandbox,
  so loaded modules were being loaded into the outer sandbox's
  environment.
* mw.loadData was using the outer sandbox's require(), so again loaded
  modules were being loaded into the outer sandbox's environment.

Bug: 47300
Change-Id: I48d8dd4784c9a890e3abb6389f96f38e1420dbbb
2013-04-24 06:19:44 +00:00
Translation updater bot 0faada1ddf Localisation updates from http://translatewiki.net.
Change-Id: Iba12005176fad06d4352f1dfea3b462ab952bc34
2013-04-23 20:11:51 +00:00
jenkins-bot 970a83ae97 Merge "(bug 47262) Magic word localization in Galician." 2013-04-23 11:43:50 +00:00
Dereckson 4c92452d50 (bug 47262) Magic word localization in Galician.
#invoke -> #chamar

Bug: 47262
Change-Id: I738ad78b30193ca9227a932b768a7c62bf76022c
2013-04-23 11:43:21 +00:00
jenkins-bot 24843707df Merge "(bug 47268) lang:parseFormattedNumber should return a number, not a string" 2013-04-22 19:18:13 +00:00
Brad Jorsch 203b3e75dc Don't pass negative years to Language::sprintfDate
Language::sprintfDate cannot handle negative years, so don't pass them.
Return an appropriate error instead.

Change-Id: Ifb633631df98c82aa1c3dc8a555b91f77faf15ed
2013-04-19 17:59:48 -04:00
Brad Jorsch 821ba409d8 (bug 47268) lang:parseFormattedNumber should return a number, not a string
The documentation, and the expectation of users, is that
lang:parseFormattedNumber() should actually return a number, not a
string.

Bug: 47268
Change-Id: Ieabddd0d9192f1fd8ef7e890d5d6268be9636f38
2013-04-15 20:53:47 -04:00
Translation updater bot 2ef8c54041 Localisation updates from http://translatewiki.net.
Change-Id: Iba559e360f82467334df9092c1e42fb0a673399d
2013-04-15 21:02:30 +00:00
Brad Jorsch 581b2306af Remove mw.getLogBuffer and others from public interface
One of the design goals of Scribunto is that each #invoke should be
independent. Creative use of mw.log and mw.getLogBuffer can get around
this, passing information from one #invoke to the next.

This patch takes the simple solution of removing mw.getLogBuffer from
modules' environments. For good measure, it also removes
mw.clearLogBuffer and mw.executeModule.

Some minor cleanup of the console code is also included.

Change-Id: I30d73928bade4a6bdd7c00ffcd58a3858ff55698
2013-04-14 23:59:07 +00:00
jenkins-bot e40d364b36 Merge "(bug 46082) import namespace names translations from Meta" 2013-04-12 20:32:07 +00:00
Translation updater bot 8c25e7e4fc Localisation updates from http://translatewiki.net.
Change-Id: I024fb122b2885fee7900fcd8880b21c50cca0fa6
2013-04-12 18:17:18 +00:00
Translation updater bot 619e607332 Localisation updates from http://translatewiki.net.
Change-Id: I6416985d5d5b92450b3884b31d1aca17f61d65af
2013-04-08 20:04:41 +00:00
MatmaRex 5a2030dd8f (bug 46082) import namespace names translations from Meta
https://meta.wikimedia.org/wiki/Lua_deployments/Localization_of_Module

Four languages (ka, ms, zh, zh-yue) are missing the translation for
Module talk, as there wasn't one on the Meta page.

Full list of newly added languages (including the ones with partial
translations): an, ar, ast, ba, bn, ca, crh, da, dv, es, et, eu, fa,
gl, id, it, ja, ka, ko, min, ms, nn, no, pl, ru, sk, sl, uk, zh,
zh-yue.

Change-Id: I504ce98a2a430aa98f116186051331fbbfcc57d5
2013-04-08 19:10:35 +02:00
Translation updater bot 0678fa01d9 Localisation updates from http://translatewiki.net.
Change-Id: Iae8ba7543660734a5d1e9776935cd43045cf5c76
2013-04-06 19:53:58 +00:00
Translation updater bot 41fc11a483 Localisation updates from http://translatewiki.net.
Change-Id: I963c710c124fc89ccf73d3ad91cf88472f2b8ab6
2013-04-04 20:04:45 +00:00
Translation updater bot 4d186cb231 Localisation updates from http://translatewiki.net.
Change-Id: I18b1f823cc321d92e778e5f35a36b95941ddb99d
2013-04-03 19:50:56 +00:00
raymond a0a53bf110 Add namespace translation for 'cy'
Requested by Lloffiwr
https://translatewiki.net/wiki/Thread:Support/Module_namespace_for_cy_wikis

Change-Id: I90a11fa7e4cdf8cb59742b9f61a66827c45c5a56
2013-04-03 09:15:51 +02:00
Brad Jorsch ca3b0b55b2 Add timezone support to mw.lang:formatDate
This uses the timezone support added to core Language::sprintfDate in
Iea1f7842 to add support for various timezone-related formatting
characters, and to correct the output for 'c', 'r', and 'U' in local
mode.

This is related to bug 33454, which requests the same for
ParserFunctions' {{#timel:}}.

Bug: 33454
Change-Id: I1b92dc671051a6cc53e35ebd74d383448e16696c
2013-04-02 23:15:16 +00:00
Brad Jorsch 71d9f600dc (bug 46294) Fix for Windows text-mode file handles
On Windows for LuaStandalone, the lua executable's standard output is a
text-mode file handle, even if the pipe is opened from PHP with the
binary flag. Which means that when Lua returns a "\n", it gets silently
rewritten to "\r\n" and the unserialization fails.

So, change the protocol for Lua→PHP messages to encode \r and \n (and \
itself, as the escape character) to avoid this issue.

Bug: 46294
Change-Id: I73b5f44e8aa0334f5fd03013dc027d1a57318349
2013-04-02 23:05:38 +00:00
Translation updater bot 2a1e1b57a3 Localisation updates from http://translatewiki.net.
Change-Id: Iabf82ced63c5325a494d86f5c13f63a9a0a897f1
2013-04-02 19:11:18 +00:00
Brad Jorsch adb7b5f939 Make pairs() work with various library objects
Users are reporting disappointment that using pairs on title objects
doesn't let them see the fields available. It's easy enough to add a
__pairs metamethod to allow pairs to work on title objects, so let's do
that.

The same can be done for mw.uri objects.

For mw.message objects, we can easily enough change the implementation
to be like mw.language objects, which doesn't have this problem.

For mw.site.stats, we may as well just remove the load-on-demand feature
since it will be demanded as soon as the environment is cloned for the
first module.

Change-Id: Ie5a3b5684b2bb6c090f9994baa03977687688929
2013-04-02 17:23:42 +00:00
Translation updater bot 9e6d0848ee Localisation updates from http://translatewiki.net.
Change-Id: Id3a7ec403c9a6cfc922c3a59323bd520bdbc88a8
2013-03-31 18:53:49 +00:00
Translation updater bot f1849c00b9 Localisation updates from http://translatewiki.net.
Change-Id: If0264b66c1cb7e4c2e534303168abf6e3bc50814
2013-03-29 20:43:34 +00:00
Brad Jorsch 4374903e83 (bug 46635) Recognize Windows path+drive letter
The logic for recognizing absolute versus relative paths needs to take
into account the possibility of a Windows drive letter.

Bug: 46635
Change-Id: I3a43acac2f6e8b481807e1babe5a261b9eb1fe23
2013-03-29 09:26:13 -04:00
Translation updater bot 45cda698ec Localisation updates from http://translatewiki.net.
Change-Id: I98fa964e241d1beb7285f3f369e9bb25399dfa05
2013-03-27 21:02:34 +00:00
jenkins-bot a85275592c Merge "Add text module" 2013-03-27 16:55:07 +00:00
Siebrand Mazeland bff2ed5a24 Add namespace translations for 'ilo'
Requested by Lam-ang at
https://translatewiki.net/wiki/Thread:Support/Module_namespace_translation_for_ilo_wiki

Also fixed sorting.

Change-Id: Ia112447c12d841844bb18ef27672a85719b067ef
2013-03-27 11:17:26 +01:00
Translation updater bot 9dc2e235a3 Localisation updates from http://translatewiki.net.
Change-Id: I5d640a256f44ecc3e1a8170f0de615d980882d23
2013-03-25 20:08:50 +00:00
Brad Jorsch 5989d28678 (bug 39655) Add Lua version info to Special:Version
Use the SoftwareInfo hook to add the versions of LuaSandbox and Lua to
Special:Version.

Bug: 39655
Change-Id: I912197efee0211066677c4d46e638fb546a410c6
2013-03-25 04:07:30 +00:00
jenkins-bot 47e826d082 Merge "(bug 46405) Fix errors in mw.title.new( pageid )" 2013-03-24 20:57:26 +00:00
raymond 7a9fdf8e05 Add namespace translation for 'sv'
Translation by C.Nilsson
https://translatewiki.net/wiki/Thread:Support/Module_namespace_translation_for_sv-wikis

PS2: Fixed typo

Change-Id: Ia7fc9cdbf3aa24e525018f0f23eab3b4aa15c6d1
2013-03-23 10:27:47 +01:00
Danny B 49a7626f78 + cs namespaces
Change-Id: I80bd543062961a97bfc859c96ed4d55620e7154b
2013-03-22 22:58:10 +01:00
raymond 62a4ec2803 Add namespace translation for 'tr'
Translation by Superyetkin
https://translatewiki.net/wiki/Thread:Support/Module_namespace_translation_for_trwiki

Change-Id: I842f4ce09af1f787263b9f7f4d039a8923aa3028
2013-03-22 11:33:03 +01:00
Translation updater bot 3ce106223a Localisation updates from http://translatewiki.net.
Change-Id: I2b8a67f17c14f82f2071253b41278919f527fde2
2013-03-21 22:42:59 +00:00
Brad Jorsch 3d4a81653c (bug 46405) Fix errors in mw.title.new( pageid )
mw.title.new( pageid ) should not throw an error for an nonexisting
pageid, just return nil. Similarly, it should always return nil for 0,
rather than returning the last non-existent title created.

Change-Id: I3cdbb24fc785aef0f8e75fba1feccd26ac5b7370
2013-03-21 09:39:25 -04:00
raymond 1735af7847 Add namespace translation for 'bs'
Translation by Edinwiki
https://translatewiki.net/wiki/Thread:Support/Module_namespace_translation_for_bs-wiki

Change-Id: Id3849e413961e6475b44afb04a88f02b4c5b1509
2013-03-21 10:08:50 +00:00
Translation updater bot c4e94724b8 Localisation updates from http://translatewiki.net.
Change-Id: I279639ebbc3c50a81a385986d9eb1ed06de025ee
2013-03-20 20:57:59 +00:00
Brad Jorsch 0db3d7c6d2 Add text module
This exists for some common text-processing functions that aren't
included in string (and therefore also aren't in mw.ustring), as well as
a logical place for the "unstrip" function requested in bug 45085.

Bug: 45085
Change-Id: I47356215fcc8ddeed5f901cd933a30021394bd78
2013-03-20 10:10:15 -04:00
jenkins-bot 1745176df6 Merge "(bug 41769) Add frame:callParserFunction() and frame::extensionTag()" 2013-03-20 03:38:45 +00:00
Brad Jorsch 0dc45ff2f8 Improve caching in fetchModuleFromParser
On my test system, ScriuntoHooks::invokeHook takes about 4 seconds of
CPU time during the parse of a page containing 1000 #invokes of a module
containing a single do-nothing function. And about 2.3 of those seconds
appear to be spent in ScribuntoEngineBase::fetchModuleFromParser.

ScribuntoEngineBase::fetchModuleFromParser already assumes that if
Parser::fetchTemplateAndTitle returns the same $finalTitle then $text is
also the same and we can reuse the same module. But it seems just as
likely that the same input $title is always going to give the same
$finalTitle, so we may as well skip calling
Parser::fetchTemplateAndTitle entirely if we've seen the input $title
before.

This change takes the CPU time spent in ScriuntoHooks::invokeHook in the
test described above down to about 1.5 seconds. And since it's very
likely that $title and $finalTitle are the same (Modules don't support
redirects, so it's basically TemplateSandbox that would cause that), it
probably doesn't even increase the size of the module cache.

Change-Id: I87ad8b85d0f82791f49158d62effa6dc7c20f058
2013-03-20 02:13:33 +00:00
Translation updater bot 5e930029e7 Localisation updates from http://translatewiki.net.
Change-Id: I805dc4c37b58aa5ad14f8511bf1e54e9ca0d3af2
2013-03-19 21:44:02 +00:00
Translation updater bot 300fc07ff0 Localisation updates from http://translatewiki.net.
Change-Id: I3d1c6ddbd23c90c88b7068fcd3c3dee2bc9286fb
2013-03-18 21:07:57 +00:00
Brad Jorsch 541e61a1c4 (bug 41769) Add frame:callParserFunction() and frame::extensionTag()
Requires change I339b882010dedd714e7965e25ad650ed8b8cd48f to
mediawiki/core.

Bug: 41769
Change-Id: I0138836654b0e34c5c23daaedcdf5d4f9d1c7ab2
2013-03-18 13:46:26 -04:00
jenkins-bot 13f27fdfa2 Merge "Don't record self-link from mw.title" 2013-03-18 00:37:07 +00:00
Translation updater bot 1c7d72809c Localisation updates from http://translatewiki.net.
Change-Id: Ib0c5d00a229104882fb9e4ac5267163d2b4bcde6
2013-03-17 20:57:06 +00:00
Brad Jorsch 53c46561ab Don't record self-link from mw.title
Every Lua-using page loads the "self" title for mw.title. But we don't
want to record this self-link in the links table, because that confuses
people.

Change-Id: I1ef57daa615c176b7789f5f09bd15ee5b292ad0c
2013-03-17 14:55:04 -04:00
Translation updater bot 850320573e Localisation updates from http://translatewiki.net.
Change-Id: I3cae8cb00516da8831b40396f3b73aca12c17642
2013-03-16 21:30:35 +00:00
mxn c31b728996 (bug 45189) Added Vietnamese translations for Module namespaces
Change-Id: I7040cf1e247b1cc682a30fbda4533e1213d7fa57
2013-03-16 06:30:01 -07:00
Niklas Laxström b5015a2d8e (bug 45550) Add Portuguese translations for Module namespaces
Bug: 45550
Change-Id: I5ab549b77443990fd6614d97d20fe0cbcbfdae99
2013-03-16 08:18:48 +00:00
Translation updater bot fb5ac6492b Localisation updates from http://translatewiki.net.
Change-Id: I31fe8a7647fdf54314d3e05cc3dcdb40ee274cb0
2013-03-15 20:03:25 +00:00