[03:46:21] (Merged) jenkins-bot: Fix paypal EC transformer list [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/335162 (https://phabricator.wikimedia.org/T134445) (owner: Ejegg) [03:49:46] (Merged) jenkins-bot: Fix dead 'Continue' button on paypal EC form [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/335166 (https://phabricator.wikimedia.org/T156692) (owner: Ejegg) [05:05:33] (PS3) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:09:08] (CR) jerkins-bot: [V: -1] Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) (owner: Eileen) [05:14:08] (PS4) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:17:22] (PS5) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:21:09] (CR) jerkins-bot: [V: -1] Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) (owner: Eileen) [05:22:14] (PS6) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:25:26] (PS7) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:29:05] (CR) jerkins-bot: [V: -1] Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) (owner: Eileen) [05:34:28] (PS8) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:38:16] (CR) jerkins-bot: [V: -1] Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) (owner: Eileen) [05:40:35] (PS9) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [05:44:32] (CR) jerkins-bot: [V: -1] Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) (owner: Eileen) [05:46:24] (PS10) Eileen: Matching gifts import. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) [14:23:05] Fundraising-Backlog, Analytics-Kanban, Patch-For-Review: Productionize banner impressions druid/pivot dataset - https://phabricator.wikimedia.org/T155141#2986311 (mforns) @AndyRussG @JAllemandou I have added the 'country_matches_geocode' field to the banner_activity jobs, as per your suggestion. See... [14:25:34] Fundraising-Backlog, Analytics-Kanban, Patch-For-Review: Productionize banner impressions druid/pivot dataset - https://phabricator.wikimedia.org/T155141#2986319 (JAllemandou) Works for me @mforns, it seems indeed the best choice you made (as usual ;) [14:27:57] Fundraising-Backlog, Analytics-Kanban, Patch-For-Review: Productionize banner impressions druid/pivot dataset - https://phabricator.wikimedia.org/T155141#2934689 (Ottomata) BTW, we can pause deletion jobs for a bit without violating privacy policy, if that helps! [14:37:42] Fundraising-Backlog, Analytics-Kanban, Patch-For-Review: Productionize banner impressions druid/pivot dataset - https://phabricator.wikimedia.org/T155141#2986358 (mforns) @Ottomata Good idea! [15:22:35] Fundraising-Backlog, Analytics-Kanban, Patch-For-Review: Productionize banner impressions druid/pivot dataset - https://phabricator.wikimedia.org/T155141#2986529 (Ottomata) Ok, done in https://gerrit.wikimedia.org/r/#/c/335237/ I've extended the refined webrequest retention to 90 days. We need to s... [16:10:01] Wikimedia-Fundraising-Campaigns: WMF Fundraising - 16/17 - Sweden - https://phabricator.wikimedia.org/T156815#2986766 (Jseddon) [16:12:22] Wikimedia-Fundraising-Campaigns: Create survey form for Swedish Fundraiser 1617 - https://phabricator.wikimedia.org/T156816#2986779 (Jseddon) [16:13:19] Wikimedia-Fundraising-Campaigns: Create Survey Banner for 1617 Swedish Fundraiser - https://phabricator.wikimedia.org/T156817#2986794 (Jseddon) [16:14:03] Wikimedia-Fundraising-Campaigns: Send banner text for translations - https://phabricator.wikimedia.org/T156818#2986808 (Jseddon) [16:14:58] Wikimedia-Fundraising-Campaigns: Get survey text translated for Swedish Fundraiser 1617 - https://phabricator.wikimedia.org/T156819#2986822 (Jseddon) [16:16:19] Wikimedia-Fundraising-Campaigns: WMF Fundraising - 16/17 - Sweden (February 7) - https://phabricator.wikimedia.org/T156815#2986843 (Jseddon) [16:26:46] Wikimedia-Fundraising-Campaigns: Reader and Editor Fundraising survey - https://phabricator.wikimedia.org/T156822#2986887 (Jseddon) [16:27:13] Wikimedia-Fundraising-Campaigns: Reader and Editor Fundraising survey - https://phabricator.wikimedia.org/T156822#2986887 (Jseddon) [16:28:03] Wikimedia-Fundraising-Campaigns: WMF Fundraising - 16/17 - Sweden (February 7) - https://phabricator.wikimedia.org/T156815#2986766 (Jseddon) [16:28:05] Wikimedia-Fundraising-Campaigns: Reader and Editor Fundraising survey - https://phabricator.wikimedia.org/T156822#2986887 (Jseddon) [16:28:07] Wikimedia-Fundraising-Campaigns: Create Survey Banner for 1617 Swedish Fundraiser - https://phabricator.wikimedia.org/T156817#2986903 (Jseddon) [16:28:31] Wikimedia-Fundraising-Campaigns: Update FR Ideas page with swedish banners - https://phabricator.wikimedia.org/T156823#2986906 (Jseddon) [16:33:17] Wikimedia-Fundraising-Campaigns: Notify Community of Fundraising Campaign - https://phabricator.wikimedia.org/T156824#2986940 (Jseddon) [16:34:17] Wikimedia-Fundraising-Campaigns: Notify chapter of fundraising campaign - https://phabricator.wikimedia.org/T156825#2986955 (Jseddon) [17:15:25] Fundraising Sprint Baudelaire Bowdlerizer, Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Slow log in - looks like it's drupal cron - https://phabricator.wikimedia.org/T155084#2987074 (CaitVirtue) 31 second load this this morning, from the office [17:29:35] (CR) Ejegg: [C: 2] "Looks good!" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/329654 (https://phabricator.wikimedia.org/T152474) (owner: Eileen) [17:33:36] (Merged) jenkins-bot: Add datachecks extension. [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/329654 (https://phabricator.wikimedia.org/T152474) (owner: Eileen) [17:42:38] fundraising-tech-ops, Operations, Traffic: Fix nits in Fundraising HTTPS/HSTS configs in wikimedia.org domain - https://phabricator.wikimedia.org/T137161#2987139 (Jgreen) >>! In T137161#2972789, @BBlack wrote: > What about benefactorevents / eventdonations? These are hosted externally by our contrac... [17:42:52] fundraising-tech-ops, Operations, Traffic: Fix nits in Fundraising HTTPS/HSTS configs in wikimedia.org domain - https://phabricator.wikimedia.org/T137161#2987140 (Jgreen) a:Jgreen [17:58:10] fundraising-tech-ops, Operations, Traffic: Fix nits in Fundraising HTTPS/HSTS configs in wikimedia.org domain - https://phabricator.wikimedia.org/T137161#2987211 (Jgreen) @CCogdill_WMF we'd like to make some adjustments to the benefactorevents and eventdonations webserver config to bring them inline... [18:00:31] fr-tech: The best laid plans of mice and men are held up in the legal department. [18:00:31] -- discuss. [18:48:45] (PS1) AndyRussG: Add mediawiki to list of wikis [extensions/CentralNotice] (wmf_deploy) - https://gerrit.wikimedia.org/r/335263 (https://phabricator.wikimedia.org/T155997) [18:49:40] (CR) AndyRussG: [C: 2] Add mediawiki to list of wikis [extensions/CentralNotice] (wmf_deploy) - https://gerrit.wikimedia.org/r/335263 (https://phabricator.wikimedia.org/T155997) (owner: AndyRussG) [18:51:48] fr-tech matt_flaschen cherry-picked the patch to target mediawiki.org to go on the MW deploy train today [18:52:14] (Merged) jenkins-bot: Add mediawiki to list of wikis [extensions/CentralNotice] (wmf_deploy) - https://gerrit.wikimedia.org/r/335263 (https://phabricator.wikimedia.org/T155997) (owner: AndyRussG) [18:52:15] good stuff! [18:52:26] It's just a wee change [18:52:39] Tested locally in the order that deploy + config change should go out, should work fine [18:52:43] srishakatux: looks like you'll be able to use CentralNotice for your mediawiki.org announcment shortly! [19:28:28] ejegg: https://phabricator.wikimedia.org/T131274 - looks like all the patches for this have merged and deployed [19:28:43] any reason not to close that one? [19:29:59] cwd ah, there's still some cleanup we could do, like stop saying 'stomp' in method names, and get rid of some of the message cruft in SmashPig [19:30:38] ah ok [19:31:20] https://sites.google.com/site/santafecoding/ [19:31:54] is that a project you're involved with? [19:32:01] not yet! [19:32:30] heard about it on the nmglug list [19:34:52] (PS1) Ejegg: Base class for Ingenico payments using SDK and CurlWrapper [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/335269 [19:35:07] cwd ok, there's yet another flavor ^^^ [19:35:53] using our own cURL wrapper so we can share header, timeout, retry, etc logic across all gateways [19:36:01] but still using the Ingenico SDK [19:36:33] (CR) jerkins-bot: [V: -1] Base class for Ingenico payments using SDK and CurlWrapper [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/335269 (owner: Ejegg) [19:37:14] Anyway, I think that OutboundRequest and CurlWrapper patch can be useful with or without the SDK, so they're worth reviewing: https://gerrit.wikimedia.org/r/334453 [19:38:32] yeah i like the look of this pretty well [19:39:45] (PS13) Ejegg: Add cURL wrapper [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/334453 [19:40:11] k, I'll move the SDK version of bank lookup on top of that and do some smoke testing [19:43:13] also, I'll need to make the PHP5.3 tests non-voting to use the SDK [19:45:48] argh i forgot about that [19:46:07] i don't think we've burned that bridge yet, maybe we should not [19:48:40] or maybe it's worth it, since those upgrades are coming [19:50:14] cwd does this look right? https://gerrit.wikimedia.org/r/335271 [19:50:57] well, we could start out going the no-SDK route [19:51:15] and switch to the SDK if we find some operations are really annoying to code ourselves [19:51:30] seems slightly easier than starting out going with the SDK and switching off [19:56:20] any opinion cwd ^^ ? [19:57:08] well yeah [19:57:26] i guess i'm imagining using the SDK as foundation of a relatively small web app [19:57:39] rather than just wrapping curl [19:57:55] (PS2) Ejegg: Base class for Ingenico payments using SDK and CurlWrapper [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/335269 [19:57:58] otherwise it just seems like hooking the barges together [19:58:16] smashpig+sdk [19:58:43] err, a different web app for each payment processor? [19:59:17] i guess it depends on the state of the particular SDK or API [19:59:21] (CR) jerkins-bot: [V: -1] Base class for Ingenico payments using SDK and CurlWrapper [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/335269 (owner: Ejegg) [20:00:54] having not actually used it, the ingenico SDK seems like it has a fairly well defined set of responsibilities [20:00:56] so I pictured SmashPig as giving the front end a uniform way to make calls to payment processors, and a uniform way to configure logging, http behavior, etc [20:01:12] whereas smashpig has all the responsibilities [20:01:24] including a lot of overlap with the sdk [20:02:19] right, if we're using the SDK, SmashPig is basically an adaptor [20:03:07] so that in the future when we want to make recurring payments code in a Civi extension or something, we can write something that works for multiple processors [20:03:07] if DI is the front end, and the SDK handles communication, we pretty much just need a controller layer [20:03:11] that can talk to the queues and stuff [20:03:19] and some DBs? [20:04:13] (PS1) Eileen: Git Ignore cache directory [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/335272 [20:06:22] sure, a controller layer that gives you some uniformity across processors [20:09:04] So, I'd like to have both uniformity in calls from the frontend and in some low-level configuration [20:09:40] Starting with bank lookups is a bad case for front-end uniformity since there aren't a lot of processors that deal with that [20:09:52] heh [20:10:01] yeah [20:10:27] but maybe there should be a generic BankPaymentProvider interface to mark that you support lookups [20:11:51] if we only know the specifics of one case it might be too early for a generic interface [20:12:03] Anyway, the cURL wrapper stuff gives us some uniformity in making the requests at least [20:12:22] by implementing the ingenico connector? [20:13:40] yah, or by adding that adapter that uses the common CurlWrapper to provide ingenico's interface: https://gerrit.wikimedia.org/r/335269 [20:32:31] fundraising-tech-ops: configure TLS for fundraising syslog collection - https://phabricator.wikimedia.org/T142994#2987665 (Jgreen) I was going to do this by switching the existing 10514/tcp listener from imtcp to imptcp, and enabling imtcp on 6514/tcp with gtls. But indium is still Precise and the ancient rs... [20:32:55] fundraising-tech-ops: replace indium (eqiad fundraising logger) with new hardware running jessie - https://phabricator.wikimedia.org/T145116#2987667 (Jgreen) [20:32:57] fundraising-tech-ops: configure TLS for fundraising syslog collection - https://phabricator.wikimedia.org/T142994#2987666 (Jgreen) [20:36:27] (CR) Ejegg: [C: -1] "Coming along, still needs a few changes" (4 comments) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/330635 (owner: Cdentinger) [20:44:20] ejegg: is ^^ a thing where you already know how it should look and could knock it out in an hour? if so feel free to cause i have been having trouble finding the type of uninterrupted time i need to get my head fully inside donationinterface [20:44:35] if not of course leave it be and i will get to it asap [20:45:07] heh, I think I had a pretty good idea of it once upon a time [20:45:14] digging into more crm CR right now [20:45:31] cool cool, yeah there was a time a few weeks ago when i knew what to do :S [20:45:56] * cwd|brb actual brb [21:04:52] fundraising-tech-ops: upgrade samarium from precise to jessie - https://phabricator.wikimedia.org/T156848#2987733 (Jgreen) [21:08:01] (CR) Ejegg: [C: -1] "Looks pretty solid! A couple of suggestions inline." (5 comments) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/334235 (https://phabricator.wikimedia.org/T115044) (owner: Eileen) [21:14:02] fundraising-tech-ops, Operations, Traffic: Fix nits in Fundraising HTTPS/HSTS configs in wikimedia.org domain - https://phabricator.wikimedia.org/T137161#2987772 (CCogdill_WMF) Thanks for the ping @Jgreen, we're looking at it. [21:23:31] fundraising-tech-ops: upgrade samarium from precise to jessie - https://phabricator.wikimedia.org/T156848#2987778 (Jgreen) [21:24:39] fundraising-tech-ops: upgrade samarium from precise to jessie - https://phabricator.wikimedia.org/T156848#2987733 (Jgreen) [21:37:14] fundraising-tech-ops: set up SSL cert monitoring for benefactorevents.wm.o - https://phabricator.wikimedia.org/T156850#2987822 (Jgreen) [21:37:27] fundraising-tech-ops, Operations: set up SSL cert monitoring for benefactorevents.wm.o - https://phabricator.wikimedia.org/T156850#2987838 (Jgreen) [21:44:23] fundraising-tech-ops: upgrade samarium from precise to jessie - https://phabricator.wikimedia.org/T156848#2987886 (Jgreen) [21:50:56] Fundraising Tech Backlog: decide whether banner screenshot is still usable/useful - https://phabricator.wikimedia.org/T156853#2987911 (Jgreen) [21:51:37] fundraising-tech-ops: upgrade samarium from precise to jessie - https://phabricator.wikimedia.org/T156848#2987927 (Jgreen) [21:51:39] Fundraising Tech Backlog: decide whether banner screenshot is still usable/useful - https://phabricator.wikimedia.org/T156853#2987928 (Jgreen) [21:53:19] Fundraising Tech Backlog, Fundraising-Backlog: decide whether banner screenshot is still usable/useful - https://phabricator.wikimedia.org/T156853#2987930 (DStrine) [22:04:52] Fundraising-Backlog, fundraising-tech-ops: upgrade samarium from precise to jessie - https://phabricator.wikimedia.org/T156848#2987974 (DStrine) [22:08:32] Fundraising-Backlog, MediaWiki-extensions-CentralNotice: "remove all projects from a campaign" doesn't work - https://phabricator.wikimedia.org/T156065#2987987 (ggellerman) p:Triage>Normal [22:11:37] Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Special:CentralNoticeLogs 'bannercontent' logging issues - https://phabricator.wikimedia.org/T155385#2987991 (DStrine) [22:11:39] Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Special:CentralNoticeLogs 'bannercontent' logging issues - https://phabricator.wikimedia.org/T155385#2987992 (ggellerman) p:Triage>Normal [22:13:51] Fundraising-Backlog, MediaWiki-extensions-CentralNotice, Easy, I18n: All messages in CentralNotice are defaulted to English regardless of content language - https://phabricator.wikimedia.org/T18321#2987996 (ggellerman) [22:36:49] Fundraising-Backlog, FR-Smashpig, Spike: Spike: investigate smashpig next steps - https://phabricator.wikimedia.org/T156863#2988148 (DStrine) [22:56:55] (CR) Cdentinger: "After staring for awhile I tend to agree that, if we are going to use SmashPig, the SDK is superfluous. In connection&execute it basically" [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/335269 (owner: Ejegg) [22:59:23] (CR) Ejegg: "Yeah, the big difference between this and the no-SDK branch is that the SDK is doing all of the signature calculations in this one. With t" [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/335269 (owner: Ejegg) [23:03:40] ejegg: everything that happens in OutboundRequest, it seems like that is the stuff that the SDK could provide [23:09:14] (PS1) Ejegg: Fix paypal result routing [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/335371 (https://phabricator.wikimedia.org/T152626) [23:09:39] Fundraising Sprint Baudelaire Bowdlerizer, Fundraising-Backlog, FR-PayPal-ExpressCheckout, FR-Paypal, Patch-For-Review: PayPal EC thank you is using full locale rather than language code - https://phabricator.wikimedia.org/T152626#2988340 (Ejegg) a:Ejegg [23:10:40] cwd ah, probably, I was definitely creating it with the thought that it would be used in non-SDK situations [23:11:35] and 'cause I thought it would be weird to have a static execut method on CurlWrapper that looks up a config object which may or may not be a CurlWrapper and calls the instance method [23:12:08] Since I wanted there to be a single place that the real curl / fake curl injection happens [23:12:12] hmm yeah, i guess that's why i am thinking outside the context of smashpig [23:12:42] the buy-in for smashpig is not cheap, with the config and context and so on [23:13:03] if we're fine adding dependencies, omnipay uses Guzzle for the whole outbound request [23:13:38] personally i am happy to add dependencies if they are working and supported [23:14:10] i like to avoid being responsible for things whenever possible :P [23:16:15] my ideal web application is basically a config file for some dependencies [23:16:36] heh. I just feel like our cURL needs are not so complex as to need guzzle [23:17:22] no need for async, streams, cookies, middleware [23:17:43] oh huh, guzzle now says they require php 5.5, too [23:17:43] just reading about it [23:18:27] it seems like it would be nice if you were starting from scratch [23:19:34] but the ingenico sdk seems to have a pretty light touch, just an interface for packaging up some php basics and some helpers for the stupid stuff [23:20:00] but i do think that baking it into smashpig could get ugly [23:22:24] nice how they have no other dependencies [23:24:34] yeah i actually think it's a nice use of interfaces [23:24:52] in code written to be customized [23:25:10] right, they had a pretty good idea what you'd want to change [23:26:07] the example default connection is not too cringy [23:26:45] but the hand wavy part about not using smashpig...there is of course a lot to unpack there [23:27:32] I mean, we could have our mediawiki extension call on the SDK directly, but I think that'll hold us back from extracting the control logic [23:29:12] what are the main advantages of extracting the control logic? [23:29:43] being able to use the same code in mediawiki and civicrm, without this really silly dependency we have now [23:29:59] I will be really happy when we can delete WmfFramework [23:30:15] ah yes. what if civi just used the sdk too? [23:30:31] also possible [23:30:55] or perhaps they could share a shim that was more minimal [23:31:11] civi would use it for recurring? [23:31:19] but if we can get a standard interface to things like doRecurringCharge(), we could re-use all the date / retry / cancel logic between gateways [23:32:54] what about implementing them separately and generalizing at the end? then you really know which cases to optimize for [23:33:05] and what things overlap [23:35:22] heh, I think we've been doing that for the past few years [23:36:14] OK, and just for our use case, it will be great when we can keep all the payment-related configuration in one place [23:36:43] and the mediawiki LocalSettings.php is purely about appearances, page whitelists, etc [23:36:54] ha yeah [23:37:04] that file is...important [23:37:54] and duplicated in a bunch of places now... e.g. fraud settings are used in the frontend and in smashpig jobs [23:38:04] it would be great if all of that stuff just used the smashpig settings [23:39:01] so... at this point, I'm happy to try this with or without the SDK [23:39:41] I just really want to pull the control logic apart from the request / session handling / i18n / forms logic [23:41:03] atomise most of the 'F' functions in this report: https://scrutinizer-ci.com/g/wikimedia/mediawiki-extensions-DonationInterface/ [23:41:44] heh [23:42:03] yeah definitely [23:42:07] DI should just provide the forms [23:43:57] so I figure this ingenico re-do is our best chance this year [23:44:25] i agree [23:45:05] I was kind of hoping to get the bank payments in SmashPig before the NL campaign, just to start playing with some actual logic in there beyond the lookup [23:45:53] if the SDK handled the whole API layer, smashpig would need to provide config values, write to the queues, and what other stuff? [23:46:38] our-side fraud checks often involve the results of one API call and influence whether another happens [23:47:54] ah yeah, fraud checks [23:49:32] well, I'm going to get some dinner. Eager to hear any feedback! [23:49:39] it would be neat if we had a "fraud checker" [23:49:50] that was a composable piece [23:49:52] cwd yeah, totally separate lib [23:49:56] yeah [23:49:56] sounds good to me [23:50:19] i'll write some more thoughts down [23:50:23] have a good dinner! [23:50:25] ty