[17:22:45] alolita: SIP problems are preventing me from attending the AFT scrum meeting [17:25:32] TrevorParscal: I'll be right back after dinner to get my local install going. [17:25:47] Hm.. [17:26:14] RoanKattouw: Could you pass that to Trevor ? I just spoke to him in the scrum, but he didn't join yet apparenty (I guess he will any minute now) [17:26:30] OK [17:33:00] TrevorParscal: I'll be right back after dinner to get my local install going. [17:33:14] thanks [17:33:26] ha ha https://secure.wikimedia.org/wikipedia/mediawiki/wiki/Special:Code/MediaWiki/86147#c16025 [17:33:33] dude, too much javascript [17:37:26] RoanKattouw: https://secure.wikimedia.org/wikipedia/mediawiki/wiki/Special:Code/MediaWiki/86147 [17:37:34] see followup [17:38:19] :) [17:38:24] You feeling better today? [17:42:23] In fairness, a dot as a concatenation operator is idiotic. [17:42:57] but, why? [17:44:46] in D they use ~ as the string concat op [17:45:04] which, at least doesn't naturally read dot or plus [17:45:08] but it's sort of odd as well [17:45:24] RoanKattouw: yes, I feel much better, finally [17:45:42] even on Thrusday and Friday last week, when I thought I had recovered, I felt beat up [17:45:52] I went to bed at like 9pm last night though... [17:45:59] just put strings next to each other: "These" " are" " a " "single" foo [17:46:19] isn't that a python thing? [17:46:27] no clue [17:46:33] I've avoided python [17:46:42] It's too pure for me [17:47:24] Python uses +. [17:47:30] hmmm [17:47:58] http://en.wikipedia.org/wiki/Comparison_of_programming_languages_(string_functions)#Concatenation [17:47:59] I'm not sure any language allows spaces to be used for concatenation. That seems insane. [17:48:00] ha ha ha [17:48:06] freaking wikipedia [17:48:32] lisp ftw!! [17:48:52] elisp is even simpler [17:49:03] > Definition concatenate(string1,string2) returns string. [17:49:12] That's confusing. [17:49:21] It would return string1string2... [17:51:16] dude, this article is rediculous [17:52:12] Huh. It has fewer views per day than I guessed: . [17:54:20] http://stats.grok.se/en/201104/List%20of%20lists%20of%20lists [17:54:36] Heh. [17:56:16] oops [17:59:03] RoanKattouw, Krinkle-away , waiting for you in x2003 [17:59:36] guillom: I still have microphone and SIP problems [17:59:48] My laptop won't read mic input and my SIP phone won't authenticate to SIP :( [17:59:52] RoanKattouw, ok, will tell alolita [18:01:55] RoanKattouw, what software are you using for SIP? [18:02:13] Twinkle [18:02:20] But the software is not at fault [18:02:29] It auths to SIP but the mic on that box doesn't work [18:02:34] Hmm [18:02:40] Wait I still have the other laptop :) [18:02:57] ok [18:03:09] Booting it up now [18:03:09] RoanKattouw, alolita is asking if you can update your section in etherpad [18:03:13] Oh right [18:03:15] Will do [18:06:41] guillom: Alright I'm in now, yay [18:06:53] RoanKattouw, and I'm not any more [18:06:58] Oh [18:07:07] I can't hear a thing, my router is cracking up [18:07:23] it's doing that everyday at the same time [18:07:29] going to reboot it [18:43:32] Which extension did kaldari just mention? [18:44:05] Oh CLDT [18:44:07] 8R [18:44:08] *R [18:56:24] Krinkle: how's it? [18:56:37] Hi [18:57:01] ok [18:57:12] so, let's get your ArticleFeedback extension working [18:57:16] So, regarding AFT. I can't get it to work. Got a clean svn/mw/trunk of phase3, AFT, PrefStats and SimpleSurvey [18:57:23] included PrefStat and AFT in localconfig [18:57:39] ok [18:57:54] I don't see AFT boxes on articles, instaed I get E_notices on the wiki about specialpagename alias not being defined for it. [18:58:38] $wgArticleFeedbackCategories = array( 'ArticleFeedback' ); [18:59:08] or $wgArticleFeedbackLotteryOdds = 100; [18:59:31] if you choose the former, you need to add any page you want ArticleFeedback to show up on to the ArticleFeedback category [18:59:53] (by editing the page and adding [[Category:ArticleFeedback]] at the bottom) [19:00:04] is there an option to enable it for all articles ? [19:00:09] yes, the latter [19:00:19] ah, I see [19:00:38] oh great, Fatal error: Call to a member function isListed() on a non-object in /svn_public/mediawiki/trunk/phase3/includes/SpecialPageFactory.php on line 330 [19:00:47] prolly unrelated.. someone broke trunk It seems [19:00:51] fun [19:01:45] Notice: Did not find alias for special page 'SimpleSurvey'. Perhaps no aliases are defined for it? [Called from SpecialPage::getTitleFor in /SVN/mediawiki/trunk/phase3/includes/SpecialPage.php at line 263] in /SVN/mediawiki/trunk/phase3/includes/GlobalFunctions.php on line 3142 [19:02:11] The fatal error only shows up when I require_once PrefStats [19:02:35] TrevorParscal: RoanKattouw Do you have a working trunk-wiki with AFT ? [19:02:42] Not sure [19:02:50] let me update [19:03:19] Also, does PrefStats have any dependancies ? I just installed those 3 extensions (AFT, PrefStat, SimpleSurvey) and ran php update.php [19:03:31] that should do it... [19:03:34] and included PrefStat and AFT LocalConfig. [19:03:56] Krinkle: do you have gchat? [19:03:59] sure [19:04:12] I prefer IRC tho. [19:04:25] i know, but I am going to walk to a team lunch, and I can continue helping from my phone [19:04:34] ah, okay [19:04:35] you just need to accept my gchat invite [19:04:43] trevorparscal@gmail.com [19:06:32] so, yeah works on trunk for me [19:07:08] TrevorParscal: Hm.. anything in your localsettings ? [19:07:13] anything I need to do for PrefStats >? [19:07:29] no [19:07:35] btw, go to [[Special:SpecialPages]] [19:07:36] it's not popping up? [19:23:17] Is there an etherpad on ArticleFeedback ? [19:25:57] There's all sorts of stuff [19:26:09] howief is most likely to know where the information that you want can be found [19:28:05] RoanKattouw_away: Okay, so I got it working. The problem was that jquery.clickTracking wasn't found my AFt and causes an exception in the console. [19:28:13] It wasn't documented as a dependancy, forgot to install it. [19:28:23] by AFT* [19:29:38] howief: Do you know if there's an pad already for AFT related notes ? [19:51:15] Krinkle: here are the docs for AFT [19:51:21] rollout plan: https://docs.google.com/document/d/1aAjm374ZKPLG5aG_c9POP6oLnWrz8N5QWNF5XLVCo9E/edit?hl=en&authkey=CNGb4NQP# [19:51:41] email enagement requirements: v [19:51:43] http://bit.ly/hbKNPF [19:52:01] trevor's etherpad doc: http://eiximenis.wikimedia.org/ArticleFeedbackV3 [20:00:39] RoanKattouw_away: jquery.clickTracking is not in core, but there are several extensions/things depending on it, without them being documented as such. Is that plugin itself moveable to core (is it re-usable) or does it depend on the extension being installed (in which case the module should perhaps be renamed to ext.clickTracking.xxx) [20:01:30] namely Vector, ArticleFeedback and CustomUserSignup [20:07:33] I... am now quite sure [20:07:41] File a bug and assign it to me [20:07:44] *not [20:08:17] Hmm it submits to an API module added by the extension [20:08:31] I probably shouldn't have put that dependency in the way I did, need to solve it differently [20:25:54] Krinkle: howdy [20:26:25] Hi [20:26:27] Did you get ClickTracking going? [20:26:34] Yes, local install is fine now [20:26:38] cool [20:26:41] working on adding that "helpimprove" checkbox logic now [20:26:46] cool [20:26:54] see also the etherpad ^^ [20:27:09] nice (looking) [20:27:32] when you get to the call to action thing, I have some ideas for how to refactor the way the calls to action are rendered right now to support the new stuff we want to do [20:28:06] it was originally that the calls to action were nearly 100% identical, only the messages and action when you clicked the green button were different [20:28:21] then I hacked in an alt-action to make the signup-join thing work [20:29:07] but now we have 4, and they are mostly unique, so we should probably make the call to action stuff less generic [20:37:31] TrevorParscal: "This is already done for the calls to action", you mean the pitches ? [20:37:40] yes [20:37:43] k [20:37:46] sorry for using 2 different terms [20:37:59] cta === call to action === pitch [20:39:31] okay, by " this is already done" you mean the principle of variable messages, not the method I describe in the etherpad. [20:39:59] no, the method you describe, of doing the message injection manually [20:40:12] Although I haven't looked extensively, from what I see it renders all pitches, display:none, and depending on the cookie and randomness. it fadeIn()'s the right one [20:40:44] Ah, I see it does manual injection too. [20:40:49] we could add a parameter to $.localize, so you can provide a mapping of keys [20:41:22] Is there a reason it renders all pitches first and chooses later ? It would make sense to get the right key and then populate / fade in. [20:41:43] so then you can ask for one set of key names in the template like "title" and "body" which get turned into "long-msg-name-with-logic-behind-it" using the map [20:42:06] there's no reason it has to do it the way it does [20:42:14] I'm sure rendering on the fly would be easy [20:42:14] k [20:42:16] and faster [20:42:19] right [20:42:31] also, let me give you outight permission to go bonkers [20:42:39] there's LOTS of this code that could be refactored [20:42:50] and I encourage you to do what feels right, makes sense, etc. [20:42:57] hehe [20:43:02] I'll see what I can do. [20:43:20] I'm happy to provide input on that if wanted, but don't worry about permission, I trust you (or we wouldn't have hired you) :) [20:44:02] Sure, but I'm quite new to this particular extension so there may be reasons for a certain thing (ie. random bug xxx you encountered and thus made it the way it is) [20:44:09] I can add that functionality to $.localize if you think it would be useful in this? [20:44:25] I'm not sure. [20:44:35] yeah, feel free to ask about anything, I know the code 100%, so I should be able to answer anything [20:45:08] temporary attributes to callback for logic would be the way to do it in localize, but on the other hand, $.localize isn't all that special. I think it would be just as good to just call mw.msg in AFT. [20:45:34] ie. no repeated logic like escaping or something [20:57:10] dude, code review is way behind [20:57:16] Yes [20:57:18] What else is new :( [20:57:23] It's not too bad [20:57:29] I want to have a serious conversation about this during the Berlin staff meeting [20:57:34] Chad has knocked a decent amount off it again [20:57:36] Well Chad has been doing a lot of catch-up lately [20:57:42] are the server kitties taking naps on the CPUs or something? [20:57:43] It's down a 3rd on what it was before the weekend [20:57:57] Nice [20:58:00] Just stop writing code. [20:58:07] If you do that, you wont' need to review it. [20:58:17] svn lock the whole repo? [20:58:23] Let's just turn off the SVN server for a while and bam! We'll catch up in no time. [20:58:47] that seems, somehow impossible [20:58:54] we can't review if the server is off! [20:59:02] We can [20:59:06] It's a different machine :P [20:59:31] why is http://www.mediawiki.org/wiki/Special:Code/MediaWiki lagging so far behind the SVN? [20:59:39] can it render diffs too without svn server ? [20:59:43] Is it not picking up commits? [20:59:43] even the IRC feed is working faster than it [20:59:45] *Reedy goes to look [20:59:55] I bet the script is failing for some reason [21:00:04] my last commit was http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86435 [21:01:06] RoanKattouw: I watched brion's talk/wrapup of 2009's codeathon after berlin. I wasn't that active in mw development back then, but if I didn't know better I wouldn've sworn that video was recorded in the future, namely after the coming up berlin hackathon. [21:02:13] Manual ping has moved it up [21:02:19] But we're missing 86434 [21:02:23] wait, it's nto new [21:02:24] nvm [21:02:53] uploadwizard, resourceloader, ajaxify edit workflow, virtualization cluster, database based wgConf, Maps OSM in Wikipedia, codereview backlog, coming mw 1.151.17 release. [21:03:36] haha [21:03:49] Have you heard the story of the script loader never happening over the course of >1 year? [21:03:54] But yeah [21:04:01] A lot of it sounds like we've been stuck for 2 yrs [21:04:43] anyway, this time it'll be "coming later this year" for real. [21:04:50] Premonitions [21:06:36] TrevorParscal: What's the current method to link words in i18n messages that are retrieved through javascript ? [21:06:57] s/link/hyperlink/ [21:07:13] yeah, Neil is working on a client-side parser that would help with that [21:07:18] and do plural and gender [21:07:20] ... ([http://foobar/ Privacy policy]) doesn't render [21:07:36] not working on, it's deployed :) [21:08:05] but you also need about 19K of JS to make it work and I'd like to move that to the server side before this becomes generally used [21:10:19] Krinkle: and we are deplying site wide, so let's try and live without that if possible [21:11:00] TrevorParscal: The email mockups you sent Howie (which he sent to me) contains a Privacy policy link in the articlefeedback-form-panel-helpimprove-note message [21:11:24] coudl be a sep. msg. for now [21:11:42] could* with msg:parens, and parameter[0] = link [21:12:05] I see parametesr ($1, etc.) works already in trunk core mw.message, that's cool. [21:12:22] if you guys need this now, I can add it in [21:12:26] other people are asking for it anywayy [21:12:39] this == links, plurals, etc in messages [21:13:12] imho not needed yet. Atleast not in the default msg constructor that is loaded on all pages. [21:14:13] Krinkle: hmmm that sucks... [21:14:40] 'articlefeedback-form-panel-helpimprove-note' => "We'll send you a confirmation email. We won't share your address with anyone. $1", [21:14:43] yeah, so $ replacement works [21:14:55] so we will just have to use ($1) and inject the link [21:15:03] and the translate people will complain [21:15:12] then replace $1 with