[00:24:10] Fundraising research, Analytics-Backlog, Research-and-Data: What's our projected ability to fundraise in the coming years - https://phabricator.wikimedia.org/T107606#1559431 (ggellerman) @DarTar I think that there was some confusion around scope/requirements suggesting that this card might require mor... [01:17:25] (CR) Awight: "Safety notice: if we think this is flaky, please add some silly error handling that will gracefully mw.log and then avoid JS errors. Unca" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [01:48:50] (CR) AndyRussG: Banner history logger campaign mixin (2 comments) [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [01:58:25] (PS1) Awight: Interpret Predis status codes [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/232885 [02:09:10] (PS2) Awight: Interpret Predis status codes [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/232885 (https://phabricator.wikimedia.org/T109527) [02:14:28] (CR) AndyRussG: Banner history logger campaign mixin (1 comment) [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [02:22:53] (CR) Awight: [C: 2] Log real GC error on validation problem [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232761 (https://phabricator.wikimedia.org/T107845) (owner: Ejegg) [02:23:27] (Merged) jenkins-bot: Log real GC error on validation problem [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232761 (https://phabricator.wikimedia.org/T107845) (owner: Ejegg) [04:36:03] (PS1) Ejegg: Cache choices retrieved from API or DB [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/232897 [04:37:10] (CR) jenkins-bot: [V: -1] Cache choices retrieved from API or DB [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/232897 (owner: Ejegg) [06:37:37] (CR) Awight: [C: -1] "I vaguely remember that we decided to remove a similar optimization, because the calls happen from separate processes, so all we would get" [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/232897 (owner: Ejegg) [07:43:17] (CR) Awight: [C: 2] "Really nice to see something built on top of the framework you've been writing! The banner history module is tres elegant." (10 comments) [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [07:44:11] (Merged) jenkins-bot: Banner history logger campaign mixin [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [09:01:34] (PS1) Awight: Consolidate slayer logging; general cleanups [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/232905 (https://phabricator.wikimedia.org/T107851) [09:01:56] (PS1) Awight: Consolidate slayer logging; general cleanups [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232906 (https://phabricator.wikimedia.org/T107851) [09:02:20] (Abandoned) Awight: Consolidate slayer logging; general cleanups [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/232905 (https://phabricator.wikimedia.org/T107851) (owner: Awight) [09:10:43] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog, MediaWiki-extensions-DonationInterface, Patch-For-Review: Mirror orphan logging to stdout - https://phabricator.wikimedia.org/T107851#1559972 (awight) [09:11:36] (PS2) Awight: Consolidate slayer logging; general cleanups [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232906 (https://phabricator.wikimedia.org/T107851) [09:11:38] (PS1) Awight: Append specific message to generic communication error [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232908 (https://phabricator.wikimedia.org/T109527) [09:34:37] Fundraising-Backlog, MediaWiki-extensions-DonationInterface: DonationInterface normalized message format should match queue format - https://phabricator.wikimedia.org/T109819#1560019 (awight) NEW [09:47:02] (PS1) Awight: WIP Convert queue message back into DI format [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) [10:09:08] (CR) Awight: [C: -2] "Wrong URL, see comment." (1 comment) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232906 (https://phabricator.wikimedia.org/T107851) (owner: Awight) [10:16:58] (PS2) Awight: Append specific message to generic communication error [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232908 (https://phabricator.wikimedia.org/T109527) [10:17:00] (PS2) Awight: WIP Convert queue message back into DI format [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) [10:17:02] (PS3) Awight: Consolidate slayer logging; general cleanups [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232906 (https://phabricator.wikimedia.org/T107851) [11:05:41] TCB-Team-Fundraising-Sprint-2015-08-12, TCB-Team: [WMDE-Fundraising] Analyse: Mobile visitors during the last campaign - https://phabricator.wikimedia.org/T108815#1560193 (WMDE-Fisch) a:WMDE-Fisch [14:04:36] (CR) Cdentinger: "Interestingly the tests that are failing now are randombanner= and randomcampaign=" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [14:41:38] morning AndyRussG! [15:00:41] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog: Remove Amazon from forms (Aug 21) - https://phabricator.wikimedia.org/T107528#1560624 (Pcoombe) I have hidden Amazon from [banners](https://meta.wikimedia.org/w/index.php?title=MediaWiki%3AFR2015%2FResources%2FMethodLocalize.js&type=revision&diff=1323... [15:04:33] cwdent: hi! [15:05:23] Heh I should use NickName afk suffixes more often... Maybe there's some automatic way to make them work with... my electronic ankle bracelet [15:05:26] (jk) [15:05:44] hehe [15:05:57] i used to use /away but it's just not the same [15:06:17] Ah heh haven't tried that [15:06:24] Ahhh [15:06:29] How do I get rid of it? [15:07:24] i think just /away again? [15:08:24] ah yeah [15:08:38] Really I should also get a home server and an IRC always-on thing [15:08:48] arrrrg not today tho! [15:09:39] i use a digital ocean droplet for that [15:09:46] i like to decentralize [15:10:03] so if my home server goes down i'll at least still be on irc [15:10:26] Ah hmm! that seems not expensive [15:10:47] yeah they're a great company [15:10:49] For a while I used amazon, but then it didn't seem worth it, also not expenseive [15:10:52] though a bit more than that [15:11:12] Heh I think I'll just get it! [15:11:14] yeah, i think it's better than aws for individuals [15:11:23] nice! good friend of my just got hired at DO [15:11:43] DO? [15:11:47] he's going to be remote but is spending the first 3 months in NYC [15:11:57] sorry, digital ocean :) [15:12:01] ah yeah heh [15:12:03] cool! [15:12:40] they are a great resource for developers [15:12:57] they have a large staff dedicated to writing tutorials that are most excellent [15:13:03] ah fantastic [15:13:08] can you run Debian? [15:13:13] yep! [15:13:27] better still! [15:13:36] they also provide free apis for everything [15:13:41] ohhh [15:13:52] for example here's a free DDNS script i made: https://github.com/caseydentinger/config/blob/master/dns.sh [15:14:39] runs on cron and keeps my home server available via url [15:16:03] nice! [15:18:05] AndyRussG: i fixed those test errors by nuking the buckets_by_campaign cookie. stupidly i didn't look at the bad value first [15:18:31] ahhh OK cool... [15:18:50] Yeah I'm just difftool -d'ing your most recent PS [15:19:49] it seems like it would require some pretty serious work to mock out everything that could exist in a browser [15:20:21] heh indeed! Yeah it's always a funny balance between unit tests and integration [15:21:36] that's why i thought phantomjs might be a good option, because i'm imagining it to tear everything down in between runs, but i have no idea if that's actually true :P [15:21:58] and anyway timo's points about why chromium is better are valid [15:23:30] Heh hard to say otherwise about anything he says, definitely [15:25:17] anyway you think we should put that bucket call back in the mixin and figure out why the test breaks? since that should be available behavior? [15:28:04] yes... I have a few more comments too! Just really nitpicky stuff, one sec :D I know it's been a lot of tweaking and stuff, but it'll be fun when it's all set [15:28:35] P.S. change the above response to no heheheh [15:30:13] ok! [15:32:34] cwdent: P.P.S. would you be peeved if I changed my mind about how we should to resetState() ? I was just musing over it and now I think exposing the vars and resetting each in the test will be cleaner [15:33:02] AndyRussG: no prob! [15:34:21] Sorry for the flip-flop... I may be wrong... The justification in my mind is, to expose the vars is a smaller invasion of testing stuff into production code than adding the test-only reset method, in terms of logic [15:34:35] Does that make sense? I may be completely wrong, too [15:36:52] AndyRussG: sure that makes sense! then just mark them @private? [15:37:00] yeah exactly [15:37:47] sounds good! [15:37:54] :) [15:38:14] cwdent: regarding saying "no" just now to moving the setBucket call, the reason is this: in the test for the hooks, in most cases it's a bucket that'll be set before the hooks are run. So let's keep that test like that [15:38:37] We should test for the ability to set a bucket from within a mixin hook handler separately, 'cause that's a different functionality [15:38:45] does that also sound reasonable? [15:41:48] yeah that makes sense. do you think it's an underlying load order issue causing it to fail? [15:42:00] a race condition in one browser but not another [15:42:22] or rather...the race condition is always there but only fails in one browser [15:43:31] cwdent: I'm really at a loss. But let's get this working patch out and fiddle in a separate task and patch. Probably that'll make more sense in terms of prioritizing our time and stuff, and maintaining sanity, no? [15:43:55] i agree! [15:45:32] :D [15:46:57] K one more proposal: about the cookie and reset: can we fully erase the actual cookie and reset state before _every_ test in there maybe? [15:47:23] kinda like what we were doing for geoIP: [15:47:23] realCookie = $.cookie( COOKIE_NAME ); [15:47:50] Then in every test, delete the cookie [15:48:04] And in tearDown, $.cookie( COOKIE_NAME, realCookie, { path: '/' } ); [15:48:35] (code copied from geoIP.tests.js) [15:48:46] I feel that'd be even cleaner [15:48:58] the bucket cookie? [15:49:04] that seems like a good idea [15:49:04] yep! [15:55:27] cwdent: one more small idea... Just to simplify resetting the exposed state variables, maybe a private method to do that in the test script? [15:55:38] (apologies if this was obvious) [15:56:04] sure, just a closure in the specific test? [15:59:50] well if we reset in every test, just a function declaration outside the test methods, it'll be locally scoped, yeah I think that's a kind of closure [16:01:41] ok! should i save the values (data, campaign, banner) in setup and restore in teardown? [16:02:10] or...i guess the function can close around the original values when it's defined? [16:02:31] nah we don't need banner display to work normally in the test harness, so it's OK [16:02:58] as in, just before the QUnit.test calls, just a function resetState( state ) { ... } [16:03:03] outside anything else [16:03:22] yeah you'll just need to pass in the state object to get the reference [16:03:30] (I think?) [16:04:09] yeah that makes sense, i will store those vars on the exposed state object like savedVal? [16:10:17] cwdent: nah don't even save 'em, I think [16:11:01] since it's all in-memory, so no effects on the browser outside the test harness pageviews, and no other tests should expect to work with them [16:13:28] oh duh, i just have to set them to null [16:14:20] mm maybe data to {} [16:14:55] yea just like the resetState() method u made in state.js [16:15:00] AndyRussG: i notice there's already a getData method exposed. that returns a reference that could be set to {} right? [16:15:17] (disobeying the comment of course) [16:16:54] well yes, but there's a difference. That's a public method, and it's made a method specifically to imply that it could be read-only [16:17:20] I may well be splitting hairs though, and it might be simpler to make a public .data property and use it wherever we use getData instead [16:17:31] mmm whichever you prefer then, I guess [16:17:46] maybe you're right, we should just use getData, that'd keep the test simpler [16:17:57] K now I agree w/ you... yeah just use getData() [16:18:11] sorry for my spinelessness [16:18:17] totally your call! i feel like we have to undermine the design pattern in the test either way [16:18:50] well, that's what tests do. They mess w/ encapsulated private stuff [16:18:59] yeah [16:19:08] i like the @private thing [16:19:24] yeah! [16:19:29] because that's all private encapsulation is really for, guidelines [16:19:30] If only there were @protected [16:19:44] yeah true [16:19:59] I think in Java there's some pretty advanced reflection-based mocking and stuff these days [16:20:08] if the only thing stopping your private stuff from being abused is language restrictions, you probably need new programmers [16:20:27] mmm also [16:20:46] * AndyRussG reminisces for the illusion of certainty [16:21:23] hehe, those were the days [16:21:33] but, "worse is better" seems to win every time [16:22:19] Hmmm [16:22:24] Maybe I should take that one to heart! [16:23:05] hehe well our whole deal runs on a massive blob of dinosaur php [16:23:20] but it doesn't matter because varnish serves 98% of the requests [16:24:10] i have been thinking a lot lately about how little software design actually seems to matter [16:24:37] projects will rise to whatever challenge they are presented with using whatever methods are necessary [16:24:59] if they have the inertia [16:25:02] heh [16:25:14] all things being equal good design is certainly better than bad design [16:25:17] I was kinda thinking of how machine learning might design all this [16:25:29] but it doesn't seem to be a killer factor [16:25:58] Give it hardware constraints, the logic requirements, the bandwith expectations, and let it decide where to put shit [16:26:34] heh yeah that's an interesting thing to think about [16:26:46] heh though really kinda thinking, != really thinking [16:26:54] sort of what compilers do on a micro scale [16:27:10] yeah! [16:27:25] this is a good, relevant essay http://laputan.org/mud/ [16:29:19] cool! [16:48:12] Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Unnecessary bucket warnings in campaign settings - https://phabricator.wikimedia.org/T109714#1560900 (Pcoombe) The warning only shows up after you save. If you prefer to adjust the warning, that's fine. Personally I don't think it's needed at all,... [16:50:06] AndyRussG: didn't notice before merge, but found a typo in efCentralNoticeEventLoggingRegisterSchemas [16:50:16] $schema should be $schemas [16:52:10] ejegg: ah cool, thx! I'll do a follow-on patch for that and a few other issuez [16:53:21] awight seemd to think the log-on-click-donate problem was deal-with-able [16:53:25] deal-able-with? [16:53:43] with-a-deal-bull? [16:54:05] i.e. a blocker-not [16:54:20] AndyRussG: would it be possible to at least load the schema as soon as the mixin arrives? [16:54:45] without that, there's always going to be a round trip before the id resolves [16:55:00] ejegg: ahh excellent idea [16:55:08] K will do [16:55:34] would be really cool to be able to register dependencies for mixins to load both together [16:56:11] ok, i gotta go sit in a dentist chair for a little bit. be back soon! [16:56:23] ejegg: have fun! [16:56:43] ejegg|away: BTW we can and do register dependencies, but I didn't in this case since it's a randomly sometimes dependency [17:06:46] AndyRussG: ok i'm getting some really funny behavior now [17:07:54] ? [17:08:12] hrm, try here: http://wiki.home.sadbastard.org/index.php?title=Special:JavaScriptTest/qunit/plain [17:08:15] and watch the console [17:08:26] i have it logging stuff for the banner shown case [17:08:38] and it fails like half the time [17:08:53] doesn't run the post mixin [17:09:02] but when it succeeds, it appears to fire the pre mixin 3 times! [17:09:13] once where it should, then 2 more after everything else [17:10:26] lmk if you see that or it's just me [17:11:36] cwdent: checking.... [17:15:38] cwdent: one idea about the mixins running several times: I guess we need to somehow de-register the mixin after the test, maybe it's other tests that are running the hooks automatically after the hook tests run? [17:16:31] oooh, that must be it [17:16:53] did you see the failure case? [17:17:17] it sure looks to me like the banner is getting chosen before the mixin is registered [17:17:48] hmmm [17:18:53] I can +1 that musing. There is no built-in cleanup done by QUnit, we have to explicitly reset any state that's been changed. [17:20:42] awight: totally. tough part about using your normal browser for this is it's not very hard to show up with state that breaks the tests [17:22:50] IMO the test setup should ruthlessly clear out any state. I even removed and re-added the sitenotice div, for that reason. Actually, that was because the qunit tests use the "fallback" skin, which doesn't include sitenotice. [17:23:32] I'd suggest doing something similar whenever you find the browser state breaking tests. It's important that we can run from any browser or from CI... [17:24:24] yeah. i wonder if something up the call stack a bit would be helpful? always kill/restore all cookie for instance [17:24:47] cookies... [17:24:58] i had a cookie i have no idea how it got corrupted sucking around breaking the tests for a few hours [17:25:01] hrm [17:25:26] I'm not sure if it's better to clear all domain cookies, or just the ones we're testing. [17:25:42] Probably what you said--save, kill, and restore. [17:27:36] Hey um. I'd like to do a Friday deployment, just some logging changes to the orphan slayer which is borken anyway. [17:27:49] I can avoid touching paymentswiki, fwiw. [17:28:06] Here are my weapons of choice: https://gerrit.wikimedia.org/r/#/c/232908/ https://gerrit.wikimedia.org/r/#/c/232906/ [17:28:47] ejegg|away: XenoRyet: ^ anyone want to bite? [17:31:03] cwdent: am I missing something? I don't see the clearing out of the cookie or the resetState stuff in the code on ur server? [17:32:10] AndyRussG: yeah that's correct, i tried replacing it with the getData reset but that caused this error [17:32:22] hi friends! a reminder that we've got to do this one today: https://phabricator.wikimedia.org/T107528 [17:32:53] Fundraising-Backlog, Wikimedia-Fundraising: [EPIC] Amazon embedded campaign ready version - https://phabricator.wikimedia.org/T108109#1561162 (atgo) [17:33:18] Fundraising-Backlog: [EPIC] Amazon embedded campaign ready version - https://phabricator.wikimedia.org/T108109#1512442 (atgo) [17:33:33] ah! so it's a deploy friday anyways [17:33:35] Fundraising-Backlog, Wikimedia-Fundraising, Epic: [epic] Amazon upgrade - https://phabricator.wikimedia.org/T87625#1561176 (atgo) [17:33:56] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog: Remove Amazon from forms (Aug 21) - https://phabricator.wikimedia.org/T107528#1561181 (atgo) [17:33:58] Fundraising-Backlog, Wikimedia-Fundraising, Epic: [epic] Amazon upgrade - https://phabricator.wikimedia.org/T87625#995438 (atgo) [17:33:58] cwdent: before debugging anything else, let's delete the cookie and reset state fully before every test. If that has problems then let's debug that [17:34:31] Fundraising-Backlog, Wikimedia-Fundraising, Epic: [epic] Amazon upgrade - https://phabricator.wikimedia.org/T87625#995438 (atgo) [17:35:02] hehe cwdent apparently, but i think taking things out of paymentswiki isn't such a painful thing... [17:35:21] AndyRussG: sounds good. interesting though, resetting data didn't seem to work [17:35:29] objects are pass by ref in js right? [17:35:35] yes [17:35:55] (CR) Awight: [C: 2] Execute display logic right away (1 comment) [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232424 (owner: AndyRussG) [17:35:57] remember it's also resetting the campaign and banner objects [17:36:23] still pls let's work on code that does all that.. If that has issues, we'll work from there [17:36:48] yeah, will do [17:36:56] thx!!! sorry to be a stallwart [17:37:05] ^ I meant, remember it also has to reset those objects [17:37:18] (Merged) jenkins-bot: Execute display logic right away [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232424 (owner: AndyRussG) [17:37:57] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog: Remove Amazon from forms (Aug 21) - https://phabricator.wikimedia.org/T107528#1561210 (awight) a:awight [17:40:01] hey awight or whoever... which projects does wikibugs pull from? [17:40:06] is there a list somewhere i can see? [17:40:30] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog: Remove Amazon from forms (Aug 21) - https://phabricator.wikimedia.org/T107528#1561234 (awight) Notes for posterity: * Remove amazon forms from whitelist in DonationInterfaceFormSettings.php. * Disable Amazon gateway in LocalSettings.php. [17:40:36] atgo: yah, one moment please [17:40:41] thanks! [17:40:50] wikibugs: help [17:40:55] booo [17:41:23] wikibugs: help [17:41:26] nope [17:41:28] atgo: https://git.wikimedia.org/blob/labs%2Ftools%2Fwikibugs2/HEAD/channels.yaml [17:42:14] atgo: there's another secret command for effing with bots btw, "/ctcp wikibugs source" [17:42:28] just mentioning cos you couldn't see that I ran it [17:42:53] awight: gotcha [17:43:00] so... i'm wondering where the fundraising stuff is in this list? [17:43:15] "#wikimedia-fundraising": [17:43:15] - .*(? is what i see for all things fr [17:43:49] yes [17:44:13] that means, anything with "Fundraising" in an associated project name. Unless it's "WMDE-Fundraising" [17:44:35] I can add whatev we need, just holler [17:44:49] hm [17:44:49] ok [17:44:52] sounds gouda [17:44:56] yum. [17:45:39] I had this really gross habit for a while of getting an entire log of smoked gouda from the food coop, every few weeks. [17:45:54] It really doesn't make good grilled cheeses, or anything for that matter. [17:46:00] Aged gouda, on the other hand.... [17:46:22] https://www.youtube.com/watch?v=BmbG7CfFsmE [17:47:01] AndyRussG: i'm feeling like a dummy. shouldn't this work? https://gist.github.com/caseydentinger/06f1a7a01a207e094b35 [17:47:19] in that, those two console logs should be different? [17:48:13] cwdent: ah no [17:48:20] heh indeed we can't use getData() [17:48:34] don't feel like a dummy! it's not self-evident and different languages work differently [17:49:04] Here you're re-assigning the local data variable to a new reference, that points to the newly created literally-defined object, {} [17:49:33] However you're not changing the value of the private data object in state.js [17:50:17] yeah, ok, so that makes a copy because it's defined with var more or less? [17:50:29] So while you can say getData().foo = 'blah', and that _would_ change the property on the data object, you can't change the reference that getData() spits out [17:50:32] cwdent: no no copies [17:50:42] {} is a new object [17:50:59] var data = {} assigned that local variable to point to the reference of the new object [17:51:39] oh ok, so it's a refernce before that? [17:52:11] getData: function() { return data; } returns the refernce pointed to by the data variable defined on line 8 of ext.centralNotice.display.state.js [17:52:20] and a new object is created because it's outside the scope of getData? [17:52:29] yeah, i get that part... [17:52:37] yeah all js variables that hold objects just hold references [17:53:09] Mmm well the out of scope-ness means you can't get to the original, but the same would apply locally [17:53:17] var data1 = {}; [17:53:21] data2 = data1; [17:53:29] sorry start over [17:53:38] var data1 = { prop: hi }; [17:53:45] rrrg [17:53:50] var data1 = { prop: "hi" [17:53:53] }; [17:53:59] data2 = data 1; [17:54:01] kadslfajsdfkjhlasdf [17:54:06] K I'm making a gist 8p [17:54:51] * awight grabs peanuts [17:55:32] cwdent: https://gist.github.com/AndrewGreen/d06776150b2c0104fc20 [17:56:49] dstrine: atgo: K4 around today? [17:56:54] her bag is here [17:57:00] cwdent: by saying var data = mw.centralNotice.internal.state.getData(); you're doing exactly the same thing as var data2 = data1; in the gist I just sent [17:57:04] she told dstrine she was super busy today... but i haven't seen her [17:57:04] oh no, she shrank! [17:57:07] ok thx [17:57:16] she should be in this meeting we (including you) are having in 3 [17:57:26] I have a question for another day, then. Noticed a big thing to clean up: https://phabricator.wikimedia.org/T109819 [17:57:49] ah yes, that makes sense [17:58:07] it's just assigning the second variable to point to the same reference as the first. But the first still keeps its value no matter what happens to the second [17:58:19] so the only way to get at the reference in the class is to address it directly? [17:58:20] unlike what happens in PHP! which was a serious gotcha for me the other day, btw [17:59:30] i can't make...a reference to that reference? [17:59:33] cwdent: put it this way: the reference is still around, and will be until no variables ever refer to it, in which case it'l be garbage-collected. Rather, the only way to change which reference a variable holds is to assign to that variable directly [17:59:37] this is one of the reasons i fail so hard at C [17:59:51] no you can't [17:59:53] no pointer pointers [18:00:08] (AFIK!) [18:00:20] only closures [18:00:29] That was so uncool, MacOS pre sys 9 or so, when everything in the world was a freaking "handle" to work around crappy memory management. [18:00:55] whoa did I just get hit by flying popcorn? [18:01:00] (jk) [18:01:05] mmm sugar caramel [18:01:30] yeah he fortunately for my sanity I never got to work much with that stuff.. and indeed I was pretty bad at it [18:02:41] right, so getData: function() { return data; } returns the reference that data points to [18:02:52] in that sense, it's actually passing by value, not by reference [18:03:12] it passes the value held by that variable [18:03:16] which just happens to be a reference [18:03:24] but it doesn't pass a reference to a reference [18:05:30] yeah, so that's what closure means right? closes around the function scope? [18:05:43] really sorry to be pedantic yeah this stuff isn't self-evident :) [18:06:38] not at all! i appreciate the learnin [18:06:41] also apologies if I'm a bit grumpy today, unrelated stuff [18:06:44] awight: ^ [18:07:50] AndyRussG: so should i make those objects available on internal.state? [18:08:05] if I understand right, closure is when you define a function inside another and you get acess to the outer function's privates, even though you can pass your inner function about and do funny stuff with it [18:08:09] cwdent: yeah! [18:09:18] like functon() { var a = {}; var b = function() { a='foo' }; return b [18:09:20] } [18:09:53] so you can pass b anywhere you like and it'll change the value of the private variable a that was defined in the enclosing function [18:09:58] mmm something like that! [18:11:36] (CR) XenoRyet: [C: 2] Append specific message to generic communication error [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232908 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [18:11:48] (PS1) AndyRussG: Fix typo in efCentralNoticeEventLoggingRegisterSchemas [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232967 [18:11:50] (CR) XenoRyet: [C: 2] Consolidate slayer logging; general cleanups [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232906 (https://phabricator.wikimedia.org/T107851) (owner: Awight) [18:12:11] awight: ^ Yea, both those look good to me. [18:12:28] (Merged) jenkins-bot: Consolidate slayer logging; general cleanups [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232906 (https://phabricator.wikimedia.org/T107851) (owner: Awight) [18:12:35] thanks! [18:12:35] (Merged) jenkins-bot: Append specific message to generic communication error [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232908 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [18:22:34] i'm going to run out for a bit [18:24:19] Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Unnecessary bucket warnings in campaign settings - https://phabricator.wikimedia.org/T109714#1561390 (atgo) Ok, sounds good. Thanks @pcoombe. [18:31:29] sorry, that took longer than I expected! [18:38:57] (PS1) Awight: Disable Amazon forms [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232969 (https://phabricator.wikimedia.org/T107528) [18:39:44] socorro! ^ [18:40:11] ? [18:41:08] (CR) Ejegg: [C: 2] "RIP Simple Pay" [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232969 (https://phabricator.wikimedia.org/T107528) (owner: Awight) [18:42:31] awesome. Going to deploy that and the logging patch now... [18:44:45] ejegg: Are you around for the next couple hours? I need to test https://gerrit.wikimedia.org/r/#/c/232911/ a bit more, but want to deploy today. [18:45:24] awight: yep, sure thing [18:46:27] (PS1) Awight: Merge master into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/232979 [18:46:47] (CR) Awight: [C: 2 V: 2] Merge master into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/232979 (owner: Awight) [18:47:21] (Merged) jenkins-bot: Disable Amazon forms [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232969 (https://phabricator.wikimedia.org/T107528) (owner: Awight) [18:48:02] (PS1) Awight: Update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/232980 [18:48:21] (CR) Awight: [C: 2 V: 2] Update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/232980 (owner: Awight) [18:50:02] Weird thing I noticed about the yubikey's capacitative button... it only works if you either pinch it really hard, or just touch it lightly for a few seconds. [18:50:16] maybe I have bad electronegativity. [18:50:54] ejegg: fyi, your GC logging thing is included in this batch [18:51:09] thanks! [18:51:31] awight: yeah, it doesn't like some of my fingers [18:51:50] the yubikey, not the patch [18:52:03] Yea, I have trouble getting that thing to produce too. Haven't figured out the trick to that particular button. [18:52:13] Fundraising Tech Backlog, Fundraising-Backlog, MediaWiki-extensions-DonationInterface: DonationInterface normalized message format should match queue format - https://phabricator.wikimedia.org/T109819#1561495 (atgo) [18:52:18] !log updated paymentswiki from 049ad15323564fd5cd7f5efcadddb532a3590cef to 2b08853c977eee0fd17bf00a673a3bbf2a146554 [18:52:25] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [18:52:43] Long touch has been working out for me, cos it prevents me from immediately going ADHD all over the keyboard, holding down control and hitting alt-tab [18:52:53] heh [18:53:24] Holding down control is really special, I promise [18:53:50] oh man, i bet! [18:53:57] maybe just cos my ID includes a bunch of c's and q's [18:58:28] All kinds of fun there [18:58:40] !log disabling Amazon gateway [18:58:48] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [19:00:12] Sorry I keep pacing in circles and muttering the same curses... I really do appreciate having something cool on my keychain that makes me feel important. [19:00:44] No doubts there. The cool factor of the thing is quite high. [19:00:59] I just wish it made a noise. [19:01:08] That would be rad [19:01:54] awight: so amazon se murio? [19:02:02] aww nuts, now the orphan slayer no sirve? [19:02:04] yep [19:02:12] awesome. i'll send out an update [19:02:17] OK thank you! [19:03:10] (CR) Ejegg: "Ooh, good catch! Couple more places you could fix the same way." (2 comments) [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/232885 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [19:03:37] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog, Patch-For-Review: Remove Amazon from forms (Aug 21) - https://phabricator.wikimedia.org/T107528#1561511 (atgo) Open>Resolved [19:03:39] Fundraising-Backlog, Wikimedia-Fundraising, Epic: [epic] Amazon upgrade - https://phabricator.wikimedia.org/T87625#1561512 (atgo) [19:11:24] ejegg: Awkward. It looks like some DI classes are being autoloaded via composer, but not all. [19:11:39] awight: aargh! [19:11:46] you mean on the orphan slayer? [19:11:56] lemme hop on the log box (not on pop) [19:11:57] in general. [19:12:06] no worries about what's currently happening [19:12:22] I renamed a file and found out that wgAutoloadClasses is being superceded by the composer stuff. [19:12:35] ooh, freaky [19:12:43] just the stuff we list in the manifest? [19:12:47] Out of curiosity, I removed all the wgAutoloadClasses declarations, and the composer thing doesn't actually include anything [19:12:50] donno! [19:12:54] blarg! [19:12:55] (what manifest?) [19:13:07] composer.json lists a few specific classes [19:13:17] or did once [19:13:30] This is the offending file: composer/autoload_classmap.php [19:13:40] I would love to have composer do it all... [19:14:23] (PS1) Awight: New classmap built with moved file [extensions/DonationInterface/vendor] - https://gerrit.wikimedia.org/r/233021 [19:14:26] be nice to take a short break and rearrange all our files to be namespaced + PSR-organized [19:14:32] (CR) Awight: [C: 2 V: 2] New classmap built with moved file [extensions/DonationInterface/vendor] - https://gerrit.wikimedia.org/r/233021 (owner: Awight) [19:14:50] (PS1) Awight: update vendor submodule [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/233022 [19:15:01] (CR) Awight: [C: 2 V: 2] update vendor submodule [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/233022 (owner: Awight) [19:15:11] Fundraising Tech Backlog, fundraising-tech-ops: Set up fr-tech permissions for Eileen - https://phabricator.wikimedia.org/T109765#1561577 (Jgreen) p:Triage>High [19:15:25] (Merged) jenkins-bot: update vendor submodule [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/233022 (owner: Awight) [19:15:27] Oh, I bet the last autoloader registered is the first consulted, and we're adding the local composer autoloader from DonationInterface.php, long after mw's stuff [19:15:39] (PS1) Awight: update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/233023 [19:15:54] (CR) Awight: [C: 2 V: 2] update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/233023 (owner: Awight) [19:16:05] That sounds right [19:16:13] ah yeah, namespacing would be delightful here. [19:16:21] Enuf with the "Donation"- thing [19:16:33] Up with backslashen! [19:19:02] (CR) Ejegg: "couple nitpicks" (2 comments) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [19:21:32] Fundraising Tech Backlog, Fundraising-Backlog, fundraising-tech-ops: Orphan slayer cron should spam us with failmail if there are errors - https://phabricator.wikimedia.org/T109885#1561587 (awight) NEW [19:25:43] (PS1) AndyRussG: Better message for banner history logger rate UI [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233025 [19:25:45] (PS3) Awight: WIP Convert queue message back into DI format [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) [19:26:09] (CR) Awight: [C: 2] "That works!" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233025 (owner: AndyRussG) [19:26:32] hahah less than 30 seconds! [19:26:54] No longer than it took to write the patch :p [19:26:57] I guess relatively normal as a percentage of the time it took to make the patch yeah [19:26:58] (CR) jenkins-bot: [V: -1] Better message for banner history logger rate UI [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233025 (owner: AndyRussG) [19:27:02] lol [19:27:05] booo! [19:27:08] oh dear [19:27:18] looks like jenkins drank the last of the coffee [19:27:45] that might be a real thing [19:27:51] 19:26:47 Chromium 44.0.2403 (Ubuntu 0.0.0) ext.centralNotice.display canInsertBanner FAILED [19:28:06] wtf [19:28:15] * awight heads back to orphan slaying dungeon [19:28:17] (Merged) jenkins-bot: Better message for banner history logger rate UI [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233025 (owner: AndyRussG) [19:28:25] oh god I can't watch [19:28:38] well yeah also got the error locally at least [19:28:55] Did someone recheck? [19:29:19] I guess that was the original tests, before CR+2 [19:29:22] horrible [19:29:24] though also the same on the branch head! [19:29:35] right. Test flakiness not good [19:29:36] I mean the former branch head [19:32:10] awight: yep [19:33:12] I have a large arsenal of platitudes available, for any occasion [19:33:47] I'd love to hear more :) [19:33:52] that one was right on [19:35:30] :D Usually I only get to use ones like, "hitting people is not okay" [19:36:10] (PS4) Awight: Convert queue message back into DI format [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) [19:36:31] ejegg: ^ that one's ready for the front page [19:37:05] (CR) Ejegg: "In a non-debug page load, we getChoices in two load.php requests, twice per request:" [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/232897 (owner: Ejegg) [19:37:17] cool, looking now [19:37:47] ooh, RL caching fun [19:38:29] Oh, is there some combinedVersion caching happening in prod that I don't have configured locally? [19:39:00] No clue, sorry [19:39:33] oh, sorry, what did you mean by RL caching fun? [19:39:38] It was one of those things where Timo patiently explained a bunch of things that I only partially understood, so I took his word for it. [19:39:45] Yeah, re that. [19:39:47] (CR) Ejegg: [C: 2] "Round tripped!" [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [19:40:12] (Merged) jenkins-bot: Convert queue message back into DI format [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/232911 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [19:41:25] (PS1) Awight: Merge master into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/233029 [19:41:54] (PS1) Awight: update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/233030 [19:42:16] (CR) Awight: [C: 2 V: 2] Merge master into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/233029 (owner: Awight) [19:42:31] (CR) Awight: [C: 2 V: 2] update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/233030 (owner: Awight) [19:43:22] !log update paymentswiki from 2b08853c977eee0fd17bf00a673a3bbf2a146554 to 8ba4b5299f195cf48e6809b18a21e2d53f6eec1b [19:43:29] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [19:45:29] dstrine: i can sum up the worldpay situation pretty easily: i'm waiting on an email about how to get sandbox credentials. the guy we talked to yesterday (was that kyle PPena ?) said he'd get on that today [19:46:53] The more I use redis-cli, the happier I am to sell ActiveMQ to the glue factory next year... [19:47:25] hehe, yeah, it's pretty nice [19:47:28] cwdent: Did you happen to try the test creds that were on boron? [19:47:34] even telnet's not so bad! [19:47:45] telnet? [19:47:56] like, the -h option? [19:47:58] oooh [19:47:59] awight: yeah, you can telnet to the redis port and just talk to it [19:48:02] right the raw protocol [19:48:04] you're sick, dude. [19:48:17] heh [19:48:18] (PS1) AndyRussG: QUnit: call reallyInsertBanner() due to async issue [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233033 [19:48:24] but yeah, I was looking at how the protocol is pretty much the same as the cli [19:48:29] awight: yeah i pinged the live server and got "MessageCode 300" which i couldn't find any reference too anywhere and the guy on the phone said yeah you need to get set up for sandbox [19:48:37] the lessons of decades of Java... [19:48:46] cwdent: aah k [19:48:50] good luck :) [19:48:56] i hate that i just used ping as a metaphor for curl [19:49:21] All I remember is, there was a really bad phase where they dragged heels forever and gave totally cryptic replies to simple questions. [19:49:29] (CR) jenkins-bot: [V: -1] QUnit: call reallyInsertBanner() due to async issue [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233033 (owner: AndyRussG) [19:49:43] but yeah, there's no way ResourceLoader can know that getScript() and getModifiedHash() call the same function behind the scenes and somehow prevent it from duplicating the work [19:49:45] Then there was a brief phase of mutual respect, where they said yeah their stuff is totally janky, here's how to navigate that. [19:50:10] woops! [19:50:14] ejegg: you talkin to me? [19:50:26] ty jshint [19:50:27] awight: yeah, re: RL caching and repeated getChoices [19:51:09] You should probably talk to Timo directly... He was saying that those happen in separate calls, but the subtleties were totally lost on me. [19:51:13] ejegg: ^ huh? [19:51:19] BTW there was some recent changes there [19:51:43] Ah, maybe they've been combined. Cause they're definitely on the same call now [19:51:45] (PS2) AndyRussG: QUnit: call reallyInsertBanner() due to async issue [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233033 [19:52:09] AndyRussG: ejegg did a caching thing similar to what Timo had you remove--https://gerrit.wikimedia.org/r/232897 [19:52:17] but yeah I can believe that all bets are off again [19:52:48] dstrine: is "reminder" an actual meeting? [19:52:54] there's a video call :) [19:52:54] yeah there was a change that Krinkle pushed thru on CN IIRC [19:53:00] wooo fun! [19:54:08] awight: fixed flake ^ [19:55:11] ain't no one even show up to WP checkin [19:55:30] that's silly. I was thinking it was a decoy meeting [19:55:38] You know about those, right ;) [19:55:57] volunteer snare laid by the door... [19:56:10] hehe [19:56:19] while we madly deploy unreviewed patches [19:56:21] lemme hop on there and relay what I know [19:56:23] :) [19:59:17] relocating, back in a sec... [19:59:53] no sorry it was just a reminder [20:03:37] (PS1) AndyRussG: ***Pls don't merge*** Performance marks for benchmarking on labs [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233040 [20:03:52] one sec, need pb [20:04:59] (CR) jenkins-bot: [V: -1] ***Pls don't merge*** Performance marks for benchmarking on labs [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233040 (owner: AndyRussG) [20:06:30] AndyRussG: you around? [20:06:38] dstrine: yeah coming! [20:07:41] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog, MediaWiki-extensions-DonationInterface, Patch-For-Review: Mirror orphan logging to stdout - https://phabricator.wikimedia.org/T107851#1561728 (atgo) a:awight [20:31:26] cwdent: I'd like to rebase the mixin tests on this: https://gerrit.wikimedia.org/r/#/c/233033/ Maybe you'd like to send up ur latest first? [20:33:42] AndyRussG: eh i've got things pretty broken right now, a fresh start would probably be helpful! [20:33:58] i'd say just go ahead and i'll start the change over [20:34:21] cwdent: k... u can always save what u got by renaming the branch, just do re-download from gerrit before continuing.. [20:34:37] will do! [20:38:36] cwdent: tests not passing much, I'll just send up as is [20:39:03] (PS15) AndyRussG: Add BannerMixinHook tests. [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [20:40:05] cwdent: ah I see the issue, it's 'cause of another change, pretty straightforward, I'll fix [20:40:16] (CR) jenkins-bot: [V: -1] Add BannerMixinHook tests. [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [20:41:06] (CR) Ejegg: "Ehhh, guess that's only on the first page load for a given combined RL version. After that, it's one getChoices() per 5 minutes (short-ci" [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/232897 (owner: Ejegg) [20:41:08] (CR) AndyRussG: "Rebased" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [20:41:36] (CR) AndyRussG: "Woops ^" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [20:42:00] (CR) AndyRussG: "Rebased" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [20:44:17] hey cwdent what exactly do you need from worldpay? [20:44:28] (PS2) Ejegg: Fix typo in efCentralNoticeEventLoggingRegisterSchemas [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232967 (owner: AndyRussG) [20:44:53] (CR) Ejegg: [C: 2] "Schematastic!" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232967 (owner: AndyRussG) [20:45:04] atgo: instructions/credentials for setting up enhanced silent post sandbox [20:45:48] thanks! [20:47:30] (PS16) AndyRussG: Add BannerMixinHook tests. [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [20:47:37] ejegg: thx! [20:48:08] awight: dunno if you missed it in the fun of deployment, but I left a couple notes on your php-queue patch. Would you prefer that I -1 things with potential enhancements to make review more obvious? [20:48:22] I was thinking about that, recently. [20:48:51] Yeah, let's start pseudo-randomly cr-1'ing things, cos it may accelerate the dialogue [20:49:01] if you miss it in the feed, it's hard to notice in gerrit. Nothing but an updated timestamp [20:49:04] yeah [20:49:08] i concur! [20:49:11] I totally read, but have not responded yet. [20:49:18] I think I uploaded a new PS but not my comments. [20:49:34] Thank you, btw! Always a pleasure having you tear my code to pieces [20:49:38] no rush, just didn't want you to think it was going ignored! [20:50:06] likewise, btw [20:51:24] I wish I could learn to be as rigorous. [20:51:34] On that note, my php-queue patch really needs tests to be okay. [20:52:04] heh, IRL my flaw-seeking eye isn't always so helpful [20:53:59] (Abandoned) Ejegg: Cache choices retrieved from API or DB [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/232897 (owner: Ejegg) [20:55:13] I sort of hate seeing the flaws in other things, trim, paint jobs, out of tune pianos. Just enjoy the music! [20:55:46] cwdent: what is the best way forward with the tests? maybe a video call w/ screenshare would help? or will you/do you prefer to work on something else for a bit, or maybe work on your own? whatever you think works best is fine :) [20:56:05] awight: out of tune pianos... nooo... guitars are worse though [20:56:05] (CR) jenkins-bot: [V: -1] Fix typo in efCentralNoticeEventLoggingRegisterSchemas [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232967 (owner: AndyRussG) [20:56:46] AndyRussG: am i blocking you with these tests? if not i don't mind beating on it awhile longer, i think i can figure it out [20:56:54] wtf jenkins-bot? [20:57:28] cwdent: ah no not blocking at all! I'm just worried about your enjoyment levels... ;) [20:57:58] oh no i'm having a blast! heh heh [20:58:16] ejegg: it's a QUnit issue that's resolved in the following patch, https://gerrit.wikimedia.org/r/#/c/233033/ [20:58:38] (CR) Ejegg: [C: 2] "*kick*" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232967 (owner: AndyRussG) [20:59:00] oho [20:59:37] (Merged) jenkins-bot: Fix typo in efCentralNoticeEventLoggingRegisterSchemas [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/232967 (owner: AndyRussG) [21:02:18] AndyRussG: what do you think about the resetState method after the earlier chat? still worth replacing, even though it'll require different test-only functions? [21:03:42] cwdent: hmm do you see a reason not to do it? [21:05:11] the current method just seems less complex to me, rather than a special getter for each property [21:05:55] but totally your call [21:10:54] cwdent: yes it's less complex for the test code, but there's more test logic invading the production code [21:11:04] just a teeny bit, but still [21:11:26] Heh sorry if I'm just stubborn [21:12:01] no prob! i'll get that done [21:12:21] (PS3) Awight: Interpret Predis status codes [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/232885 (https://phabricator.wikimedia.org/T109527) [21:14:43] (CR) Ejegg: [C: 2 V: 2] "enhanced!" [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/232885 (https://phabricator.wikimedia.org/T109527) (owner: Awight) [21:15:01] nice, complete with error messages [21:15:18] Fundraising Tech Backlog, Fundraising-Backlog: Review and fix error handling in php-queue - https://phabricator.wikimedia.org/T109901#1561929 (awight) NEW [21:21:54] (PS1) Awight: Bump php-queue [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/233055 [21:28:25] (CR) Ejegg: [C: 2] "yes plz!" [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/233055 (owner: Awight) [21:31:11] (Merged) jenkins-bot: Bump php-queue [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/233055 (owner: Awight) [21:31:32] Fundraising Tech Backlog, Fundraising-Backlog: Review and fix error handling in php-queue - https://phabricator.wikimedia.org/T109901#1562103 (awight) [21:31:33] Fundraising Tech Backlog, Fundraising-Backlog, fundraising-tech-ops: Orphan slayer cron should spam us with failmail if there are errors - https://phabricator.wikimedia.org/T109885#1562104 (awight) [21:33:38] (PS1) AndyRussG: BannerHistoryLogger: anticipate RL resources for sendLog() [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233057 [21:35:33] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog, MediaWiki-extensions-DonationInterface, Patch-For-Review: Mirror orphan logging to stdout - https://phabricator.wikimedia.org/T107851#1562116 (awight) Open>Resolved [21:36:47] (PS1) AndyRussG: Merge branch 'master' into campaign_mixins [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233059 [21:36:53] bwahahahahaha [21:38:29] Fundraising Sprint Queen, Fundraising Sprint Rowlf the Dog, Fundraising Sprint The Pogues, Fundraising-Backlog, fundraising-tech-ops: Make DonationInterface fatal errors accessible - https://phabricator.wikimedia.org/T107918#1562124 (awight) [21:41:32] AndyRussG: is something this simple ok? setData: function ( value ) { data = value; }, [21:41:42] or did you actually want access to the property? [21:42:10] cwdent: let's access the property and mark it @private, since that's what seems to happen elsewhere [21:42:40] and it's what we've done so far as the only invasion of test code in prod code [21:43:06] as in data: data, [21:43:22] oh, that will work? [21:43:30] it should! :) [21:43:40] well that's nice and easy [21:47:07] hmm maybe it's a plot @_@ [21:47:10] Fundraising Sprint Rowlf the Dog, Fundraising Tech Backlog, Fundraising-Backlog, Unplanned-Sprint-Work: Settle unslain orphans - https://phabricator.wikimedia.org/T109668#1562197 (awight) [21:52:29] (PS1) AndyRussG: BannerHisotryLogger: Increase random shift of timestamps [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233065 [21:53:20] AndyRussG: sorry i'm having a tough time with this...but in internal.state i have: data: data, then in teardown: mw.centralNotice.internal.state.data = {}; but yeah it definitely seems like that var is a separate reference from the one at the top of the file [21:54:02] cwdent: aaaaarg you're totally right soooooooooooory [21:54:11] where is my brain? [21:54:40] cwdent: rather, do it like this: data: {} [21:54:49] (still declaring that private) [21:56:08] !log increasing paymentswiki orphan gc-cc-limbo expiry time to 30 days [21:56:15] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [21:56:17] and then replace references to the private data to variable with references to state.data (in some functions you may want to set local private vars for conciseness) [21:56:27] cwdent: ^ [21:56:52] cwdent: though I see it getting more and more complicated, if u prefer still do go ahead and do setData() [21:57:10] and apologies for not seeing the issue above [21:58:48] so move it from the top into the exposed object? [21:59:42] Friends, I'm gonna switch over to ORES stuff [1] for a bit, please holler if I can help with anything. [21:59:54] [1] https://phabricator.wikimedia.org/T106838 <-- drop by and help! [22:03:01] Fundraising Sprint Rowlf the Dog, Fundraising Tech Backlog, Fundraising-Backlog, Unplanned-Sprint-Work: Settle unslain orphans - https://phabricator.wikimedia.org/T109668#1562312 (atgo) 3 story points?! what is this heresy!? [22:03:13] cwdent: yep... if u agree? [22:03:35] atgo: /me coughly politely. It' sa 2 and a 1 [22:03:51] * awight goes cross-eyed trying to reread own sentence [22:04:14] AndyRussG: yeah that for sure seems like the simplest approach [22:04:14] Is it allowed to make a footnote in one IRC reference and provide the URL in another one? [22:04:31] I mean, in one IRC message? [22:04:42] cwdent: K sounds good, sorry again 4 the confusion [22:04:47] I think u need a section break, yes. [22:04:56] not at all! good learning experience [22:05:04] * awight revels in the unorthodoxy of it [22:05:12] awight: what is ORES? [22:05:31] https://meta.wikimedia.org/wiki/Objective_Revision_Evaluation_Service [22:05:42] wait. [22:05:44] that one: https://meta.wikimedia.org/wiki/Research:Revision_scoring_as_a_service [22:05:52] oooh, fun [22:06:07] * awight chuckles for the Nth time at the freemasonly logo [22:06:15] one sentence says "systematic bias" [22:07:01] vs "systemic"? Yeah I donno which is more right [22:07:05] although if it's performed by a machine...i guess it is systematic bias [22:07:17] (PS1) AndyRussG: BannerHistoryLogger: comment about temp measure for minification [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233067 [22:07:52] lol totally a logo for the illuminati [22:07:56] just needs an eyeball in the middle [22:08:18] is that howt he maths work? [22:08:20] awight: [22:08:34] Things got silly when I asked abou tthat--luckily the channel logger wasn't propped up by that point. [22:09:19] atgo: Hopefully this is already causing a div by zero error in a corner office somewhere :p [22:09:25] in my brain for sure [22:09:27] ;) [22:09:37] LOL sorry about that javascript-based core [22:09:53] Did you know... js has maybe 6 different unique "not a number"s [22:10:58] i did know that [22:11:35] i'm making myself sad by looking at each of the reference pages about these evil nonnumbers, and of course they don't link to one another. [22:11:56] Each is its own imaginary castle [22:12:17] hehehe [22:12:17] * awight vanishes before explaining how important it is that we start using mersenne primes for costing [22:12:55] perfect! that sounds like it'll simplify things [22:13:27] http://www.mersenne.org/primes/ [22:13:42] It's okay, I'll write a userscript for Phabricator that supports this, and will spend December trying unsuccessfully to get it upstreamed. [22:13:52] cheater! [22:13:57] hahahaha [22:14:03] "date discovered" is rad [22:14:05] dstrine can probably help you with that [22:14:11] he's working on upstreaming stuff to phab [22:14:17] "Enhanced trial division" sounds like my job [22:14:30] Fundraising-Backlog: Sprint U goal: - https://phabricator.wikimedia.org/T109908#1562349 (atgo) [22:14:36] They'll certainly appreciate this addition to our 95 theses [22:15:19] Fundraising-Backlog, Epic: [epic] Update how we do the List-Unsubscribe email header - https://phabricator.wikimedia.org/T91476#1562353 (atgo) [22:15:55] (CR) AndyRussG: "Thx so much 4 the comments and review, all!!! \o/" (6 comments) [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229560 (https://phabricator.wikimedia.org/T90918) (owner: AndyRussG) [22:18:51] I'm about to head out for a while but I'll be back in 2-3 hours... hope that's OK! [22:19:31] Fundraising-Backlog, FR-Campaigns: Legal language entry in Translatewiki for LATAM - https://phabricator.wikimedia.org/T105142#1562370 (atgo) Open>Resolved a:atgo Closing. @jrobell please open if you think it's necessary. [22:21:09] Fundraising Sprint Rowlf the Dog, Fundraising Tech Backlog, Fundraising-Backlog, Unplanned-Sprint-Work: Settle unslain orphans - https://phabricator.wikimedia.org/T109668#1562383 (awight) Just noting that I did this: 14:55 < awight> !log increasing paymentswiki orphan gc-cc-limbo expiry time to 30... [22:23:00] awight: are these orphan slayer follow up tasks sort of imminent? [22:23:09] like should we schedule them in the next few sprints? [22:24:17] and also does anyone know about the new amazon tasks are for the 1 hour test...? [22:24:17] https://phabricator.wikimedia.org/T109654 [22:24:23] https://phabricator.wikimedia.org/T109649 [22:24:24] ejegg|bike: ? [22:25:16] atgo: I'd like to do the settlement immediately: https://phabricator.wikimedia.org/T109668 [22:25:32] cool [22:25:41] i'm more concerned with the ones in the analysis columb [22:26:01] column... [22:26:04] awight: [22:26:05] ^ [22:26:23] Gotcha, https://phabricator.wikimedia.org/tag/fundraising-backlog/ [22:26:38] All different dispositions IMO. [22:27:17] The php-queue stuff is mostly done, I discovered some error handling was missing. [22:27:28] The task is there as a reminder to self to finish that at the next opportunity. [22:27:45] The cron spam thing can wait, but should really be in place < Big English [22:28:15] normalized message format is probably too disruptive for September, so next sprint. [22:28:18] spring. [22:28:20] php queue is 109819? [22:28:29] ha sprint or spring? [22:28:31] spring, i think? [22:29:22] Just moved columns to make it more clear. Happy to do that any time! [22:29:37] And of course, push back when u see issues. [22:29:37] thanks! [22:29:51] i just moved one you put in "current sprint" to the next one since it's not actually in Rowlf yet [22:30:42] awight: i'm trying to get a really good picture of the potential cost of trying to do this worldpay thing [22:30:53] Fundraising Sprint Rowlf the Dog, Fundraising Tech Backlog, Fundraising-Backlog: Review and fix error handling in php-queue - https://phabricator.wikimedia.org/T109901#1562480 (awight) [22:31:00] wikibugs is on the slow today [22:31:11] Just moved it into rowlf, it's part of doing the existing tasks right. [22:31:21] cool [22:31:24] Fundraising Sprint Rowlf the Dog, Fundraising Tech Backlog, Fundraising-Backlog: Review and fix error handling in php-queue - https://phabricator.wikimedia.org/T109901#1562492 (awight) a:awight [22:31:48] Don't worry, my tolerance for chafing at PR overhead is much, much higher than this... [22:32:01] :P [22:32:28] Fundraising-Backlog: [EPIC] Amazon embedded 1-hour test version - https://phabricator.wikimedia.org/T108106#1562514 (atgo) @ejegg i'm adding the tasks you made as blocking tasks here, feel free to adjust if it's not how it should be [22:32:46] Fundraising-Backlog: Implement Amazon payment notification listener - https://phabricator.wikimedia.org/T109649#1562517 (atgo) [22:32:48] WHeee: "F: *General Announcement* Incorrect Financial Statements for August 21st, 2015" [22:32:48] Fundraising-Backlog: [EPIC] Amazon embedded 1-hour test version - https://phabricator.wikimedia.org/T108106#1562516 (atgo) [22:33:19] Thanks atgo [22:33:20] Fundraising-Backlog: Nightly Amazon report download - https://phabricator.wikimedia.org/T109654#1562519 (atgo) [22:33:22] Fundraising-Backlog: [EPIC] Amazon embedded 1-hour test version - https://phabricator.wikimedia.org/T108106#1512420 (atgo) [22:33:46] no worries! is it just the 2? [22:33:50] https://phabricator.wikimedia.org/T108106 [22:34:20] awight: love that it starts with "F:" [22:34:27] Fundraising Sprint Rowlf the Dog, Fundraising Tech Backlog, Fundraising-Backlog, Unplanned-Sprint-Work: Specify STOMP server port in config files - https://phabricator.wikimedia.org/T109911#1562522 (awight) NEW a:awight [22:34:34] :) [22:34:44] they always start theirs with an f [22:35:01] It's Dutch for EFF-BOMB [22:36:16] also ejegg - while we're in amazon audit stuff: https://phabricator.wikimedia.org/T86720 [22:36:23] adding it as a subtask again for that [22:36:47] Fundraising-Backlog: Parse Amazon last name data differently (or: review the way we receive Amazon name data) - https://phabricator.wikimedia.org/T86720#1562552 (atgo) [22:36:49] Fundraising-Backlog: [EPIC] Amazon embedded 1-hour test version - https://phabricator.wikimedia.org/T108106#1562551 (atgo) [22:37:03] gerrit really discourages using the helpful features of git [22:37:32] dstrine: and erryone else, we're getting behind on our costing stuff. would be nice to be a bit farther along in the future [22:37:42] let's do some of that on monday after standup? [22:37:47] (PS17) Cdentinger: Add BannerMixinHook tests. [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 [22:38:43] (CR) jenkins-bot: [V: -1] Add BannerMixinHook tests. [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [22:38:56] atgo: oof, guessing name parts from one big string may never be very accurate [22:39:10] ah yeah? i guess the task is to investigate if that's the only way they'll do it [22:39:18] if it's a non-started we can decline the task [22:39:50] I think Amazon only has one field for name, and it gets populated any which way [22:40:04] squashing shit into one commit so that it stays attached to the right gerrit change basically ruins version control [22:40:12] like i can see doing that before something merges [22:40:17] but during development it's just silly [22:40:48] atgo: yep, just went into my personal Amazon profile and the edit name page has a single box [22:41:14] of course i'm sure there's a way to check out a particular PS within the change because the web UI has em all [22:41:35] but...but...commits work really great for that [22:41:45] Fundraising Tech Backlog, Fundraising-Backlog: Document IP and Session velocity filters - https://phabricator.wikimedia.org/T92054#1562583 (atgo) p:Triage>Normal [22:41:52] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM, Documentation: Document Civi admin pages - https://phabricator.wikimedia.org/T108390#1562585 (atgo) p:Triage>Low [22:42:02] ok thanks ejegg [22:42:06] i'll deline it with an explanation [22:43:15] I'm putting one up now [22:44:25] Fundraising-Backlog: [EPIC] Amazon embedded 1-hour test version - https://phabricator.wikimedia.org/T108106#1562594 (atgo) [22:44:27] Fundraising-Backlog, Wikimedia-Fundraising, Epic: [epic] Amazon upgrade - https://phabricator.wikimedia.org/T87625#1562595 (atgo) [22:44:29] Fundraising-Backlog: Parse Amazon last name data differently (or: review the way we receive Amazon name data) - https://phabricator.wikimedia.org/T86720#1562591 (atgo) Open>declined a:atgo Good thinking @ccogdill_wmf, but unfortunately amazon only gives us (and only asks for on their side) a single... [22:46:05] (PS18) Cdentinger: Add BannerMixinHook tests. [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 [22:46:37] Fundraising-Backlog: Parse Amazon last name data differently (or: review the way we receive Amazon name data) - https://phabricator.wikimedia.org/T86720#1562605 (Ejegg) Amazon actually just sends us one field for name (and only stores one on their side). We've been putting everything up to the first space i... [22:53:46] (CR) Cdentinger: "PS18 moves data, banner, and campaign from the state function scope into the publicly exposed object. Quite a few lines of changes and se" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/229422 (owner: Cdentinger) [22:57:13] awight: re prime numbers, the story point field takes any number... we also learned it can hold strings too [22:57:46] atgo: re estimation: sure! [22:58:09] hehe don't encourage us [22:58:11] it can hold strings? sweet! [22:58:22] movie villains anyone? [22:58:40] or maybe infectious diseases [22:58:45] * awight throws out T-shirt sizes in favor of an imperial storm trooper emoticon [22:59:04] is this a "common cold" or "flu" level task? [22:59:11] greg-g: yeah it seems to be a pretty long character length too. [22:59:16] where's jabba on that scale? [22:59:32] awight: i don't know about emoticon support [22:59:45] I mean, he's physically huge, but darth vader's way more powerful [22:59:48] however there is a hidden chat function in phab :P [23:00:21] I think these are some reasonable Unicode-using chaps [23:00:29] ¯\_(ツ)_/¯ [23:00:49] not really hidden: https://phabricator.wikimedia.org/conpherence/ :) [23:01:12] I don't encourage using it (conpherence) though, it just yet-another-chat-medium :) [23:01:21] conpherence [23:01:23] * cwdent groans [23:01:28] lolololol [23:01:50] if we could only turn off serious business mode [23:02:28] hehe [23:02:39] (serious) [23:02:41] reinventing IRC for fun and profit [23:03:29] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog: Sprint R Goal: Amazon internal test, banner history beta test - https://phabricator.wikimedia.org/T107346#1562646 (DStrine) [23:03:29] lots of that going on right now [23:04:35] oh man unicode emoticons work: http://screencast.com/t/vgK8sjlB6 [23:04:52] * awight cheers wildly [23:04:55] Fundraising Sprint Rowlf the Dog, Fundraising-Backlog: Sprint R Goal: Amazon internal test, banner history beta test - https://phabricator.wikimedia.org/T107346#1492851 (DStrine) [23:05:01] noice [23:05:14] Those really say "get the f off of our workboard" [23:05:27] NaN is a positive development as well. [23:05:56] Now we have to measure the impact of story points on employee mood [23:05:56] good for whoever elected to not go with the mysql default of latin1 [23:06:11] I don't think that's the thing any more. [23:07:11] oof, you're quite right [23:07:19] crude. [23:07:59] yeah, ridiculous [23:10:31] time for me to peace out, have a good weekend everyone! [23:10:35] we could pick unicode emoticons to equal out named sizes super-sized = (╯°□°)╯︵ ┻━┻ [23:10:45] *our named sizes [23:11:05] This is an excellent way to wrap up a Friday [23:11:20] I actually really like that idea ^, but worry about fonts [23:11:32] We'll have to test this on all our browsers [23:12:16] I consider this a valid conversation about estimation ... I fully support game-ify-ing things [23:12:57] who has the most broken computer? [23:13:07] they will be our QA on the fonts [23:13:09] ┬─┬ノ(°_°ノ) Please respect tables... [23:13:50] lol [23:13:55] * awight O_O's at rhebus [23:14:26] It's my favorite next to the actual table flip [23:16:51] do it! [23:17:15] hahahahah [23:17:53] (PS3) Ejegg: QUnit: call reallyInsertBanner() due to async issue [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233033 (owner: AndyRussG) [23:18:06] aah dstrine already did, I missed all that [23:18:55] (CR) Ejegg: [C: 2] "Fixes test and doesn't hurt real life banner insertion. Suppose it could go in cn.internal" [extensions/CentralNotice] (campaign_mixins) - https://gerrit.wikimedia.org/r/233033 (owner: AndyRussG) [23:20:21] Fundraising-Backlog: Parse Amazon last name data differently (or: review the way we receive Amazon name data) - https://phabricator.wikimedia.org/T86720#1562776 (CCogdill_WMF) Thanks @Ejegg, that explanation makes sense. I had hoped Amazon sent first and last name data separately, but I can see how it would... [23:22:04] hey ejegg awight dstrine XenoRyet [23:22:11] cwdent|afk: for information's sake [23:22:14] paypal's melting again [23:22:15] hey atgo [23:22:18] * dstrine waves [23:22:19] MBeat ^ [23:22:20] oh boy [23:22:24] yes? [23:22:29] "We are experiencing a system issue which may be affecting PayPal Website on the PayPal Live Site. We will send an update with additional details within the next 15-30 minutes. [23:22:30] " [23:22:34] rats [23:22:34] relevant to us? [23:22:39] i can take campaigns down... again. [23:23:05] lemme ping Pats [23:23:15] atgo: wins a prize for pinging IRC in under a minute [23:23:49] PPena: paypal "We are experiencing a system issue which may be affecting PayPal Website on the PayPal Live Site. We will send an update with additional details within the next 15-30 minutes. " [23:23:52] why doe they have to blow up at 4:20 on a friday [23:23:59] .... i think we all know. [23:24:03] doe? [23:24:06] yeah [23:24:25] hmm. not a bunch of Zendesk complaints anyway [23:25:04] taking down anyway [23:25:13] mmmk [23:25:26] atgo yes lets take it down [23:27:53] Fundraising-Backlog, Astropay Integration, MediaWiki-extensions-DonationInterface: AstroPay 'deposit' error actually indicates a CPF problem - https://phabricator.wikimedia.org/T109918#1562795 (Ejegg) NEW [23:31:14] campaigns are down [23:32:23] wowza [23:32:25] ok gotta go [23:32:40] For the record :) I agree with the decision.