[00:34:15] Fundraising-Backlog: Reconsider Redis message expiry - https://phabricator.wikimedia.org/T147531#2695585 (awight) [00:36:33] Fundraising-Backlog: Reconsider Redis message expiry - https://phabricator.wikimedia.org/T147531#2695598 (awight) Oops--and since we're using lists, the expiry applies to the entire key rather than list items. [00:50:49] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, Unplanned-Sprint-Work: New json encoding is breaking recurring and refund consumers - https://phabricator.wikimedia.org/T147532#2695626 (awight) [00:50:57] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, Unplanned-Sprint-Work: New json encoding is breaking recurring and refund consumers - https://phabricator.wikimedia.org/T147532#2695641 (awight) p:Triage>Unbreak! [01:05:09] (PS1) Awight: Throw an exception when we can't decode JSON [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) [01:06:00] awight: do you know offhand what permissions the TranslateExtension edits meta CNBanner stuff under? Now I'm worried we're gonna block it... [01:06:16] oof [01:06:25] I think it's as the editor? [01:07:22] Not sure how that's possible, it would make more sense if cn-admin was only required for publishing the translation, and anyone could translate. [01:15:33] awight: yeah at least for publishing it must be some special permission.... [01:16:15] Looking carefully at the code, the CN admin UI is only used to create the CNBanner page in site language, and that's the page that's protected [01:16:52] that rings a bell... why, I wonder [01:19:43] (PS1) Awight: JSON-encode stuff before giving to Redis [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314468 (https://phabricator.wikimedia.org/T147532) [01:22:14] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, Patch-For-Review, Unplanned-Sprint-Work: New json encoding is breaking recurring and refund consumers - https://phabricator.wikimedia.org/T147532#2695792 (awight) The bad data came from the PayPal audit parser, it was serialized with somet... [01:22:49] AndyRussG: This is a bit of an UBN, if you're still working: https://phabricator.wikimedia.org/T147532 [01:22:53] Sorry for the context switch [01:23:12] I have two patches that should plug the dam for now [01:37:10] awight: sure! I'm mostly for about 30 min, then fully here for another 1-2 hrs [01:39:01] Thanks, it's no rush. I want to get them out in the next... 14 hours or so [01:39:56] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, Patch-For-Review, Unplanned-Sprint-Work: New json encoding is breaking recurring and refund consumers - https://phabricator.wikimedia.org/T147532#2695813 (awight) Snipped the bad ones out of their queues: ``` lrange recurring 0 43 > recur... [01:42:10] awight: https://gerrit.wikimedia.org/r/#/c/314462/ looks totally sane. Should I try to test it or just +2 based on reading? [01:42:36] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, Patch-For-Review, Unplanned-Sprint-Work: New json encoding is breaking recurring and refund consumers - https://phabricator.wikimedia.org/T147532#2695814 (awight) It's probably easier to reprocess the audit files from yesterday than to tex... [01:43:03] AndyRussG: I managed to tickle the happy code paths, if that makes a difference [01:43:24] There should be unhappy path tests, but I sort of panicked before doing so [01:45:35] awight: huh? [01:46:15] (sorry I'm in a literal kind of abstract vibe today) [01:46:33] Lemme write a test first [01:48:23] (PS2) Awight: Throw an exception when we can't decode JSON [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) [01:48:34] AndyRussG: OK ^ that makes me feel more diligent [01:58:55] Should be a safe +2 now... [02:13:13] ah I get it, "unhappy path tests" [02:13:21] awight: but now I feel I have to understand the test! [02:14:20] :D There is time [02:14:52] awight: does that repo live anywhere on vagrant in the fr role? [02:17:31] awight: so you think these are unicode chars getting funky python encoding? [02:18:11] python outputs invalid json? [02:18:51] AndyRussG: yes, it's included by the crm module [02:20:06] cwd: hi. No, it's worse than that. We were handing a python dict to python-redis#rpush, [02:20:22] and it would do some internal serialization, apparently pythonically [02:20:29] but not compatible with JSON [02:20:41] either way php not erroring on a decode fail is ridiculous [02:20:44] ejegg|away mentioned the "u"s yesterday, and for some reason it didn't seem unusual [02:20:49] cwd: faux real [02:21:01] that is the worst kind of non determinism [02:21:23] ... and led to code having function names like "safe_decode" as a norm [02:21:32] heh yeah [02:21:43] "do not do the fuck$ing PHP json_decode thing" [02:21:48] == safe [02:22:05] don't feel bad, there are plenty of those in php core [02:22:27] meanwhile I'm writing more tests for the fundraising-tools repo. What's the python testing style the kids are using these days? unittest? [02:22:42] hell there's a whole mode in php called safe [02:22:52] bug = I used a built-in library function [02:23:08] engineered obsolescence [02:23:44] this is the extreme case of when i say all errors should be fatal [02:23:49] all errors should at least be errors [02:23:56] naw, I should use nose [02:24:18] does it detect code smell? [02:25:48] that's probably it! [02:26:54] (CR) Cdentinger: [C: 2] "The mind searing stupidity of a built in function that does not produce any type of error on failure..." [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) (owner: Awight) [02:27:25] (Merged) jenkins-bot: Throw an exception when we can't decode JSON [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) (owner: Awight) [02:27:36] awight: will those exceptions send to damaged? [02:27:43] return value is null when the message is null, or when we happened to completely fail to decode lots of text that did not say "null". [02:27:51] cwd: no, that's a big FIXME. [02:27:53] Want it? :) [02:28:13] sure thing [02:29:38] yeah it's one thing to return either a value or null. still a bad practice imo, but when there is an actual parser failure that does not error... [02:31:58] eh you probably didn't want that json anyway, just carry on executing everything [02:41:51] God forbid we actually halt a runaway web script [02:55:08] (CR) AndyRussG: Throw an exception when we can't decode JSON (1 comment) [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) (owner: Awight) [03:00:30] (CR) Awight: Throw an exception when we can't decode JSON (1 comment) [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) (owner: Awight) [03:01:30] awight: if you are still there... requeueing requires the exception to be WmfException which gets twisted across repos [03:02:53] ... [03:02:58] man does WmfException look like smashpig [03:04:02] Good idea! [03:04:16] Maybe even worth its own task [03:04:29] yeah that's where i was getting [03:04:31] u know [03:04:52] yeah. The exception specifications could be included as a default, but can be overridden in config. [03:05:08] e.g. to throw failmail for something normally benign [03:05:19] yeah it would be nice to have that stuff configurable [03:08:14] awight: arg the plan to protect the whole CNBanner namespace won't work. It's only the source language translation that gets protected. Other languages can be edited even by anons [03:08:48] Why is that? [03:08:58] I mean, I wonder if it's still desirable [03:09:04] 'Cause they're proposed translations, not published ones [03:09:17] A lot of translators don't have cn admin rights on meta [03:09:18] d'oh [03:09:58] And the source language isn't editable through Special:Translate, uh huh [03:09:59] so the CNBanner wiki pages actually get in their edit history the user who did the action on Special:Translation [03:10:06] yep [03:10:30] Dang, so we wait for a core fix I suppose [03:10:55] I guess the source language is already published via the normal CN admin ui [03:11:13] awight: dunno. at least I'll make the bug. [03:11:27] Cool--so we probably do support source language != en? [03:13:00] Preliminary, provisional congratulations on debugging, btw! [03:14:04] reasoning abount any cachey thingies can be agonizing [03:14:32] awight: aren't these messages probably good and just getting poorly encoded by python? [03:14:41] probably unicode chars [03:14:42] forget reasoning about... just knowing the barrier is there is half the struggle [03:14:52] cwd: I think that's not the json spec though [03:15:27] it's as if py-redis is doing an implicit cast to string [03:16:39] (PS1) Awight: WIP Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 [03:17:37] maybe. repr({"a": 1}) [03:17:37] "{'a': 1}" [03:18:03] I don't think we even get to the "u" business, the single quotes are wrong enough [03:18:22] oh yeah that too [03:18:36] but i mean, aren't we dropping potentially valid messages? [03:18:47] oh. totally [03:19:03] I attempted to comment on the task, that we should run those audit files again [03:19:34] (... why am I not able to import the "mock" module...) [03:24:10] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: wmf_common/WmfQueueConsumer should be able to requeue external exceptions - https://phabricator.wikimedia.org/T147540#2695825 (cwdent) [03:24:12] .tox.ini: yuck [03:25:54] cos why not introduce a "generative" glob-like DSL on top of an archaic windows config syntax [03:33:14] something about python must encourage that type of thing because i find so many of the standard libs esoteric and confusing [03:41:51] It's got nothing on the unbridled Ruby wizardry though... [03:52:41] (PS2) Awight: WIP Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 [03:52:43] (PS1) Awight: Remove unused dedupe module [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314476 [03:52:45] (PS1) Awight: Rename a -_test file to avoid nose autodiscovery [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314477 [04:02:56] (CR) Awight: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 (owner: Awight) [04:04:59] (PS3) Awight: WIP Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 [04:45:26] awight: did you by chance turn those jobs off? should we? [04:47:17] cya! [04:48:18] is it chewing up messages every time? [04:50:52] cwd: I turned them back on actually [04:50:59] was able to snip the bad ones out [04:51:06] the new queue is really looking up [04:51:38] did you remove them with redis-cli? [04:51:52] yep! [04:52:00] Was also able to dump them en masse to a file [04:52:03] (PS4) Awight: Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 [04:52:10] will the audit parser make more funky ones? [04:52:14] https://phabricator.wikimedia.org/T147532#2695813 [04:52:16] yeah [04:52:21] until that patch is merged [04:52:31] https://gerrit.wikimedia.org/r/#/c/314468/ [04:54:08] (CR) Awight: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 (owner: Awight) [04:54:17] cwd: btw we might be able to turn on Python unit tests in that repo ^ [04:55:33] perfect timing [04:55:40] weren't we just talking about this? [04:56:31] (PS5) Awight: Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 [04:56:32] :) [04:57:18] (CR) Awight: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 (owner: Awight) [04:59:27] aaargh, what is "check-voter" now. [05:02:00] (PS6) Awight: Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 (https://phabricator.wikimedia.org/T145012) [05:21:54] bed time! [05:51:23] (PS7) Awight: Some tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314475 (https://phabricator.wikimedia.org/T145012) [05:51:25] (PS1) Awight: Remove unused WorldPay audit module [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314484 [05:51:27] (PS1) Awight: Mindlessly fix flake8 things [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314485 [05:51:29] (PS1) Awight: Shuffle config usages around to be less of a jerk [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314486 [05:51:31] (PS1) Awight: Enable flake8 tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314487 [07:09:46] (PS1) Awight: WIP Trying to restore damaged UI tableselect [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/314505 (https://phabricator.wikimedia.org/T142058) [08:19:16] (PS1) Awight: WIP Regression test for T143903 [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314509 (https://phabricator.wikimedia.org/T143903) [08:35:08] hello from London [10:21:08] (CR) Hashar: "recheck" [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) (owner: Awight) [10:23:11] (CR) Hashar: "I did a recheck to validate the composer-hhvm-trusty job works properly (that is running on Nodepool disposable instance). Part of T143938" [wikimedia/fundraising/php-queue] - https://gerrit.wikimedia.org/r/314462 (https://phabricator.wikimedia.org/T147532) (owner: Awight) [10:24:39] (CR) Hashar: "recheck" [wikimedia/fundraising/SmashPig] (deployment) - https://gerrit.wikimedia.org/r/313834 (owner: Ejegg) [10:24:43] (CR) Hashar: "recheck" [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314332 (owner: Ejegg) [10:26:36] (CR) Hashar: "I did a recheck to validate the composer-hhvm-trusty job works properly (that is running on Nodepool disposable instance). Part of T143938" [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314332 (owner: Ejegg) [10:55:12] (CR) Hashar: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314485 (owner: Awight) [10:55:21] (CR) Hashar: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314487 (owner: Awight) [10:55:28] (CR) Hashar: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314509 (https://phabricator.wikimedia.org/T143903) (owner: Awight) [10:58:06] (CR) Hashar: [C: 1] Enable flake8 tests [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314487 (owner: Awight) [11:01:18] (CR) Hashar: [C: 1] Mindlessly fix flake8 things [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314485 (owner: Awight) [11:01:48] (CR) Hashar: "check experimental" [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314416 (https://phabricator.wikimedia.org/T145660) (owner: Awight) [11:01:50] (CR) Hashar: "check experimental" [wikimedia/fundraising/tools] (deploy) - https://gerrit.wikimedia.org/r/314445 (owner: Awight) [14:15:43] (CR) Siebrand: [C: -1] "i18n/L10n reviewed." (1 comment) [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/314196 (https://phabricator.wikimedia.org/T134958) (owner: Awight) [15:43:28] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Civi: restore the 'unsubscribe from spam' option to Main menu - https://phabricator.wikimedia.org/T147571#2696936 (MBeat33) [15:43:36] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Civi: restore the 'unsubscribe from spam' option to Main menu - https://phabricator.wikimedia.org/T147571#2696948 (MBeat33) p:Triage>Normal [16:50:52] just getting into NOLA, i'll be late to tech talk [17:00:24] fr-tech: In specifications, Murphy's Law supersedes Ohm's. [17:00:24] -- discuss. [17:01:24] be there in a few [17:05:19] that's interesting though [17:05:36] the thing about electricity is everything goes exactly as expected [17:05:42] to infinitely precise measurements [17:05:56] so i don't feel like you can really apply murphy's law to ohm's law [17:06:28] the idea of applying murphy's law at all to anything is insane [17:07:03] I think they were just trying to say, specifications are garbage [17:08:14] even ohm's law? [17:09:34] good question, maybe it was the only other law they were familiar with. Fortune is clearly written by anarchosyndicalists [17:28:28] AndyRussG: cwd ejegg|away XenoRyet would it be ok if we moved the standup by 15 minutes to accommodate the knowledge engine talk? I know AndyRussG has to go by 1:15 but we could at least get standp done by then. [17:28:44] Works for me [17:30:42] yup [17:33:09] dstrine: I'll miss BS time, but otherwise fine} [17:51:28] dstrine: ah just read your full message /me chides self for typing before reading/listening... thx for taking into account!! [17:51:46] AndyRussG: no problem! [17:52:38] I miss tons of conversations on IRC and ask really dumb questions [17:52:50] I'm like donnie in the big lebowski :P [17:55:30] just took a poll of some friends as to what composer is asking when it asks: "Discard changes [y,n,v,d,s,?]?" [17:55:46] landed on: youthful, naive, vertiginous, deleterious, subtle, ?uestlove [17:59:32] I miss DOS [Y]es [No] [17:59:35] [N]o [17:59:58] dstrine: works for me [18:00:00] I won't lie, pretty much the second thing I want to do to any CLI project is add ncurses and have fun [18:00:16] cwd lol [18:03:47] cwd & awight: thanks for adopting that problem last night! [18:04:07] Freaking silent failure on json decode... [18:04:08] It was a fun one--you see the conclusion? [18:04:10] hahaha [18:04:20] At least we didn't pay for PHP [18:04:30] I guess cwd's got it making a racket when that happens now? [18:04:43] ah almost [18:04:56] just massaging the deploy [18:05:06] of course composer update blew up [18:05:46] It's... somehow saving us time and cognitive overhead [18:06:03] ejegg: You in the mood for CR of sweeping changes to fundraising-tools? [18:06:05] composer? [18:06:15] cwd: yes, itsn't that a funny thought? [18:06:27] awight: sure! [18:06:29] i really think we should check out that composer merge plugin [18:06:35] Computers always save us time by forcing us to adopt a completely broken way of working [18:06:39] cwd: +1 [18:06:56] having one big vendor dir sounds awesome and maintainable [18:07:11] awight d'oh, as soon as gerrit's back [18:07:23] awight: i have definitely thought about that a lot [18:07:48] like the first time you play a guitar it is totally weird [18:07:55] hell the first 100 times [18:08:20] but look at how amazing guitar is [18:08:33] so everyone is focused on making the easiest possible interface [18:09:02] Fundraising-Backlog, fundraising-tech-ops, FR-ActiveMQ, Documentation: Documentation: Update mw:Fundraising_tech/Message_queues to reflect new landscape - https://phabricator.wikimedia.org/T147583#2697348 (awight) [18:09:04] but that probably means making it so simple that it can never be interesting [18:09:20] Jeff_Green: (you might want to subscribe to task above) [18:09:25] people are awesome at honing into weird stuff and becoming incredible at it [18:10:19] cwd: yeah unfortunately the things confusers cause us to do are rarely even design choices. It's like, develop a tic to triple click at this one spot on the screen multiple times cos the first clicks are not recognized... [18:11:35] yeah i guess i'm not considering blatantly broken design [18:11:58] although people are amazing at that too [18:12:19] http://i.imgur.com/z8i1nSe.jpg They actually do that. sexy time! [18:14:11] awight: whoa, did you sleep at all? [18:14:16] ejegg: not just me, then? I'm now sure if I'm reassured or horrified [18:14:19] ejegg: oh... sleep [18:14:26] yeah I do that sometimes [18:14:38] that's quite a raft of patches! [18:14:58] Just trying to catch up with a 4-hr parenthesis on Tuesday [18:18:48] There, that's the one I was working towards ... v [18:19:00] https://gerrit.wikimedia.org/r/314509 Regression test for T143903 [18:19:00] T143903: PayPal audit issue: donation not in Civi - https://phabricator.wikimedia.org/T143903 [18:28:39] nuts. No composer install until gerrit is back up! [18:34:17] hmm, git-review -l can list stuff for me, but the ssh gerrit review just hangs [18:34:25] Does that generally work? [18:34:49] It's flaky at the moment, [18:34:49] lemme see [18:34:56] gerrit ssh://awight@gerrit.wikimedia.org:29418/wikimedia/fundraising/crm.git (push) [18:35:01] yah that works [18:35:22] but not at the moment. [18:35:50] It looks fun in #wikimedia-operations [18:36:00] oh derp, wrong port number [18:36:07] hehe [18:36:16] well, I think I just +2ed the json fix [18:36:31] err I thought it had already... weird [18:36:37] oh? [18:36:41] let's see... [18:37:04] oic, in tools. Yes that was still waiting CR, thanks! [18:38:16] cool, jenkins-bot merged it! [18:38:46] with a few aliases, I could get to like this interface [18:50:29] back in an hour... [20:44:43] An hour of driving around isn't what it used to be. [21:02:42] Is gerrit still down? [21:03:33] ah nvm that would be my torrent [21:18:22] welp gerrit is back [21:21:49] meanwhile the paypal console is crashing hard [21:22:04] haha can't win them all [21:22:33] (PS2) Awight: WIP Trying to restore damaged UI tableselect [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/314505 (https://phabricator.wikimedia.org/T142058) [21:23:51] (CR) Paladox: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/314505 (https://phabricator.wikimedia.org/T142058) (owner: Awight) [21:25:31] (CR) Ejegg: [C: 2] Update FundraisingEmailUnsubscribe [core] (fundraising/REL1_27) - https://gerrit.wikimedia.org/r/314417 (owner: Ejegg) [21:26:58] sweet - alias cplus2="ssh -p 29418 gerrit.wikimedia.org gerrit review --code-review +2" [21:27:06] then cplus2 [21:27:09] totally works [21:28:10] cwd 500 errors at paypal console? I got those the first few times I tried to log in too - after a day I tried again and it was fine [21:29:33] ejegg: when i click api access it just spins forever [21:29:56] oh huh [21:30:05] let me see if I can get to that [21:32:36] (Merged) jenkins-bot: Update FundraisingEmailUnsubscribe [core] (fundraising/REL1_27) - https://gerrit.wikimedia.org/r/314417 (owner: Ejegg) [21:38:12] !log updated payments-wiki from 27ffd8cb01a5820a0a4e143503b1976e858984bd to 1fbe171bca30d1fb7a4b7d937a740d87f7c9c8e3 [21:38:17] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [21:39:44] ok, unsubscribe is no longer writing to activeMQ [21:41:44] fantastic! [21:44:52] (PS1) Ejegg: Merge branch 'master' into deploy [wikimedia/fundraising/tools] (deploy) - https://gerrit.wikimedia.org/r/314602 [21:44:57] (CR) Ejegg: [C: 2] Merge branch 'master' into deploy [wikimedia/fundraising/tools] (deploy) - https://gerrit.wikimedia.org/r/314602 (owner: Ejegg) [21:50:49] (Merged) jenkins-bot: Merge branch 'master' into deploy [wikimedia/fundraising/tools] (deploy) - https://gerrit.wikimedia.org/r/314602 (owner: Ejegg) [21:53:26] !log updated tools from bde60d5ebbdb89c8ecdf0653e92d29f6a5939ec7 to 6e36fd547b97c426bfb6810d5bc2c9fd4b66efa5 [21:53:31] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [21:53:35] ok, now we can re-run those paypal audit files [21:55:33] ejegg: did you update php-queue? [21:55:55] cwd oh, just the tools repo [21:56:01] with the json encoding fix [21:56:19] ah ok, there is one in php-queue to throw an exception if it fails [21:56:26] if you think that's still a possibility [21:56:33] oh cool, also good to have [21:56:34] i was updating it but got tangled up in composer [21:57:04] yah like composer depending on gerrit. that was uncomfortable [21:57:21] bd808: can i ask you a composer merge plugin question? [21:58:34] the examples don't have it merging stuff from vendor [21:58:46] all the composer.jsons in there [21:59:13] is it automatic, or maybe i don't actually want that? [22:01:05] !log enabled paypal nightly audit parser [22:01:10] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [22:05:09] ok, moved the 2016100* files back and am re-parsing them [22:06:09] maddening. Drupal is recursively descending into my table data, until it dies by trying to access the lowest-level cell value as an "form element" array. [22:06:20] This is why we shouldn't use arrays. [22:07:44] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Generic Individuals Import Error - https://phabricator.wikimedia.org/T147521#2695203 (Ejegg) @LeanneS, is the file up on the fundraising share? Could you paste the path here? [22:07:49] Some stupid declarative or function signature has one too few or too many levels of child array and it melts down [22:08:06] cool, recurring messages from the audit look correcly encoded [22:08:21] though still without source fields [22:08:49] ejegg: The funny thing about that element_children($element(['#options'])?) is that is behaves the same with or without the ['#options']. [22:08:50] Fundraising-Backlog, FR-Paypal, Patch-For-Review: PayPal is creating random one-time charges against PayPal subscriptions - https://phabricator.wikimedia.org/T143903#2697666 (awight) [22:08:52] it looks like we'll have to do significant cleanup before we can use composer-merge-plugin [22:09:06] XenoRyet: if you have something for that close to ready, I can zap the queue messages and re-run the files after that's deployed [22:09:25] cwd: Almost a good thing to have that burner ignited [22:09:28] awight: ugh, drupal [22:09:41] ejegg: It seemed like such a good idea, in 1999 [22:10:21] ejegg: Not yet. I keep getting sucked into the Adyen hole. I should probably knock that off. [22:10:29] oops, breaking donations queue consume now [22:10:56] form.inc: 4,805 lines [22:11:03] yeah i agree. we need to be able to composer update in any repo but our lock files have diverged quite a bit [22:11:39] cwd: lock files are just one more color layer in the cheesecake [22:12:38] yeah they are stupid. i want one or the other, 100% declarative, or self updating [22:12:46] dang, yeah, we really need those source fields to do the right thing with failed messages [22:13:11] Those should be normalized into a 1-to-many schema [22:14:19] !log disabled paypal audit processor [22:14:27] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [22:15:23] !disabled donations, refund, and recurring queue consumers [22:15:30] !log disabled donations, refund, and recurring queue consumers [22:15:32] derp [22:15:49] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [22:16:40] awight: can you delete just list entries that match a pattern? [22:16:47] in redis? [22:16:53] ejegg: ooh, I haven't seen that yet [22:17:07] sounds scary [22:17:27] no [22:17:34] nvm, I guess they're all consecutive [22:18:15] argh: I think it will take 2 calls to LTRIM [22:18:24] note that you trim the range you want to *keep* [22:18:28] yep [22:18:48] dastardly. Anything I can do to help with the deploys? [22:18:54] fortunately the bad entries are all at the head, not in the middle [22:19:01] ah good [22:19:27] btw, is this condition something we should add an assert for going forward? [22:19:34] awight: think we're pretty well deployed, just need those source fields on audit (and need the baseQueueConsumer to be more robust to funky date fields) [22:19:50] k. I'll keep my head poked into Drupal. [22:20:14] Integrating with an already deprecated forms api. [22:26:55] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Generic Individuals Import Error - https://phabricator.wikimedia.org/T147521#2697897 (LeanneS) @Ejegg thanks - I've added a file to fundraising - tech - major gifts - engage import [22:31:49] !log enabled donations queue consumer [22:31:56] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [22:33:27] (PS1) Ejegg: Add some debug logging to queue consumer [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314613 [22:38:29] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Wrong date encoding fails some donation messages - https://phabricator.wikimedia.org/T147603#2697932 (awight) [22:39:25] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Wrong date encoding fails some donation messages - https://phabricator.wikimedia.org/T147603#2697944 (awight) p:Triage>High High priority, because it's a fatal error to our import process. [22:47:18] (PS1) Awight: DO NOT MERGE Tampering with Drupal forms [wikimedia/fundraising/crm/drupal] - https://gerrit.wikimedia.org/r/314621 [22:47:27] (PS3) Awight: WIP Trying to restore damaged UI tableselect [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/314505 (https://phabricator.wikimedia.org/T142058) [22:51:07] there is no vendor submodule for crm? does deploy do composer install? [22:54:29] there's a vendor submodule on the deployment branch [22:54:35] (only) [22:55:05] aah thanks [22:56:00] (PS1) Ejegg: Robustify original date logic [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314624 [22:56:34] awight: what's the format of the redis-cli dotfile? [23:01:43] I don't have one yet :-/ [23:03:48] ah, i misunderstood an earlier comment [23:06:35] (CR) Awight: [C: 2] Robustify original date logic (3 comments) [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314624 (owner: Ejegg) [23:07:18] I think I was asking if you had one ;) [23:07:35] (Merged) jenkins-bot: Robustify original date logic [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314624 (owner: Ejegg) [23:07:53] ahh, can't find any documentation :( [23:09:24] http://redis.io/topics/rediscli [23:09:28] I don't see anything useful [23:10:08] (CR) Ejegg: "thanks!" (2 comments) [wikimedia/fundraising/SmashPig] - https://gerrit.wikimedia.org/r/314624 (owner: Ejegg) [23:10:24] ok, got the queues cleaned up [23:10:56] !log enabled donations, recurring and refund queue consumers [23:11:05] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [23:12:10] XenoRyet: I can take that source fields thing for the audit parser if you want to keep figuring out Adyen [23:15:41] Yea, go ahead and take it. The Adyen thing keeps sticking in my head, can't seem to drop it. [23:16:17] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, FR-ActiveMQ, FR-Paypal, Unplanned-Sprint-Work: Paypal audit messages missing source fields in Redis - https://phabricator.wikimedia.org/T147341#2698078 (XenoRyet) a:XenoRyet>None [23:16:56] XenoRyet: Which one is that? glitch with T147355? [23:16:57] T147355: Create a GB form for adyen - https://phabricator.wikimedia.org/T147355 [23:17:12] Yea, that one. [23:17:48] I'm becoming less ok with just pushing an NA value for the needed feild. [23:17:54] Feel free to rubber duck debug, I don't know the context [23:17:59] i gotta take off, ttyl! [23:18:02] ah--provinces? [23:18:07] cwd: peace [23:18:23] (PS1) Ejegg: Add source fields to Redis audit messages [wikimedia/fundraising/tools] - https://gerrit.wikimedia.org/r/314629 (https://bugzilla.wikimedia.org/147341) [23:18:27] Awight: Actually turned out they don't care about state/provice. We can leave that off just fine. [23:18:46] oh excellent. [23:18:51] Turns out its house number they want, but only in the UK, they apparently don't care about it in the US. [23:18:56] wat. [23:19:03] Yea, weird [23:19:17] That would be a pretty funny-looking form [23:19:27] [23:19:58] That is strange though, I thought that AVS required street + zip everywhere. [23:20:04] We are asking for street on the UK form, so it would sort of fit. But it wouldn't have parity with the current form. [23:20:06] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, FR-ActiveMQ, FR-Paypal, Unplanned-Sprint-Work: Paypal audit messages missing source fields in Redis - https://phabricator.wikimedia.org/T147341#2689647 (Ejegg) a:Ejegg [23:20:17] I gotta go pick up a mattress [23:20:40] What they're looking for is ect... [23:20:43] ejegg|afk: getting boozhey, eh [23:21:12] * awight looks for email [23:21:42] The form loads and it accepts a transaction on the test site if you just throw 'NA' in the missing feild, but I'm not convinced that wouldn't bork more than it would fix. [23:21:46] It's hacky too. [23:21:53] ok [#RQT-435-85053]: Can billingAddress.stateOrProvince be made an optional field? [23:22:38] Yea, that's the only email I have from them on the issue. The rest has just been poking around in the docs and testing. [23:23:13] huh--right, the email doesn't say much [23:27:48] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, FR-Adyen, MediaWiki-extensions-DonationInterface, and 4 others: Create a GB form for adyen - https://phabricator.wikimedia.org/T147355#2690265 (awight) a:XenoRyet [23:29:46] Fundraising Sprint Stirring The Pot, Fundraising-Backlog, FR-Adyen, MediaWiki-extensions-DonationInterface, and 4 others: Create a GB form for adyen - https://phabricator.wikimedia.org/T147355#2690265 (awight) There's a production glitch--apparently Adyen in GB requires some extra billingAddress...