[00:00:49] (PS3) Awight: Add country-specific versions of fiscal_number [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/226239 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [00:01:15] ejegg: Sorry I'm not actually running the code, pretty crappy CR on my part. [00:01:44] heh, thanks for your trust! [00:02:05] tests help with the convincing ;) [00:03:35] Fundraising Sprint The Pogues, Wikimedia-Fundraising-CiviCRM: Editing broken for contacts with employer - https://phabricator.wikimedia.org/T107114#1486971 (Ejegg) NEW a:Ejegg [00:03:55] (CR) Awight: [C: 2] Add country-specific versions of fiscal_number (1 comment) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/226239 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [00:04:17] (Merged) jenkins-bot: Add country-specific versions of fiscal_number [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/226239 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [00:04:26] (PS7) Awight: Parse more of AstroPay's error descriptions [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/224546 (https://phabricator.wikimedia.org/T106053) (owner: Ejegg) [00:05:00] Fundraising Sprint The Pogues, Wikimedia-Fundraising-CiviCRM, Unplanned-Sprint-Work: Editing broken for contacts with employer - https://phabricator.wikimedia.org/T107114#1486992 (Ejegg) Open>Resolved p:Triage>Unbreak! [00:06:11] (CR) Awight: "recheck" [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/224546 (https://phabricator.wikimedia.org/T106053) (owner: Ejegg) [00:06:22] argh, we have no way to jiggle the handle on DI [00:07:20] phooey [00:07:30] take off your +2 and reapply? [00:07:37] good idea. [00:07:44] (CR) Awight: [C: 2] Parse more of AstroPay's error descriptions [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/224546 (https://phabricator.wikimedia.org/T106053) (owner: Ejegg) [00:08:09] woohoo, gate-and-submit! [00:08:18] (Merged) jenkins-bot: Parse more of AstroPay's error descriptions [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/224546 (https://phabricator.wikimedia.org/T106053) (owner: Ejegg) [00:08:24] * awight grits teeth [00:08:37] thanks for battling Jenkins on my behalf! [00:08:59] silly way to make myself feel tough [00:09:58] * ejegg tosses ribbon to plate-mailed awight as his charger thunders by [00:10:11] tilting at windmills... [00:10:58] http://englishare.net/World%20Lit/Cervantes_n0_don_quixote.jpg [00:11:30] luvit [00:13:25] k, i'm gonna sign off for the evening. awight, enjoy your kid time tomorrow! [00:14:43] ejegg|away: oh fwiw, Tuesdays are the new work day [00:15:07] awight: o rly? taking a different one off? [00:15:16] * AndyRussG rejoyces in anticipation of scathing code review! [00:16:05] cya ejegg|away [00:17:08] ejegg|away: donno yet! see ya [00:30:14] AndyRussG: one last question, how will setBannerNotGuaranteedToDisplay be called? [00:30:33] awight: ah yeah I was getting to ur comment there... [00:30:43] hehe sorry, I can wiat [00:30:45] wait [00:30:49] It can be called from in-banner JS [00:31:17] But, legacy banners will by definition not know to make that call [00:32:08] awight: indeed. But the only effect it has now is to do the call to alterImpressionData() [00:32:30] And after we turn off S:RI, it'll just be a kludge to turn it on in special cases [00:32:58] I figure if a legacy banner cares enough about those things it can adapt and call the method [00:33:16] If it doesn't, it probably doesn't need them... [00:33:38] And I'd prefer to default to the least-featureful option [00:33:53] Not very set about it, though! [00:35:24] (CR) Awight: WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display (6 comments) [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) (owner: AndyRussG) [00:35:46] (CR) Awight: [C: 1] "I'm happy to merge to the feature branch whenever it's out of WIP" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) (owner: AndyRussG) [00:37:25] awight: \o/ woohoo! thanks a million [00:37:46] BTW I'm just doing another wee tweak, moving the dependency on GeoIP from the startUp to the display module [01:04:24] (PS36) AndyRussG: WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) [01:05:11] (CR) jenkins-bot: [V: -1] WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) (owner: AndyRussG) [01:05:16] (CR) AndyRussG: "Moved GeoIP dependency from startUp to display." [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) (owner: AndyRussG) [05:40:49] (CR) Awight: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/224872 (owner: Ejegg) [14:55:03] (PS37) AndyRussG: WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) [14:55:54] (CR) jenkins-bot: [V: -1] WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) (owner: AndyRussG) [15:18:24] (PS38) AndyRussG: WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) [15:44:42] hi all! [15:45:01] I'm going to deploy DonationInterface, unless there's any reason not to [15:47:44] (PS1) Ejegg: Merge branch 'master' into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/227463 [15:49:43] (CR) Ejegg: [C: 2] Merge branch 'master' into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/227463 (owner: Ejegg) [15:58:34] (PS1) Ejegg: Update DonationInterface for deploy [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/227465 [16:00:01] (CR) Ejegg: [C: 2 V: 2] Update DonationInterface for deploy [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/227465 (owner: Ejegg) [16:08:22] !updated payments from 334971bd7a0f11ddd00df3fc790c31b33a706c4d to bdc4afaa7699904ac30c1f6d3bb3fbc6bac5e87e [16:18:58] Fundraising Sprint The Pogues, Patch-For-Review: Bug: JCB logo not always appearing in second position in Japan - https://phabricator.wikimedia.org/T106705#1488468 (Ejegg) [16:47:36] AndyRussG: mornoon! cwdent and I are raring to write a few QUnit tests, wondering if there's a draft of that test case doc available? [17:04:25] AndyRussG: we were just discussing carving off GeoIP and tweaking its API, I think that makes sense for cwdent to do on top of your latest refactor? [17:09:11] cwdent: fyi, https://git.wikimedia.org/blob/operations%2Fpuppet.git/5d179c82a9ac8a451484b42499ff719dcaa6ca63/templates%2Fvarnish%2Fgeoip.inc.vcl.erb [17:09:30] Varnish synthesizes an incoming cookie header with the lookup results [17:10:16] whew! [17:10:36] (PS1) Ejegg: Downgrade log message for empty ffname [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227484 [17:11:15] (CR) Awight: [C: 2] Downgrade log message for empty ffname (1 comment) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227484 (owner: Ejegg) [17:11:46] (Merged) jenkins-bot: Downgrade log message for empty ffname [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227484 (owner: Ejegg) [17:12:09] that was enthusiastic! [17:12:48] * awight pokes head into recent logs [17:13:39] Not too shabby! [17:14:18] This one looks like configuration fail, though: processResponse Error 430403 : There has been an error processing your request. No processors are available. [17:14:19] awight: it might be useful to let the rest of fr-online know what invalid ffnames are showing up so they can tweak banner and email links. [17:14:31] yes! [17:14:52] awight: oh, i thought that error was a capacity thing! [17:14:59] ah, ok then [17:15:19] totally unfounded assumption, though [17:15:21] rats, we don't have a line for that in DI [17:15:30] mebbe as part of a range... [17:15:59] nah [17:16:16] falls into 100000-999999: FAILED [17:16:26] that's a big net... [17:17:56] hrm our error codes guide is from 2013 [17:18:31] ejegg: you memorized this thing or what? [17:18:31] 430403 CC POS Unable to authorize, Try again later REENTER_TRANSACTION Try again later [17:18:34] yep [17:18:45] awight: cwdent: sorry just saw ur pings! [17:18:58] * awight brushes off digits of pi [17:19:01] heh, intimidating just opening that documentation folder. what, like 75 pdfs? [17:19:15] * AndyRussG waves [17:19:19] AndyRussG: hi! no rush [17:19:22] Hi also ejegg [17:19:28] hi AndyRussG ! [17:19:32] awight: is this vcl at geoiplookup.wm? [17:19:33] We were just trying to find some work to carve off, does GeoIP make sense to you? [17:19:35] :) [17:19:43] and it sets this serialized cookie? [17:19:58] cwdent: it used to be, but now it's performed on a request to any site. [17:20:15] awight: cwdent: Yeah! I was just thinking that geoIP is a great place to start :) [17:20:18] Haven't done the test case doc yet, I was refactoring the geoIP dependencies [17:20:25] https://git.wikimedia.org/blob/operations%2Fpuppet.git/5d179c82a9ac8a451484b42499ff719dcaa6ca63/templates%2Fvarnish%2Fgeoip.inc.vcl.erb#L126 [17:20:34] then the existing tests broke, but they're fix't 'gain [17:20:41] .io .me etc... [17:20:49] cwdent: Yep, just confirmed. Do a porn-mode request to enwiki and you'll see a GeoIP cookie [17:21:21] Lemme quickly rattle off some geoIP smoke/qunit testables [17:21:37] aah gotcha, but only CN parses the cookie right now [17:21:43] and makes it available as window. [17:21:45] cwdent: exactly [17:21:46] yeah? [17:22:08] groovy [17:22:15] that would be awesome AndyRussG ! [17:22:20] AndyRussG: sure! we were thinking, * tweak the promise API, * write tests, * build consensus and move to mw-core [17:23:16] awight: ah sure! out of curiosiobsessivity what changes d u want to do w/ the promise API? [17:23:51] Just the minor one Krinkle suggested: return the Geo object via promise, so we can eventually deprecate the global. [17:24:06] right... I couldn't get it all the way to the way Krinkle suggested [17:24:32] ...because window.Geo is set directly by the script returned by the geoIP lookup, when it's done as a background call [17:25:17] Since that bit is outside our purview I thought we could leave it as homework for whoever takes this code over [17:25:42] No worries, I think cwdent has some related experience to apply! [17:26:18] It makes sense to me that we would push it out of CN as we make these improvements, so we don't set people up for two deprecations... [17:26:27] The change I did make is that it parses the cookie right away, in the first-pass execution [17:26:59] I noticed, and it's in really good shape, plus extensive comments! [17:27:00] Then getting the promise doesn't have any effect, which makes sense, because we want any other consumer to be able to get it too [17:27:30] i was imagining the controller (e.g. CN) sets window.geo, since it depends on that, but geo just makes the value available [17:27:33] If u have suggestions for changes that's totally great, just explaining the twisted logic that I was meandering through to reach this [17:29:01] geo just returns a promise that is resolved when the cookie is parsed. is that the general idea? [17:29:07] cwdent: hmmm... yeah that could be also. As in, some external code calls a method in geoIP to tell it to do its stuff, and that's separate from a consumer (of which ther could be several) that wants to get the promise [17:29:49] cwdent: that's the idea of the current patch. Yeah, it's just for code to say, "I want to do this when it's certain that geoIP has finished doing its stuff". [17:29:57] I like the basic way it's set up here--including the RL module as a dependency causes the lookup to happen regardless, and then consumers can use the promise to defer dependent code until actual resolution. [17:30:08] yep [17:30:40] cool! \o/ yeah I was futzing around with the dependencies a lot yesterday [17:30:48] Fundraising-Backlog: 'Invalid ffname' daily digest for banner and email crofters - https://phabricator.wikimedia.org/T107169#1488698 (Ejegg) NEW [17:30:51] yeah that seems right to me. is it just a question just decoupling the window.geo stuff? [17:31:11] https://www.mediawiki.org/wiki/Extension:CentralNotice/Notes/Banner_controller_refactoring#Rollout_proposal:_RL_module_deprecation_and_queue_changes [17:31:45] cwdent: yeah, there are loads of other things on production that use it [17:32:00] And other teams that are better suited to babysit it [17:32:20] Yes, and when we ask people to add an explicit dependency... it should be to mw.core IMO, not to CentralNotice [17:32:35] or a lil' extension? [17:32:39] * awight shuffles off to add redundant input elsewhere ;) [17:32:50] (and the above doesn't actually mean we'll ever convince it to move out) [17:32:59] get a job! [17:33:00] :p [17:33:04] AndyRussG: make geoip its own extension? [17:33:26] cwdent: well, it could be... I mean, not today, one day... [17:33:27] I lingered at the 'rents house until the tender age of 19. Poor saps [17:34:07] cwdent: https://phabricator.wikimedia.org/T102848 [17:34:20] Heheh I was outta there at 17 [17:34:25] good move. [17:34:36] I accidentally went to the state school nearby [17:35:42] I'm not sure my Mom especially enjoyed the year I was busking around Europe and mostly incommunicado, at 19-20 yrs old [17:36:16] * AndyRussG teaches geoIP to sing "Yesterday" [17:36:59] hehe [17:37:02] lol [17:37:07] * cwdent gives geoIP a backpack and a dog [17:37:45] bug: geoIP is only returning country=XX? Ah yeah it left home [17:39:49] cwdent: awight: Here's an issue with making the CN startup module call a method in geoIP to make it do its initial processing: in the proposal I put up, CN moves to the bottom queue and geoIP stays in the top one [17:40:46] I do think I recall Krinkle saying moving geoIP to the bottom was OK, but for now I don't see much issue with keeping it top. It's pretty small, we don't know exactly everything that depends on it, and I'd rather not break too much stuff all at once... <_< [17:40:51] Jesus, if we're porting to mw-core, we could even have PHP process the cookie, and provide it as a RL global variable... [17:40:58] oh nope, nvm. [17:41:05] I always forget about caching. [17:41:48] awight: that's brilliant, yes! It can be processed in a RL module. In fact we want to make geo data available to PHP RL code... [17:42:08] But, but... [17:42:11] but caching? [17:42:18] caching in RL modules is 5 min [17:43:22] But we want to avoid running PHP, like at all. [17:45:05] Well, load.php wouldn't get called too much more [17:45:29] Anyway, I think we can farm it out and recommed it to the new owner [17:46:20] hehe I think you're looking at the new owner :) >_> [17:48:43] heh [17:49:10] AndyRussG: top queue vs bottom...does that mean loaded sync vs async? [17:52:54] cwdent: yes, and also determines order [17:53:08] so top queue is script tag in header? [17:53:12] top queue is sync and loads and executes before the page renders [17:53:14] yes [17:53:25] gotcha, and then lazy load other modules as needed? [17:53:43] bottom queue is script tag at the end of the page. But the mechanism that RL uses to fetch the modules is different [17:54:06] Have a look at the base HTML for any page, as it's received directly via the network request [17:54:54] You'll see two script tags with calls to mw.loader.load, one in the head and one at the bottom [17:55:30] The one in the head happens right away and it adds more script tags to the head itself, to actually fetch the modules listed there [17:55:45] That's why the top loaded ones are synchronous [17:55:53] i also see one writing a script tag that hits load.php in the bottom [17:56:05] ? [17:56:32] Ah hmm a bottom one writing a bottom script tage? [17:56:45] yep, just below loader.load [17:56:53] document.write("\u003Cscript src=\"//en.wikipedia.org/w/load.php? [17:58:03] cwdent: hm weird! Yeah I don't know what that's about [18:01:40] cwdent: I think this is where some of the magic actually happens: https://git.wikimedia.org/blob/mediawiki%2Fcore/a1b4859a6362cf7a1235f9a3dc0d978918dbc77c/resources%2Fsrc%2Fmediawiki%2Fmediawiki.js#L1123 [18:03:18] cool! [18:05:07] i'm going to get lunch and head to the office, back in a bit! [18:07:47] Fundraising Tech Backlog, Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM, Epic, Patch-For-Review: [epic] Upgrade Civi to 4.4 & integrate new reporting - https://phabricator.wikimedia.org/T77910#1488868 (awight) I'm still partial to doing an upgrade to 4.4, but please note that enough time h... [18:11:33] Fundraising Tech Backlog, Wikimedia-Fundraising-CiviCRM, MediaWiki-Vagrant: CRM module: Allow us to overwrite settings.php - https://phabricator.wikimedia.org/T107179#1488870 (awight) NEW [18:13:06] Fundraising Tech Backlog, Wikimedia-Fundraising-CiviCRM, MediaWiki-Vagrant: CRM module: Allow us to overwrite settings.php - https://phabricator.wikimedia.org/T107179#1488880 (awight) [18:24:23] (PS1) Ejegg: Remove RapidHTML AstroPay form [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227500 [18:29:26] Fundraising Sprint The Pogues, Fundraising-Backlog, Unplanned-Sprint-Work: Kick Silverpop export job - https://phabricator.wikimedia.org/T107184#1488961 (CCogdill_WMF) NEW [18:29:45] (PS39) AndyRussG: WIP - Don't merge but please review - Refactor client-side API and RL modules for banner display [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/221759 (https://phabricator.wikimedia.org/T100686) [18:37:37] cwdent|afk: awight|fud: https://www.mediawiki.org/wiki/Extension:CentralNotice/Notes/Banner_controller_refactoring#Smoke_and_unit_testing [18:39:32] Thanks andyrussg! [18:49:37] cwdent|afk: yw! [19:18:43] awight: cwdent|afk: added some functionality to test for display.hide. https://www.mediawiki.org/wiki/Extension:CentralNotice/Notes/Banner_controller_refactoring#Smoke_and_unit_testing [19:19:06] That's another part that was substantially rewritten (as opposed to being pretty copy-past-ish) [19:21:58] AndyRussG: the "PS39" column scares me a bit... since we're on a feature branch anyway, can we move towards merging this beast, and take the next steps in more granular commits? [19:24:37] ccogdill: would right now work for the Silverpop kickoff? [19:24:47] I think so awight, thanks! [19:24:48] fwiw, it takes about 2hr to complete. [19:24:50] ok, here goes... [19:24:51] yeah [19:25:40] ccogdill: also, we have an "export only" job if you only need to test the upload part... seems like that would be more efficient? [19:26:00] umm… I’m not sure [19:26:06] does that still have all the same column headers? [19:26:10] yep! [19:26:25] There are two main steps: 1) update stuff inside our databases. 2) send it to Silverpop [19:26:41] okay how about do the export only job and I’ll double check he doesn’t need the real one [19:27:11] Sure, I don't think there's any way Brian could even tell whether we run the update half or not... [19:27:15] so awight will that just be a replica of yesterday’s file? [19:27:26] yep! [19:27:29] well he sees # of rows and all that [19:27:35] yeah I think that’s fine, export only please! [19:27:43] thanks awight :) [19:27:55] hmm, I see where you're going, yeah maybe he wants to see different data than in the last file. [19:29:39] I’m not sure, honestly [19:30:00] if it doesn’t matter, go ahead and do the full one and that way I won’t have to ask you again [19:30:12] but if it’s taxing on the system, do the export only and I’ll see if that’s what he needed [19:30:32] I'll start w/ just an export, so we know for next time. [19:39:33] (PS1) Ejegg: Remove unused $value parameter from getErrorMessage [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227511 [19:39:35] (PS1) Ejegg: Use country-specific field names in error messages [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227512 (https://phabricator.wikimedia.org/T106137) [19:40:26] awight: ^^^ not exactly pretty, but should get us saying 'correct your CPF' instead of 'correct your fiscal number' [19:41:46] Fundraising Sprint ODB, Fundraising Sprint The Pogues, Fundraising-Backlog, Astropay Integration, Patch-For-Review: Update Brazil fiscal number to CPF - https://phabricator.wikimedia.org/T106137#1489421 (Ejegg) Pulling back from 'done' because we're still using the generic term in the error mes... [19:42:32] rad [19:43:16] (CR) Awight: [C: 2] Remove unused $value parameter from getErrorMessage [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227511 (owner: Ejegg) [19:43:37] (Merged) jenkins-bot: Remove unused $value parameter from getErrorMessage [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227511 (owner: Ejegg) [19:45:54] sorry, i can break out that 'calc' variable rename and the unused code cleanup [19:46:18] meh [19:50:32] awight: sorry for inducing fear! My idea was just that when we put a checkmark for having smoke tested something, we should note which patch set we did it on [19:51:20] We can add more columns if there are more patch sets, and if something is tested on one PS and there's no change in that part of the code in the next PS, then I think we can assume it's OK [19:51:30] exactly what I feared :p -- I'm hoping we'll be adding these tests in totally new commits [19:51:56] Jeff_Green: You around? [19:52:07] yowza [19:52:12] heyhey [19:52:38] what is shaking? [19:52:41] I was about to say "let's mess around with yubikeys" but mine is... not where I thought I left it. [19:52:44] ...one second. [19:52:46] :p [19:52:48] ha ok! [19:53:04] lol, /me phones home [19:53:14] awight: ah right! Mmm I meant for something smoked, not united [19:53:40] Jeff_Green: I wanted to ask about that... I'm curious if we'll be connecting to the external service, or going through the hell of hosting the key validator locally? [19:53:46] AndyRussG: hehe ok, got it. [19:53:53] awight: external service [19:53:54] s/united/unitted/ [19:54:06] or is it unknitted? [19:54:10] IMO reprogramming all the keys isn't worth the pain [19:54:20] yep. ok [19:54:31] Mostly curiousity. [19:54:50] here's hoping they don't do any server maintenance in early December! [19:55:27] What the What. It's gone. [19:55:33] It was right here yesterday. [19:55:37] Had my name on it and everything. [19:55:56] I do, however, have a small bag full of googly eyes. [19:56:00] :| [19:56:31] >_^ [19:56:41] Yep. [19:56:42] That. [19:57:21] Googly Authenticator? [19:57:45] That sounds almost real [19:58:20] GooglyAuth. [19:58:31] do you guys think these things are really tough enough to be promoted to key chain? [19:59:33] cwdent: no, but they're $20 to replace [19:59:49] s/but/and/ [20:00:45] Fundraising Sprint ODB, Fundraising Sprint The Pogues, Fundraising-Backlog, Astropay Integration, and 2 others: Validate CPF for AstroPay - https://phabricator.wikimedia.org/T106171#1489470 (Ejegg) Open>Resolved [20:01:12] Fundraising Sprint The Pogues, Fundraising-Backlog, Astropay Integration, Patch-For-Review: Parse AstroPay error codes / description and display appropriate messages to donor - https://phabricator.wikimedia.org/T106053#1489472 (Ejegg) Open>Resolved [20:01:26] Fundraising Sprint The Pogues, Fundraising-Backlog, Astropay Integration, Patch-For-Review: AstroPay gateway not incrementing order ID in some circumstances - https://phabricator.wikimedia.org/T106039#1489473 (Ejegg) Open>Resolved [20:01:40] Fundraising Sprint The Pogues, Patch-For-Review: Bug: JCB logo not always appearing in second position in Japan - https://phabricator.wikimedia.org/T106705#1489474 (Ejegg) Open>Resolved [20:03:13] Well, it seems to be gone. Hopefully this wasn't another stunt to demonstrate how easily things get stolen. [20:03:19] ...it wasn't even set up yet. [20:06:04] Connection to my hangouts computer just crapped out, be there as soon as I can. [20:06:56] K4-713: eep [20:07:34] Jeff_Green: I'm not too worried, unless I discover that I ate the thing in a fit of excitement. [20:07:57] ha yaaaa [20:08:08] I have not, incidentally, ruled that out. [20:17:57] Fundraising-Backlog, MediaWiki-extensions-CentralNotice, MediaWiki-extensions-Translate, Unplanned-Sprint-Work: New banner messages not added to message group - https://phabricator.wikimedia.org/T106856#1489517 (DStrine) [20:18:21] Fundraising Sprint N*E*R*D, Fundraising Sprint ODB, Fundraising-Backlog, MediaWiki-extensions-CentralNotice, and 3 others: Publishing translations for central notice banners fails - https://phabricator.wikimedia.org/T104774#1489518 (DStrine) [20:31:15] Hey awight|lulz cwdent do u want to chat about geoIP sometime? I guess now I'm confused about where you're thinking of going [20:31:33] yeah i was just thinking that [20:31:46] (PS1) Ejegg: Log unrecognized AstroPay errors at 'error' level [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227571 (https://phabricator.wikimedia.org/T106053) [20:32:01] Surely just due to my own stubbornness and thick skull, just wantint to understand [20:32:18] cwdent: maybe in a sec awight|lulz will be back at his desk and we can get on a quick chat again? [20:32:19] so i haven't used this promise lib before but what i was thinking is to _not_ resolve when the lookup fails [20:32:24] yeah good call [20:32:48] cwdent: ah that's the change you're thinking of? [20:32:57] then you can write the client code to handle either case however [20:33:31] yeah, to decouple the global variable and let the caller handle success/failure however [20:33:39] awight|lulz may be thinking something totally different though [20:34:27] cwdent: hmm, yeah letting the callers know about a failure seems cleaner. The CN patch has (as did legacy code) stuff to handle that case, but yes it's ad-hoc [20:35:31] What would you do with the global variable? My worry is that we can't make geoIP lookup call not set the global variable, or at least we couldn't without asking other teams to do it, and making us not have to do such is kinda the reason for removing it from CN [20:36:24] So the background call comes back with a script that sets window.Geo. [20:36:49] ah yeah, so i can't really imagine it without making other teams change their code to use the promise instead of window.Geo [20:37:05] the trade off might be that instead of a CN dependency [20:37:16] however since CN is on all the wikis anyway, does it matter? [20:37:29] is there code that needs geo ip that is not on the wikis? [20:37:45] CNis on all the wikis, but it matters 'cause it's bad design [20:38:09] yeah [20:38:18] definitely preferable to modularize [20:39:04] Yeah I think deprecating window.Geo is a much bigger task and not as urgent [20:39:54] i assume other extensions are hard coded to be looking there? [20:40:03] I'm sure, yeah [20:40:44] I put in the promise API just as a way to decouple CN and GeoIP and still keep the same functionality, since in the legacy code CN didn't do its stuff until GeoIP had finished any extra lookups it had to do [20:41:02] Previously other code just had to assume it was all ready [20:41:11] ah sure [20:41:17] yeah i think the promise is a great interface for this [20:41:49] awight: do you wanna get on the phone with me and AndyRussG again? [20:42:53] http://pastebin.com/7z9ZQPqw [20:43:32] yeah plenty of them [20:43:45] AndyRussG: tell me what you think about this... [20:43:48] sure, let's fon [20:43:53] Oh yeah, the other thing I noticed the other day, UniversalLanguageSelector also does its own geoIP lookup--from a slightly different URL! [20:43:56] kk [20:44:09] yow...does it parse that serialized cookie by hand? [20:46:03] By foot, actually [20:57:25] cwdent: https://git.wikimedia.org/blob/mediawiki%2Fextensions%2FCentralNotice/dcdabdcb64db9f2c1b030d484bed767b59aec512/modules%2Fext.centralNotice.bannerController%2FbannerController.js [20:57:43] Fundraising Sprint The Pogues, Fundraising-Backlog: Set up import for Major Gifts events payment/invitation tool - https://phabricator.wikimedia.org/T101191#1489763 (DStrine) [20:58:08] XenoRyet: just added major gifts tasks to sprint: https://phabricator.wikimedia.org/T101191 [20:58:12] Anne is cool with it [20:58:23] just wanted to confirm with her [21:01:25] dstrine: Cool, I'll go claim it. [21:01:58] Fundraising Sprint The Pogues, Fundraising-Backlog: Set up import for Major Gifts events payment/invitation tool - https://phabricator.wikimedia.org/T101191#1489790 (XenoRyet) a:XenoRyet [21:21:18] awight: you're able to take a peek at whether landing pages have been used at all recently? [21:22:23] Maybe that's something we could remove in a separate patch, and put it on the chane before this one [21:22:58] (CR) Awight: "Whew!" (3 comments) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227512 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [21:23:15] ejegg|afk: you want to go ahead with merge? ^^ [21:23:27] AndyRussG: sure, diving in now! [21:26:14] awight: cool, thanks much! [21:26:41] https://www.youtube.com/watch?v=1pcr06c3XYo&feature=youtu.be <-- School Bus Jumping 20 Motorcycles [21:32:37] ccogdill: So the export finished about 2 hours ago... fyi, it takes 15 minutes. lmk if I should run the full update + export! [21:33:06] will do! I haven’t gotten confirmation Brian got what he needed… so I’ll let you know! [21:45:45] (CR) Ejegg: "What a tangled web... I think I had to do it this way to limit the change to just one field." (2 comments) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227512 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [21:46:07] awight: some justification for the twistiness ^^ [21:47:54] (CR) Awight: [C: 2] Use country-specific field names in error messages (2 comments) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227512 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [21:48:18] (Merged) jenkins-bot: Use country-specific field names in error messages [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227512 (https://phabricator.wikimedia.org/T106137) (owner: Ejegg) [21:48:44] thanks! [21:49:35] if you have another minute, I thought this 3-line logging one might be worth having for the next AP test too: https://gerrit.wikimedia.org/r/227571 [21:50:20] rebase conflict ^ [21:50:28] ooh, will fix [21:51:38] (PS2) Ejegg: Log unrecognized AstroPay errors at 'error' level [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227571 (https://phabricator.wikimedia.org/T106053) [21:53:15] thanks! [21:53:41] (CR) Awight: [C: 2] Log unrecognized AstroPay errors at 'error' level [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227571 (https://phabricator.wikimedia.org/T106053) (owner: Ejegg) [21:53:50] and thank you! [21:56:17] (Merged) jenkins-bot: Log unrecognized AstroPay errors at 'error' level [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227571 (https://phabricator.wikimedia.org/T106053) (owner: Ejegg) [21:58:22] (PS2) Awight: Remove RapidHTML AstroPay form [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227500 (owner: Ejegg) [21:59:10] (CR) Awight: [C: 2] Remove RapidHTML AstroPay form (1 comment) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227500 (owner: Ejegg) [21:59:31] (Merged) jenkins-bot: Remove RapidHTML AstroPay form [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227500 (owner: Ejegg) [22:00:49] thanks for the CR blitz awight! Taking a peek at your vagrant fixes... [22:01:06] I never did get CRM to install correctly... [22:01:22] hehe. not exactly trivial [22:01:47] we have some new scripts in crm/bin that I was imagining we could lean on. [22:01:52] DRY and stuff [22:01:57] still feel like a noob with vagrant. Does disabling a role uninstall stuff? [22:02:01] no [22:02:10] disable then provision? [22:02:15] well... yeah I think it does after you run provision [22:02:21] ok, thanks! [22:02:27] I usually destroy the box to start fresh, though [22:02:35] hey awight - can we chat sometime about your convo with romaine? i'd like to collect notes somewhere [22:02:36] but... you have to manage your git repos manually [22:02:40] ooh, guess that's the clean way [22:02:47] atgo: totally. Most of it is in Phab cards [22:02:58] I've cc'd him, if that helps with searching. [22:02:58] ah! great! i missed those coming in [22:03:06] cool.. what's his nick? [22:03:11] "Romaine" [22:03:27] perfect. danke [22:04:25] so there's nothing for centralnotice? [22:04:30] https://phabricator.wikimedia.org/maniphest/query/slZvaYeQxjUE/#R [22:07:09] (PS1) Ejegg: Merge branch 'master' into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/227587 [22:07:48] (CR) Ejegg: [C: 2] Merge branch 'master' into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/227587 (owner: Ejegg) [22:09:44] (PS1) Ejegg: Update DonationInterface for deploy [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/227588 [22:10:13] (CR) Ejegg: [C: 2 V: 2] Update DonationInterface for deploy [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/227588 (owner: Ejegg) [22:12:14] atgo: pretty much. note, https://meta.wikimedia.org/wiki/User:Romaine/Navigation [22:12:40] atgo: I have some longer notes that include everything we talked about, Phab tasks are things I decided were possible to act on. [22:12:55] ah ok [22:13:23] I also gave him some example code to play with, which satisfied some other feature requests, for country-based things like wiki loves X [22:14:19] atgo: he wanted help figuring out how and who to ask about CN things in the future... not sure I entirely answered that one. [22:14:40] ahh yeah [22:14:52] it's a bit tricky [22:14:57] some of the questions he had were really things for megan [22:15:06] so... for tech stuff he should make tasks into the phab board [22:15:21] ah, right, here's one of the more important things we talked about: any time we roll out a new feature in the future, it should come with a reference implementation. Example banner, sample code... [22:27:21] Fundraising Sprint The Pogues, Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Remove "Automatically create landing page link" feature - https://phabricator.wikimedia.org/T98747#1490009 (awight) [22:27:43] awight: YES. we should definitely work on CN best practices. megan and luis are already working on some of that [22:27:51] and now i must go to appointment [22:32:10] awight|afk: mmm reference implementation, great idea [22:34:02] AndyRussG: writing this test, mw.Geo is available but i don't see mw.centralNotice.setWindowGeo() [22:34:34] i was thinking i should fire it manually (sans ajax req) to observe behavior [22:34:36] cwdent: you should have window.Geo and mw.geoIP [22:35:21] setWindowGeo() is now a private function that is fired automatically when the module is first loaded [22:35:36] (see line 181) [22:35:45] ah, private, of course [22:35:51] so i can't really fire it by hand [22:35:51] cwdent: you can mock out $.ajax [22:35:57] cwdent: currently no [22:36:10] yeah, but since the promise is (probably) already resolved bythe time the tests run [22:36:38] by the time i'd noop that function [22:36:51] do you have a better idea? [22:36:54] cwdent: hmmm interesting point [22:37:20] Well there is qunit setup code. If we're luck, it runs before the module under test is loaded! [22:37:53] check out tests/qunit/subscribing/ext.centralNotice.display.tests.js [22:38:40] I doubt it, the RL modules are loaded normally on that page [22:39:03] yeah that's what it looked like to me [22:39:15] the test code is not encapsulated from the page load [22:39:18] How about, clear the window.Geo variable in qunit setup? [22:39:35] hmm, then call getPromise? [22:40:46] hrm, i think it will be already resolved won't it? [22:41:10] cwdent: arg! the setup code is called _after_ the module is loaded. (Just confirmed in browser debuggr) [22:41:31] Can you clear out the promise variable, too? [22:42:28] It would have to be a property on the mw.geoIP object... [22:42:38] it's in the "constructor" for the jquery plugin right? [22:42:40] Yeah, it ain't [22:43:50] Ajax? You can just say $.ajax = [... mock code ], or the same for $.Deferred if u wish [22:44:13] The problem is setting up and setting a cookie before the module executes [22:45:19] yeah, aren't i just seeing the results of the qunit tests running from a wiki page? [22:45:25] as far as why the module is already loaded [22:45:50] My suggestion is not to try to beat the module setup code. Instead, reinitialize it from qunit setup or in your test case. [22:45:50] cwdent: well yes, though there are ways to load modules... [22:46:31] Encapsulation and QUnit don't always get along so good [22:46:31] reinitializing it would involve: nulling window.Geo and mw.geoIP.deferred (var scope would have to be moved) [22:47:05] wouldn't you have to kick RL or something? [22:47:14] awight: we'd have to expose setWindowGeo(), currently private, just for the sake of testing [22:48:44] AndyRussG: Not necessarily. If the promise is null, then getPromise should fire the initialization code again. [22:49:17] awight: not currently built like that, could be done tho [22:49:30] if we null mw.geoIP i think getPromise dies with it [22:50:10] oh you said .deferred [22:50:54] oh hey square import bug :-\ [22:51:40] ? [22:52:07] https://duckduckgo.com/?q=square+import+bug&t=ffsb [22:52:36] hehe AndyRussG it's a civi importer i wrote [22:52:39] a wild bug appears [22:53:31] * ejegg was caught importing square bugs from Costa Rica [22:53:32] Ah! Hmmm only tame bugs in my office! [22:53:43] ejegg: that's square-bug import [22:53:51] ah, my mistake! [22:54:14] heh probably better that way, import taxes are lower [22:54:20] Wikimedia-Fundraising-CiviCRM: Add Square to the list of gateways in the Gateway Reconciliation report - https://phabricator.wikimedia.org/T107224#1490090 (awight) NEW [22:54:32] http://msucares.com/news/print/agnews/an13/images/20130214_pests_bug.jpg [22:55:17] !log updated payments from bdc4afaa7699904ac30c1f6d3bb3fbc6bac5e87e to fd0060bf86777ee6b7acd205d134066356da69e8 [22:55:22] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [22:55:22] I'm hesitant to make geoIP wait to initialize because CN is moving to the bottom queue and we don't know if anything in the top queue will try to grab window.Geo directly before CN gets the promise and initializes it [22:55:40] Heh that is pretty square! [22:56:24] at least a trapezoid [22:56:41] cwdent: awight: what about putting a JS getter on window.Geo? So initialize on either window.Geo access _or_ getPromise(), maybe? [22:57:09] KISS :p [22:57:24] Fundraising Sprint ODB, Fundraising Sprint The Pogues, Fundraising-Backlog, Astropay Integration, Patch-For-Review: Update Brazil fiscal number to CPF - https://phabricator.wikimedia.org/T106137#1490099 (Ejegg) Open>Resolved [22:57:42] what about just a way to kick it from the outside and say go again [22:58:19] is the promise interface currently in use anywhere? [22:58:23] since it loads in the header [22:58:40] seems like it wouldn't effectively defer anything [23:03:09] cwdent: awight: I just asked Krinkle about this in the #wikimedia-dev channel, if u want to join :) [23:03:34] cwdent: no this promis interface is totally new [23:05:42] (PS1) Ejegg: Map some GC codes to message about transient errors [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227606 [23:06:06] Wheee, PDF grepping [23:13:02] Fundraising Tech Backlog, Wikimedia-Fundraising-CiviCRM: Gateway reconciliation might not be recognizing Square refunds - https://phabricator.wikimedia.org/T107228#1490149 (awight) NEW [23:20:41] (CR) Awight: [C: 2] "Hahaha: so you can stop memorizing the codes?" [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227606 (owner: Ejegg) [23:21:07] (Merged) jenkins-bot: Map some GC codes to message about transient errors [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227606 (owner: Ejegg) [23:25:17] (PS1) Ejegg: Log original message for 'Blocking validation problems' [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227613 [23:25:41] (CR) jenkins-bot: [V: -1] Log original message for 'Blocking validation problems' [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227613 (owner: Ejegg) [23:27:03] awight: fwiw square refunds take the place of the original contribution rather than complementing it [23:27:13] they are for the same value and onlythe status changes [23:27:27] but i don't know if that has anything to do with the normalized data [23:27:34] unless it's getting normalized wrong [23:30:12] anyway i'm going to head home but i'll be on later, hit me up if i can do anything [23:32:16] cwdent|afk: ok, that explains it then. [23:32:49] (Abandoned) Ejegg: Log original message for 'Blocking validation problems' [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/227613 (owner: Ejegg) [23:33:09] i tried to write it to make the data look at the same as the others, using mark_refund [23:33:13] Fundraising Tech Backlog, Wikimedia-Fundraising-CiviCRM: Gateway reconciliation might not be recognizing Square refunds - https://phabricator.wikimedia.org/T107228#1490226 (awight) ``` 16:27 < cwdent> awight: fwiw square refunds take the place of the original contribution rather than com... [23:33:36] cwdent|afk: it was stupidly fragile reporting code, it's good that this is coming up now... [23:34:05] is it looking at the source files rather than the normalized messages? [23:35:43] 502s from gmail [23:35:44] i win [23:36:44] anyway i am not convinced this isn't my fault so i'll try to look into it later [23:38:21] Fundraising Tech Backlog, Wikimedia-Fundraising-CiviCRM: Gateway reconciliation might not be recognizing Square refunds - https://phabricator.wikimedia.org/T107228#1490233 (awight) Right here: https://git.wikimedia.org/blob/wikimedia%2Ffundraising%2Fcrm/82dbd9813329e0c8b883dc56574a88a17402be33/sites%2Fal... [23:38:53] cwdent|afk: yeah, now I'm thinking the reporting code is OK and it's just a matter of recording negative amounts for refunds [23:43:39] (PS4) Awight: WIP Orphan slayer reads from frack Redis [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/226947 (https://phabricator.wikimedia.org/T99017) [23:44:08] (CR) jenkins-bot: [V: -1] WIP Orphan slayer reads from frack Redis [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/226947 (https://phabricator.wikimedia.org/T99017) (owner: Awight) [23:58:06] bassoon!