[05:43:16] Driving to DC. I should be back online around 11am phuedx|afk time [07:26:10] good morning! [08:14:48] morning y'all [08:55:11] how are you doing phuedx [09:00:10] joakino: alright -- just getting ready to cycle over to old street for beanzzz 4 ams [09:00:15] yourself? [09:03:57] phuedx: ready to go :) [09:05:22] \o/ [09:05:27] what're you up to this weekend? [09:07:05] hold that thought [09:07:09] back in a bit -- cycling [09:07:58] morning/afternoon/i can't quite tell anymore o/ [09:09:36] hey jhobs ! [09:09:41] welcome to europe morning haha [09:11:28] haha thanks. Except it's about 2-3pm to my sleep schedule [09:11:38] haven't quite made it to ams time yet ;) [09:13:12] :) [09:54:56] yo [09:55:21] no wifi at the coffee shop [09:55:22] boo [09:56:52] hey jhobs! [09:57:03] what upppp [09:57:48] so now the majority of the team is /working/ close to gmt [09:57:57] can we make all meetings gmt times? [09:58:39] i'm already bad with converting PST to EST, that might just break my brain [10:01:05] brb [10:01:13] eating eggs benedict while doing code review [10:05:04] yay for GMT meetings [10:06:30] gonna go grab some lunch (a.k.a. breakfast) real quick, so brb [10:12:27] oh [10:12:29] me [10:12:29] oh [10:12:30] my [10:12:31] oh [10:12:36] those eggs were delish! [10:25:14] back, with food! [10:26:09] jhobs: you're a drummer, right? [10:26:14] yessir [10:26:23] any recs for concert ear plugs? [10:26:33] i have a couple lined up [10:26:42] lemme see what you got [10:26:59] (lined up that is) [10:27:05] and after the last one (jakob) the ringing didn't go away [10:27:21] wait [10:27:24] i misunderstood that lol [10:27:37] you may have done ;) [10:27:39] bmansurov: how's the visa business going? :S [10:28:06] umm unfortunately I don't really own anything great myself so I probably couldn't give you the best recommendations [10:28:07] joakino, hey [10:28:14] but lemme take a look [10:28:24] joakino, it's not ready yet ;( [10:29:24] :s [10:29:31] * phuedx crosses everything [10:29:39] vic firth isn't bad [10:29:58] bmansurov: so you're going to check on monday again? or today? [10:30:06] i use their over-the-ear headphones for casual playing [10:30:11] :( [10:30:20] and i have no complaints with those, so i'd imagine the earplugs are of similar quality [10:30:31] joakino, later today [10:32:39] but tbh phuedx if you have concerts lined up then you'd probably already know better than i would :D [10:33:00] i just drum for fun, can never get enough people together to jam too often [10:33:19] i've been recommended these: http://www.amazon.co.uk/Elacin-ER20S-musicians-hearing-protection-x/dp/B0034ZI9AQ/ref=cm_rdp_product [10:33:39] was just wondering before i pressed the "JUST TAKE MY MONEY" button [10:35:04] i'd imagine you're good with those. Ideally you'd have earbuds and be hooked into the monitor, but idk what your setup is [10:35:33] unless it's an acoustic set [10:36:22] brb [10:39:16] could always go with lightning/hot rod sticks too to reduce piercing/ringing sound if the venue/genre allows for it [10:50:41] question for y'all: would you merge a commit with the commit message "Don't ask. Just merge." [10:51:22] would probably depend on the change [10:51:25] most certainly not [10:51:30] although i guess that defeats the purpose [10:51:44] for that just do automerge and explain in the comments/commit msg. [10:51:45] plus i don't have +2 so... ;) [10:52:22] i will be having words with our inglorious tech lead: https://gerrit.wikimedia.org/r/#/c/246801/ [10:54:35] that I actually would merge, but that's because in a QA-led browser test session last all-hands they said occasionally sleep commands can make artificially failing tests pass [10:54:53] oh don't get me wrong [10:55:03] the actual change i'm fine with [10:55:12] it mirrors the test underneath it [10:55:31] and beta can sometimes grind so hard that the timeouts for these things expire [10:55:43] i take issue with the commit message ;) [10:55:55] ah, I see [11:00:26] wait_until is being removed [11:00:31] from capybara [11:00:42] * phuedx reads some bloggy blogs [11:02:24] ah [11:02:32] i see now, we're testing for the wrong thing [11:03:02] the init script is the bootstrap script that fires off another request [11:03:18] testing for the init script to be present isn't indicative of the page having been fully loaded [11:03:54] alright -- i'm caffeinated, have beans for ams, and have had brekkie [11:04:06] i'm going to cycle home after i post my thoughts on that patch [11:04:23] phuedx: did you still wanna have a chat with me and baha regarding Read More? I'll probably only be working for about another hour or so but i'll be around all (your) day and can hop in a hangout pretty much whenever [11:04:48] (like i said earlier, it's about 4-5pm to my body right now) [11:05:08] jhobs: it'll take me ~30 minutes to get home [11:05:14] hangout then? /cc bmansurov [11:05:25] ok [11:05:25] works for me! [11:11:46] cool [11:11:47] heading off [12:02:04] ugh [12:02:21] irccloud is intollerably slow to load/won't load right now [12:02:38] they're having network failures [12:02:45] jhobs, bmansurov: y'all still around? [12:02:47] it kicked me offline a bit earlier [12:02:52] yep [12:03:01] yes [12:04:20] i'm on tracy island [12:06:48] phuedx|bike: [12:06:50] phuedx_webchat: [12:06:53] WTF [12:14:41] https://integration.wikimedia.org/ci/job/mwext-testextension-zend/12369/console [12:15:12] https://gerrit.wikimedia.org/r/#/c/246137/ [12:30:52] hashar, hi, would you please review https://gerrit.wikimedia.org/r/#/c/246818/ ? Thanks [12:32:35] bmansurov: hello :) [12:34:21] bmansurov: does Cards really depends on MobileFrontend ? ;D [12:34:43] potentially if it could be used standalone, the resource loader might want to skip registration when MF is not around [12:34:48] hashar, yes I need to use hogan templates for now https://gerrit.wikimedia.org/r/#/c/246137/3 [12:34:57] ok ok :-} [12:36:02] and seems that is the same stuff for relatedArticles :/ [12:36:11] yes [12:36:14] for now at least [12:37:32] we have a job that is triggered by all mobile related extensions [12:37:39] maybe Cards and RelatedArticles should be added to it [12:37:55] hashar, ok, can you tell me where it is? [12:38:02] this way, whenever one send a change to say MobileFrontend, that will runs Cards and RelatedArticles tests [12:38:06] * hashar digs [12:38:12] hashar, thanks! [12:38:20] and this way you no more have to define the dependencies [12:38:30] cool [12:38:38] bonus point: MF will not be allowed to break Cards/RelatedArticles [12:39:37] bmansurov: in integration/config for Zuul you will want to add the template 'extension-gate' [12:40:13] hashar, ok [12:40:13] which causes it to trigger the "shared" jobs mediawiki-extensions-zend and mediawiki-extensions-qunit [12:40:18] then in jjb [12:40:32] the job need to be adjusted to also clone Cards/RelatedArticles [12:40:34] (sorry that is undocumented :/) [12:40:50] hashar, and this will help me get rid of the error in https://gerrit.wikimedia.org/r/#/c/246137/3 ? [12:41:12] that is in jjb/mediawiki.yaml there is a list of dependencies with an alias "&gatedextensions" [12:41:19] you would want to add Cards and RelatedArticles to it [12:41:26] ok [12:42:32] on the Cards change https://gerrit.wikimedia.org/r/#/c/246137/ , I have commented 'check experimental' which triggers the shared jobs [12:42:46] cool [12:42:47] https://integration.wikimedia.org/ci/job/mediawiki-extensions-hhvm/35981/consoleFull [12:43:03] somewhere at the beginning, you will see it clones a bunch of various repositories [12:43:05] so, once I change jjb/mediawiki.yaml, there is no need for the change in the python file right? [12:43:27] that is the list in jjb/mediawiki.yaml &gatedextensions [12:43:32] yes [12:43:37] yup no need to list the deps [12:43:47] great [12:43:50] so originally, we added that dependency system as a hack [12:44:21] and I eventually came up with a jobs that clone X repositories and is triggered by all those X repositories [12:44:28] i see [12:44:41] on https://gerrit.wikimedia.org/r/#/c/246137/ [12:44:57] you will see the shared job mediawiki-extensions-* are passing properly [12:45:32] so in Zuul layout, you can add the 'mediawiki-gate' template and we will want to remove the more specific jobs that are now useless ( mwext-testextension* cause they fail) [12:46:35] ok [12:46:36] sorry it is all complicated with lot of moving / legacy part overlapping :-(((( [12:46:47] np, thanks for helping [12:47:08] hashar, should I remove extension-unittests-generic too? [12:48:02] yeah that one bring the mwext-testextension* jobs which rely on the python dependency list [12:48:06] but the template also add a bunch of other jobs [12:48:26] ok [12:48:41] I am looking at the available templates [12:50:24] bmansurov: so yeah drop extension-unittests-generic [12:50:35] and replace it with: composer-test [12:50:39] and extension-gate [12:50:54] extension-unittests-generic is a super set of composer-test [12:51:10] ok [12:51:49] anything that rely on the python script to inject dependencies should probably be migrated the same way and then we can remove the lame dependency injecter. But lets make sure Cards is passing first [12:51:54] i can deal with the migration of the rest [12:52:03] joakino: i have multiple presences [12:52:07] just for funsies [12:52:16] hashar, updated the patch [12:53:32] the crazy Zuul change can be seen more or less at https://integration.wikimedia.org/ci/job/integration-zuul-layoutdiff/6044/console [12:53:38] though that is 13MBytes :D [12:54:27] bmansurov: ah my bad [12:54:35] bmansurov: s/mediawiki-gate/extension-gate/ [12:54:36] sorry [12:54:44] np, 1 sec, I'll repush [12:55:13] done [12:56:35] waiting for the job to complete [12:57:53] bmansurov: slightly more readable https://integration.wikimedia.org/ci/job/integration-zuul-layoutdiff/6045/consoleFull [13:00:16] hashar, i suppose texts in red are errors? [13:00:23] oh [13:00:24] that is a diff [13:00:25] sorry [13:00:31] ok [13:00:42] what the job does is it ask Zuul to output its workflow layout with HEAD^ [13:00:49] then with the proposed patch (HEAD) [13:00:52] and does a colordiff -u [13:01:08] additions should be marked with green imo ;) [13:01:10] that is the poor man way of comparing what is the result of a change to zuul/layout.yaml [13:01:12] yeah [13:01:35] we really need a better diff system though [13:02:10] deployed! [13:02:12] i know next to nothing how these things are set up, so I trust you when you say we do ;) [13:02:14] thanks! [13:02:17] so you can now 'recheck' both patches [13:02:21] and hope it is passing :-} [13:02:54] having to trust me is a bit of a trouble for CI / the community :-( [13:03:07] we are slowly removing dependencies though [13:03:38] i see [13:03:52] I rechecked both [13:03:58] thanks [13:04:02] * hashar cross fingers [13:04:29] joakino, btw, got my visa [13:07:11] hashar, i suppose the failure it not related to the patch? [13:07:48] for related articles https://gerrit.wikimedia.org/r/#/c/246463/ , nop [13:07:57] that was a left over git lock file [13:08:04] known bug that happens from time to time ;-/ [13:08:32] ok [13:08:36] thanks again, hashar [13:08:45] gonna rest up a little bit before meetings later today [13:09:04] Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/db/DatabaseMysqli.php [13:09:06] :((( [13:09:12] whatever it can mean [13:09:18] oh no [13:09:23] that is from https://gerrit.wikimedia.org/r/#/c/246463/ [13:09:32] which seems totally unrelated [13:09:43] ok i'll recheck later, maybe that'll help [13:11:01] ahh [13:11:38] one of the two extensions i breaking it [13:12:32] and I am pretty sure it is RelatedArticles [13:24:43] hashar: looks like it [13:24:50] definitely https://integration.wikimedia.org/ci/job/mediawiki-extensions-hhvm/35991/console [13:25:07] that is the shared job mediawiki-extensions-hhvm with RelatedArticles being injected to it [13:25:12] (via 'check experimental' [13:25:32] https://integration.wikimedia.org/ci/job/mediawiki-extensions-hhvm/35991/testReport/ [13:25:44] seems RelatedArticles causes Echo / Flow to fail among others [13:25:50] hashar: any way i can get a stack trace out of it? [13:26:10] each test result should have more or less a stacktrace [13:26:38] seems they all get DeferredUpdates.php [13:26:49] mibad [13:26:59] skimmed over it because it's hella spammy [13:28:27] the usual cause for test breaking is when one of the extension hook in mw core [13:28:32] and change its behavior [13:28:47] then the tests of others extensions fails because the mw/core "contract" has been altered [13:31:55] trying to repro [13:32:44] hashar: got it i think [13:32:56] > then the tests of others extensions fails because the mw/core "contract" has been altered [13:33:26] must remember to return true from hooks [13:33:37] nice catch test harness! [13:35:57] phuedx: is there a way to format something as code in a gerrit comment? [13:36:11] jhobs: sorta [13:36:12] ohh [13:36:16] put four spaces in front of it [13:36:16] phuedx: so have you solved it ? [13:36:22] thanks [13:36:22] hashar: yup [13:36:43] you put me on the right track with the core <-> extensions comment [13:39:04] Warning: bin2hex() expects parameter 1 to be string, array given in /Users/amusso/projects/mediawiki/core/includes/db/DatabaseSqlite.php on line 817 [13:39:05] huhu [13:40:02] no clue where this one comes from [13:40:43] wha!? [13:40:51] unrelated [13:40:55] same issue different db driver? [13:41:02] my php / mediawiki setup are most probably broken [13:41:30] jhobs: re: the gateway stuff, it certainly has been renaming a lot of the api classes [13:41:38] but also getting rid of the inheritance hierarchy [13:41:51] you'll notice that the gateways are pojos [13:42:09] and compose rather than extend [13:42:16] *inherit [13:42:40] I understand it gets rid of the inheritance, but it still seems like the process one has to go through to perform the desired actions is a bit more convoluted than it could be [13:43:01] like you still would have to have a pretty good idea of how the api works [13:43:16] rather than just "gateway.giveMeTheShitIWant()" [13:43:57] more looking to start a discussion than block; maybe it's something we can bring up in Ams [13:46:03] seems related articles inject an array somewhere :-/ [13:50:53] phuedx: found it. Seems that is caused by RelatedArticles hook onParserClearState [13:51:00] $parser->getOutput()->setProperty( 'RelatedArticles', array() ); [13:51:13] that injects an array somewhere which eventually tries to be quoted with sqlite addQuotes() [13:51:24] but that one rejects array [13:51:48] jhobs: i agree -- the gateways need /a lot/ of work [13:52:24] f'rinstance, appearing to operate on pages but not taking instances of Page [13:52:25] phuedx: yeah, I'll comment again to clarify my intentions though [13:52:27] returning objects [13:52:54] well, /not instances of the objects to which they refer/ [13:53:07] so { foo: bar } as opposed to mw.Title [13:53:35] hashar: hrrm [13:53:36] sec [13:54:14] I can reproduce with sqlite and having solely Echo and RelatedArticles . If I comment out the above line it is all fine. Maybe I should just fill a task about it ? [13:55:13] hashar: that's a bug [13:55:19] i'd be delighted to fix it for you [13:55:23] I have no idea [13:55:28] but please raise a task :) [13:55:34] I worked hard and forgetting everything I knew about php [13:55:41] lol [13:56:30] hashar: you'll see that in onFuncRelated we use $parserOutput->setExtensionData [13:56:34] I am looking toward https://ooc-lang.org/ (looks like PHP, generates pure C) [13:56:35] and haskell! [13:56:49] we should be using setExtensionData in the onParserClearState hook handler too [13:58:49] hashar: looks interestin [13:58:55] does nim compile to c99 [13:59:11] looks like python, generates c :D [13:59:36] hashar phuedx: I like the line at the bottom: "If you use ooc and like it, please consider showing your token of support by smiling at your screen." [14:00:12] "Discovering new ways of perceiving, designing, and manufacturing pieces of software is always a worthy pursuit." [14:04:03] phuedx: filled at https://phabricator.wikimedia.org/T115698 [14:05:33] ah http://c7.se/from-go-to-ooc/ [14:06:21] ok, hopping off. Might pop back in on some of the patches this weekend and/or on the plane. See you reading web folks on Monday! [14:08:45] jhobs|afk: have a good week-end [14:14:02] later jhobs|afk [14:22:04] hashar: the build looks good to me on https://gerrit.wikimedia.org/r/#/c/246836/ [14:22:51] ahh [14:23:45] phuedx: has it ever been pushed to prod? [14:24:37] hashar: hrrm -- it's on beta and on wikivoyage [14:24:45] i'll add in a thing to remove the parser output property [14:24:48] I am wondering if it causes any havoc there [14:24:56] and if we will need to cleanup something from the databases [14:25:23] I am not sure what happens with $parser->getOutput()->setProperty( 'RelatedArticles', array() ); and a MySQL database [14:25:31] maybe it just spurts a warning [14:25:40] and in this case nothing is inserted in the db so we are all fine :-} [14:26:14] hashar: i'll have to take a look at grafana [14:26:23] brb [14:26:36] there is another setProperty down in onOutputPageParserOutput() [14:26:54] so maybe the clear was intentional [14:26:57] commenting on gerrit [14:27:21] hashar: different object, duplicate method name ;) [14:27:29] but go for it [14:31:38] hashar: actually, i think it's going out next week [14:31:56] yeah that is a bit of a mess [14:32:07] there is a ParserOutput->unsetProperty() [14:32:15] but no such thing in OutputPage class [14:32:23] outputpage is no biggy [14:32:46] hashar: https://gerrit.wikimedia.org/r/#/c/244379/ is included in master, wmf/1.27.0-wmf.3 [14:33:10] we're on wmf.2 iirc [14:33:21] mdholloway: got a minute for hangout regarding the image licenses? [14:33:37] dbrant: sure, omw [14:33:41] nevertheless, due diligence! [14:33:52] dbrant: after i locate my headphones, that is [14:35:48] phuedx: if only we had tests :-} [14:38:11] quiet you! [16:37:03] ugh [16:37:48] i had to dash off because my wife had to go to the hospital for a blood test [16:37:52] * phuedx sighs [16:41:43] phuedx: alright changing cities pre-trip [16:41:49] see you in ams! [16:41:53] later! [16:54:20] dr0ptp4kt: having network issues [17:15:49] mhurd_afk: mdholloway niedzielski dbrant all by my lonesome in standup [17:22:31] going to get the kids ready for bed [18:23:10] Hi all! In the context of the discussion around displaytitle and wikidata labels, I have investigated a bit, and found that core indeed treated displaytitle as HTML. [18:23:13] Related patch: https://gerrit.wikimedia.org/r/#/c/246878/ [18:24:01] The fix in the API module is trivial enough, but I'm afraid in its current form, this will cause a lot of double escaped output. If you can tell me how to avoid that, please comment on the ticket. [18:40:34] DanielK_WMDE_: I think, that the mobileview api isn't really used in mobile web, it's used in mobile apps, as far as I know (where displaytitle is used, too). AFAIK, MobileFrontend doesn't use the displaytitle prop of the mobileview api. [18:42:44] *sigh* [18:42:47] more fun dependencies [18:42:56] can you add the relevant people to the ticket? [18:44:18] this is a breaking change to the api. well, or a fixing change, depending on your perspective [18:53:11] DanielK_WMDE_: sure (I assume, you mean the change :)) [18:55:45] FlorianSW: yes, indeed. but now it seems like we actually need to track this in a ticket.... [18:56:02] would you create one? I'm a bit at a loss about the appropriate tags/projects to use, people to ping, etc. [18:57:15] DanielK_WMDE_: would you like to create the ticket and let me add project(s) and CCs? :P I'm not entire sure, if I understand correctly what use case you want to fix :] [18:57:37] therefore it seems better, if you describe it in phabricator :) [18:57:41] ok [18:58:08] great, thanks! [19:05:22] FlorianSW: https://phabricator.wikimedia.org/T115747 [19:06:09] DanielK_WMDE_: seen already on #wikimedia-dev I accidently removed your project (Wikipedia-App-MobileApp-extension), thanks phabricator. Let me check, if this is really needed :) [19:06:42] FlorianSW: no idea what tag the app people use... [19:07:06] FlorianSW: does the description on the ticket make sense to you? [19:07:07] ah, ok, no, this project is for the mobile app ext (https://github.com/wikimedia/mediawiki-extensions-MobileApp) :) [19:07:19] as opposed to the actual app?... [19:07:23] i'm so confused [19:07:31] so, what tag would the actual app use? [19:09:13] Wikipedia-Android-App for the android app and Wikipedia-iOS-App-Product-Backlog (I think), I added Mobile-Apps, too, to make sure, that iOS people see this task :) [19:09:34] the mobile app extension provides styles for the apps, only. [19:10:19] DanielK_WMDE_: yes, the description makes sense (that's what I thought before, too, so: great commit message! :)) [19:10:35] \o/ [20:36:12] niedzielski: ok [22:30:11] FlorianSW|away & DanielK_WMDE_ i just added Wikipedia-ios-App-Development to that task and added JoshM (jminor) and bgerstle_afk to the CC. i had added bgerstle_afk and niedzielski to the corresponding gerrit patch [22:31:18] JoshM: i realize that's maybe not the best place for the task, please throw a foam soccer ball at me if i should tag it differently [22:32:27] dr0ptp4kt: nope thats fine. I'll move it into our Tracking column...