[11:46:14] quick question about VE: how does VE detect input? Does it listen to keydown/keyup/paste/drag/drop events directly initally? [12:19:09] What are we using to push updated repos to github? [18:32:23] MartyH, best ask in #mediawiki-visualeditor [18:32:49] MC8, ^demon|away would know [20:30:19] Are Wikimedia servers experiencing some problem now? [20:32:21] I'm not aware of an issue, rr0 [20:32:25] are you seeing one? [20:32:47] Request: POST http://meta.wikimedia.org/wiki/Special:GlobalUserRights, from 10.20.0.138 via cp1054 cp1054 ([10.64.32.106]:3128), Varnish XID 850297480 [20:32:47] Forwarded for: 95.73.201.180, 91.198.174.68, 91.198.174.68, 10.20.0.138 [20:32:47] Error: 503, Service Unavailable at Tue, 03 Feb 2015 20:19:21 GMT [20:33:01] where in the world are you? [20:33:48] I can not change global rights [20:35:02] rr0: I think Reedy is asking where you are located, geograhically. [20:35:17] In Russia [20:56:03] <^demon|away> Krenair: Would know what? [20:56:18] [12:19:09] What are we using to push updated repos to github? [20:57:10] <^demon|away> replication plugin for github [20:57:13] <^demon|away> s/github/gerrit/ [20:59:22] https://www.mediawiki.org/wiki/Help:Magic_words doesn't list magic words that appear in angle bracket (pretending to be html tags) like '' and ''. where is a list of such magic words? [20:59:59] They're not magic words, that's why :) [21:00:20] ok, but is there a page listing all such things? [21:00:28] I think there's one or two for references [21:00:44] and there's '' [21:01:42] I think we call them parser tags [21:02:02] b_jonas: a list is on Special:Version [21:03:29] Nemo_bis: hmm, that lists '' and '', but not '' [21:03:55] oh right, '', I know about that one [21:04:01] and '' too [21:05:26] Yes, because they are not all the same [21:05:29] magic words always start with __ , afaik they are done in pre-parsing , and those tags are done later [21:05:32] What are you trying to achieve? [21:06:10] i think he just wanted a list of all of them [21:06:24] For science? [21:06:28] For trivia? [21:06:33] mutante: sure, but https://www.mediawiki.org/wiki/Help:Magic_words doesn't list only magic words, it also lists parser variables and functions with double bracket syntax [21:06:40] Nemo_bis: for knowing about useful features, yes [21:07:16] I think you're looking for https://www.mediawiki.org/wiki/Special:Search then [21:07:19] b_jonas: right, it appears what i called magic word is just a "behavior switch" [21:07:21] I mean, some of the parser functions on the magic words page are useful, I just learnt that {{uriencode:}} or however that's spelled does just what I'm about to try to do constructing a url [21:07:43] There is a category for parser extensions [21:07:51] (at least I hope. I'll see soon) [21:08:04] And there is a feature request for the list at Special:version to include links to the appropriate extension page [21:11:00] it's called {{urlencode:}} [21:11:53] b_jonas: every extension could add new tags, that's why there is that bug Nemo_bis mentioned [21:13:00] mutante: yes. and there are extensions that add useful parser functions like {{if:}} [21:13:52] You probably mean #if: [21:14:02] probably [21:14:16] I don't follow which functions have the hash mark, which don't, and when it's optional. [21:17:03] It's never optional. [21:17:51] Names are merely conventional, bug "magic words" are usually the things without parameters, and are mostly written uppercase; parser functions can be anything, and are usually prefixed with # (recently ones) [21:18:21] And, sigh, why do I always find myself repeating this. Perhaps we should document it somewhere, but who reads docs anwyay [21:18:38] I'm trying to read docs [21:18:59] I might be misremembering that there was a function that had both aliases, one with and one without the hash mark [21:19:07] thanks for the explanation [21:19:21] You are probably misrememering [21:19:49] But if not, then it's probably a reimplementation of the same feature in a different way, which used a new syntax to avoid breaking past usages [23:31:06] legoktm, TimStarling Any thoughts on https://gerrit.wikimedia.org/r/#/c/188298/ / https://phabricator.wikimedia.org/T76193 ? [23:31:07] Specifically, I'm wondering if there are significant uses for isKnown other than link rendering. [23:32:48] isAlwaysKnown() is used as a prefilter to prevent pages from being added to the batch query [23:33:27] TimStarling, what's the batch query used for? [23:33:46] link colouring [23:34:08] grepping for isAlwaysKnown gives only a few results, you could read them [23:34:42] doing a separate query for every link would be far too expensive, that's why they are done in a batch [23:35:05] that's why it doesn't make sense to call Title::exists() in a hook [23:37:33] you should do the same thing in flow [23:37:42] batch your existence checks [23:40:13] TimStarling, is there a way to use isKnown and still batch it? [23:40:32] We're trying to add support for GlobalUserPage, which does not exist in the local page table. [23:40:45] This is specifically for the user links that are part of the Flow UI. [23:41:05] It seems that I should remove the exists() check from https://gerrit.wikimedia.org/r/#/c/188298/1/GlobalUserPage.hooks.php . [23:41:15] Since it's redundant to the batch check and actually harmful since it does a check per link. [23:42:22] http://en.wikipedia.beta.wmflabs.org/wiki/Topic:S6hw6r3zb44q1k2a demonstrates the issue. [23:44:39] yes, remove the exists() check [23:46:50] at least then it will only do a query for every user page, instead of a query for every link [23:47:42] Makes sense; there is also an in-object cache for the user page queries. [23:48:33] two caches [23:49:18] you have a cache for displayGlobalPage() and another for getCentralTouched() [23:49:31] btw if a function is called displayGlobalPage() it should really display something [23:49:51] getting the verb right is the most important part of function naming in my opinion [23:49:59] Yeah, it should be called shouldDisplayGlobalPage IMHO. [23:50:03] oops. [23:50:05] ^ legoktm [23:51:03] I'm not really seeing why hooking into Title would be better. For most things, the page should not exist. It should just make red links blue, which is what Linker does. [23:51:44] legoktm, that's basically what isKnown is used for AFAICT. [23:51:55] In this case, we don't use the Linker, since it uses template rendering. [23:52:40] would it fix things like https://phabricator.wikimedia.org/T85550 which is intentionally red? [23:53:14] I guess adding a hook to the top of LinkHolderArray::replaceInternal() would be best [23:54:00] then the hook handler could do its own batch query [23:54:20] note that it already has links broken down by namespace [23:54:52] legoktm, no, still red in both Vector and Monobook. [23:55:09] the hook could set an array which is then read by the loop, before isAlwaysKnown() [23:55:23] that way you wouldn't need any global state [23:55:25] The skin uses a different (exists-like) mechanism. [23:56:25] TimStarling, what about the Flow use case (https://gerrit.wikimedia.org/r/#/c/188299/1/includes/Formatter/RevisionFormatter.php), which is API-based, rather than parser-based (this particular user link is rendered through the API and templating). [23:59:06] what calls that? [23:59:40] strange definition of "serialize"...