[12:00:15] fundraising-tech-ops, Operations, Ops-Access-Requests: Frack (boron and bismuth) access for Darian Patrick - https://phabricator.wikimedia.org/T135165#2296836 (Joe) [12:00:29] fundraising-tech-ops: Frack (boron and bismuth) access for Darian Patrick - https://phabricator.wikimedia.org/T135165#2296838 (Joe) [14:28:08] Fundraising-Backlog: Ingenico iframe styling has changed - https://phabricator.wikimedia.org/T135388#2297185 (Pcoombe) [14:41:48] Fundraising-Backlog: introduction to fr-tech for new analyst (Brent) - https://phabricator.wikimedia.org/T135392#2297258 (DStrine) [15:33:37] Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Configuring a banner sequence test - https://phabricator.wikimedia.org/T135398#2297497 (DStrine) [15:39:07] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Add some more unit tests to core on the functionality we are planning to leverage - https://phabricator.wikimedia.org/T135064#2297515 (Danny_B) [15:39:10] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Do some QA on how good the merged contacts look - side by side visual comparison tests. - https://phabricator.wikimedia.org/T135062#2297517 (Danny_B) [15:39:13] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Patch upstreaming : Participate in CiviCRM review week in order to get some of my work merged - https://phabricator.wikimedia.org/T135058#2297518 (Danny_B) [15:39:14] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Dedupe: review the rest of the code in our merge hook - https://phabricator.wikimedia.org/T135057#2297519 (Danny_B) [15:39:17] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Set up sched job - https://phabricator.wikimedia.org/T135055#2297522 (Danny_B) [15:39:19] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Dedupe speed fixes - https://phabricator.wikimedia.org/T135056#2297521 (Danny_B) [15:39:21] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: enhance existing retrieve & batch merge methodology in core by accepting more fluid criteria (currently only takes the group) & - https://phabricator.wikimedia.org/T135052#2297523 (Danny_B) [15:39:23] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: remove the block on UI batch merging and find some other way of constraining it so users can batch merge - https://phabricator.wikimedia.org/T135051#2297524 (Danny_B) [15:39:25] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM: Resolve issues around prevnext_cache table - https://phabricator.wikimedia.org/T135050#2297525 (Danny_B) [15:57:08] cwd i'm going to deploy those DI things we merged friday [15:57:35] * cwd scans memory [15:57:56] was stuff merged but not deployed? [16:00:25] I think we decided not to deploy becasue friday [16:00:40] Oh, I just mean the stuff we merged to master [16:01:13] like the carte bleu logo for FR [16:01:18] and the token param thing [16:01:58] oh right on [16:03:02] ah, looks like I confused frig prep with a rename/delete conflict in tests/ (as opposed to the useual modify/delete conflict) [16:03:50] ejegg: did it fail because the explanation was not on the first line of output? [16:03:51] ejegg: did you already deploy? I'm seeing french text in the credit card details section here: https://payments.wikimedia.org/index.php?title=Special:AdyenGateway&appeal=JimmyQuote&payment_method=cc&recurring=&uselang=fr&language=fr¤cy_code=EUR&amount=2&country=FR [16:04:21] dstrine not yet, you just have lowercase fr in the language params on that link [16:05:54] ah ok so the link we would want donors to use has capitals? When I use capitals is does show english [16:06:13] no, the normal link is lowercase language code [16:06:43] but we shouldn't be case-sensitive for that, which we just fixed [16:06:52] ok thanks [16:07:06] thank you for the fuzz testing! [16:07:06] can I send the above link to fr-online for testing? [16:07:42] sure, the carte bleu logo will be there in a little bit but is missing now [16:08:14] ok cool... sorry but I got one last question. What's the country code of Ukraine? [16:08:24] UK [16:08:33] thanks! [16:08:36] (great britain is GB) [16:08:38] yw! [16:09:35] lol that was going to be my next question :) [16:09:51] ok so this looks like the correct url for ukraine: https://payments.wikimedia.org/index.php?title=Special:AdyenGateway&appeal=JimmyQuote&payment_method=cc&recurring=&uselang=uk&language=uk¤cy_code=uk&amount=2&country=UK [16:10:46] (PS1) Ejegg: Merge branch 'master' into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/288976 [16:12:33] dstrine: yep, that looks right [16:12:48] thanks! emailing fr-online now [16:13:00] I'm curious whether anything is actually falling back to Russian though [16:14:27] even without custom fallbacks, we go to some trouble to give donors unspecific messages in their own language before something in another lang [16:14:33] dstrine: oh wait! [16:14:43] uhoh what? [16:14:53] we only added france and israel to the settings for adyen [16:15:11] didn't add Ukraine yet [16:15:20] oh I thought we did [16:15:54] what processor is being used in the link that I just pasted? [16:16:58] It's still the Adyen form [16:17:30] so what's missing? [16:17:37] but it's falling back to USD 'cause we haven't added the hryvnia to the supported list [16:17:54] omg yeah [16:17:57] and I'm suprised it's showing all the CC buttons [16:18:19] I just totally overlooked this since the rest was in Cyrillic [16:18:57] do you think we could get that out today too? [16:19:14] I'll go ahead with the current deploy and we can add UK after I figure out what cards to show [16:19:36] ok thanks! [16:19:59] also, might need an update to currency rates - think we haven't regenerated that file since before the situation there was so tense [16:20:36] oh wow ok [16:21:07] (CR) Ejegg: [C: 2 V: 2] Merge branch 'master' into deployment [extensions/DonationInterface] (deployment) - https://gerrit.wikimedia.org/r/288976 (owner: Ejegg) [16:22:27] so I really appreciate your help here. Do you think you could continue helping the Adyen stuff while Dylan is out? [16:22:37] definitely! [16:22:46] we have a bunch of bugs on the Israel form as well [16:22:51] ok thanks! [16:24:31] I'm getting pulled away from standup today. could we meet briefly at ~11 to parse some of this? I can help with phab tasks [16:27:01] (PS1) Ejegg: Update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/288981 [16:28:30] dstrine: sure, 11 pacific is fine [16:28:42] thanks! [16:28:48] (CR) Ejegg: [C: 2] Update DonationInterface submodule [core] (fundraising/REL1_25) - https://gerrit.wikimedia.org/r/288981 (owner: Ejegg) [16:51:13] Fundraising-Backlog: Add field to Silverpop export: highest_native_amount - https://phabricator.wikimedia.org/T135407#2297898 (CCogdill_WMF) [16:52:00] Fundraising-Backlog: Add field to Silverpop export: highest_native_amount - https://phabricator.wikimedia.org/T135407#2297910 (CCogdill_WMF) p:Triage>Normal [17:06:58] !log updated payments from 1af7208b4c7387a701f9ce83e33483d1e19213cb to 0b2d6807f68e7ccfc36a431e90d563b4d5a9e966 [17:07:05] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log, Master [17:08:07] so far so good [17:13:42] cwd: are you up to speed on paypal? I don't remember hearing this from Adam. Are we able to do internal tests for single payments? [17:15:27] dstrine: i got it loading locally but haven't put a test payment through, gotta mess with the testing portal, have had lots of irons in the fire [17:15:58] cwd: ok just checking in. thanks! [17:16:00] dstrine a lot of the paypal work is still in CR, I think [17:16:07] ok [17:16:24] yep that too, gonna have to make a couple calls sans-adam [17:24:00] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, MediaWiki-extensions-DonationInterface, FR-Adyen, and 3 others: Send correct shopperLocale to Adyen - https://phabricator.wikimedia.org/T135255#2297998 (Ejegg) Open>Resolved This was non-FR specific, just caused by case sensitivi... [17:24:06] cwd: with great power... [17:31:26] AndyRussG: you free for a meeting on CN? [17:32:13] dstrine: yes! [17:32:36] dstrine: woops sorry didn't see it there, coming in a sec [17:32:43] ok thanks [17:40:12] (CR) Ejegg: [C: 1] "looks good, just needs a manual rebase. Also TODO: fix camel case of yet another processor" (1 comment) [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [17:41:02] (CR) Ejegg: [C: 2] "Previous code was deployed this morning, this is good to go out any time" [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286996 (owner: Awight) [17:56:36] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, MediaWiki-extensions-CentralNotice: Spike: Can we allow fallback to alternative campaign if mixin would hide this one - https://phabricator.wikimedia.org/T124969#1971256 (DStrine) As a nice to have, we may want fallback information on the al... [18:12:23] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Adyen Hebrew UI bugs - https://phabricator.wikimedia.org/T135416#2298192 (DStrine) [18:12:50] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Adyen Hebrew UI bugs - https://phabricator.wikimedia.org/T135416#2298209 (DStrine) [18:12:52] Fundraising Sprint Hermit Crab Husbandry, Fundraising Sprint Internet Exploring, Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, and 3 others: Adyen form for French (France), Japanese (Japan), Ukrainian (Ukraine), & Hebrew (Israel) - https://phabricator.wikimedia.org/T128812#2298208 (D... [18:13:15] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Adyen Hebrew UI bugs - https://phabricator.wikimedia.org/T135416#2298192 (DStrine) a:Ejegg [18:14:30] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Setup Ukrainian forms for Adyen - https://phabricator.wikimedia.org/T135417#2298213 (DStrine) [18:14:42] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Setup Ukrainian forms for Adyen - https://phabricator.wikimedia.org/T135417#2298227 (DStrine) [18:14:44] Fundraising-Backlog, FR-Adyen: Hide "cardholder name" field from Adyen form - https://phabricator.wikimedia.org/T124467#2298226 (DStrine) [18:16:13] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Setup Japanese form for Adyen - https://phabricator.wikimedia.org/T135418#2298232 (DStrine) [18:16:37] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, I18n, RTL, Unplanned-Sprint-Work: Adyen Hebrew UI bugs - https://phabricator.wikimedia.org/T135416#2298258 (Amire80) [18:16:41] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Setup Japanese form for Adyen - https://phabricator.wikimedia.org/T135418#2298261 (DStrine) [18:16:43] Fundraising Sprint Hermit Crab Husbandry, Fundraising Sprint Internet Exploring, Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, and 3 others: Adyen form for French (France), Japanese (Japan), Ukrainian (Ukraine), & Hebrew (Israel) - https://phabricator.wikimedia.org/T128812#2298260 (D... [18:17:26] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Setup Ukrainian forms for Adyen - https://phabricator.wikimedia.org/T135417#2298213 (DStrine) [18:17:28] Fundraising Sprint Hermit Crab Husbandry, Fundraising Sprint Internet Exploring, Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, and 3 others: Adyen form for French (France), Japanese (Japan), Ukrainian (Ukraine), & Hebrew (Israel) - https://phabricator.wikimedia.org/T128812#2086811 (D... [18:24:25] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, I18n, RTL, Unplanned-Sprint-Work: Adyen Hebrew UI bugs - https://phabricator.wikimedia.org/T135416#2298302 (DStrine) adding screenshots {F4020387} {F4020384} [18:25:09] Fundraising-Backlog, Operations: Allow Fundraising to A/B test wikipedia.org as send domain - https://phabricator.wikimedia.org/T135410#2298303 (DStrine) [18:44:11] Fundraising-Backlog, FR-Adyen: Hide "cardholder name" field from Adyen form - https://phabricator.wikimedia.org/T124467#2298391 (Ejegg) @Amire80 says that Israeli users are likely to type their name in Hebrew for the initial identification, but re-type it in latin characters for the 'Cardholder name' fie... [19:03:26] (PS1) Ejegg: Adyen iframe CSS for RTL languages [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289002 (https://phabricator.wikimedia.org/T135416) [19:13:26] (PS2) Ejegg: Adyen iframe CSS for RTL languages [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289002 (https://phabricator.wikimedia.org/T135416) [19:19:00] Fundraising-Backlog, MediaWiki-extensions-DonationInterface: Amounts displayed in DonationInterface forms should be localized - https://phabricator.wikimedia.org/T93196#2298560 (Ejegg) [19:19:02] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, I18n, Patch-For-Review, and 2 others: Adyen Hebrew UI bugs - https://phabricator.wikimedia.org/T135416#2298559 (Ejegg) [19:26:57] (PS2) Cdentinger: Formatting, comments, robustness [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287160 (owner: Awight) [19:26:59] (PS16) Cdentinger: Move legacy PayPal stuff into a subdirectory [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [19:27:01] (PS4) Cdentinger: Catch nefarious bug with staged_vars [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287155 (owner: Awight) [19:29:24] (CR) jenkins-bot: [V: -1] Formatting, comments, robustness [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287160 (owner: Awight) [19:31:30] (CR) jenkins-bot: [V: -1] Move legacy PayPal stuff into a subdirectory [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [19:31:50] (CR) jenkins-bot: [V: -1] Catch nefarious bug with staged_vars [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287155 (owner: Awight) [19:51:34] Fundraising-Backlog: Change paymentswiki session cookie name - https://phabricator.wikimedia.org/T135439#2298850 (cwdent) [20:08:26] (CR) Anomie: Replace usage of wfSetupSession() (1 comment) [extensions/CentralNotice] - https://gerrit.wikimedia.org/r/282479 (https://phabricator.wikimedia.org/T132251) (owner: Florianschmidtwelzow) [20:14:14] dstrine ejegg eileen cwd Sorry computer disk crash issues!! [20:14:27] oh no! [20:15:02] Yeah, "superblock is corrupt" [20:15:21] Bad magic number [20:15:41] (CR) Eileen: "Is this underscore functional or just tidy up? I need to log it upstream since it needs to go there if we use it - so trying to know what " [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/284266 (owner: Ejegg) [20:18:10] (CR) Ejegg: "just to tidy up, since all the other components of the cache key were separated that way" [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/284266 (owner: Ejegg) [20:51:01] ejegg: i am bewildered at https://github.com/wikimedia/mediawiki-extensions-DonationInterface/blob/master/gateway_common/gateway.adapter.php#L2315 [20:51:23] trying to unpack adam's patch contents [20:51:29] it seems like a pretty involved problem [20:51:55] i almost typed patch adams [20:53:23] hrm... [20:53:42] the whole order of things starting here is pretty hard for me to follow: https://github.com/wikimedia/mediawiki-extensions-DonationInterface/blob/master/gateway_common/gateway.adapter.php#L465 [20:55:31] yeah, the duplication of data between $this->dataObj and unstaged is no fun [20:58:06] AaRg looks like my whole hd is failing, i/o errors galore [20:59:44] dang... Hope there's not too much un-pushed code on there! [21:00:49] bummer :( [21:03:15] ejegg: staged is what we will send to the processor right? [21:03:28] yep [21:04:18] unstaged is where staged is picked from? [21:04:32] pick/transform values to send [21:04:59] yep, exactly [21:05:09] then what is dataObj? [21:05:27] it's responsible for getting and normalizing the data in the first place [21:05:35] but it's got it's own copy of the data [21:05:54] that we just copy into unstaged at the end of the constructor [21:06:31] Unpushed code probly not... Bits and pieces of personal stuff there is, though [21:06:45] Or was :( [21:07:06] shoot... hope its recoverable [21:07:20] Metoo! Thx! [21:07:56] ejegg: I was just about to push this up as a pull request https://github.com/civicrm/civicrm-core/compare/master...eileenmcnaughton:tidy?expand=1 [21:08:31] but I'm wondering about the change id - I've tended to delete them when I put things up because I didn't know how gerrit would fare if they come in from upstream [21:08:44] (esp if the patch is amended - which this one isn't) [21:08:51] eileen: thanks! Please go ahead and delete the change id [21:08:56] ok cool [21:12:09] (CR) Eileen: "Upstream PR is here https://github.com/civicrm/civicrm-core/pull/8381" [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/284266 (owner: Ejegg) [21:12:19] (CR) Eileen: [C: 2] "Upstream PR is here https://github.com/civicrm/civicrm-core/pull/8381" [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/284266 (owner: Ejegg) [21:15:51] (PS1) Ejegg: Localize donation amount [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289066 (https://phabricator.wikimedia.org/T93196) [21:16:24] ejegg: i don't understand why it calls refreshGatewayValueFromSource, which appears to reset staged and unstaged, then calls stage again [21:16:27] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, MediaWiki-extensions-DonationInterface, Patch-For-Review, Unplanned-Sprint-Work: Amounts displayed in DonationInterface forms should be localized - https://phabricator.wikimedia.org/T93196#2299089 (Ejegg) a:Ejegg [21:16:58] cwd right, I forget why we need to do that one [21:17:17] (CR) jenkins-bot: [V: -1] Localize donation amount [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289066 (https://phabricator.wikimedia.org/T93196) (owner: Ejegg) [21:17:57] I'm not sure when we ever overwrite keys provided by the donor with keys that we get back from an API call [21:20:23] do you think this patch might be out of scope for the paypal integration? or maybe adam crashed into the problem [21:21:22] sounds like he was afraid it would interfere, but it mysteriously hadn't been [21:21:50] anyway, if the following ones still work rebased around it, might as well leave it for when he returns [21:22:46] good call, i'll try that [21:26:27] gerrit keeps logging me out [21:39:13] (PS3) Cdentinger: Formatting, comments, robustness [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287160 (owner: Awight) [21:39:15] (PS17) Cdentinger: Move legacy PayPal stuff into a subdirectory [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [21:42:41] ejegg: yeah those both pass when rebased, whew [21:42:58] nice [21:43:36] (PS2) Ejegg: Localize donation amount [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289066 (https://phabricator.wikimedia.org/T93196) [21:44:16] (PS4) Cdentinger: Formatting, comments, robustness [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287160 (owner: Awight) [21:47:03] (CR) Cdentinger: [C: 2] Formatting, comments, robustness [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287160 (owner: Awight) [21:48:20] (Merged) jenkins-bot: Formatting, comments, robustness [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/287160 (owner: Awight) [21:50:07] (PS18) Cdentinger: Move legacy PayPal stuff into a subdirectory [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [21:55:12] (CR) Cdentinger: [C: 2] Move legacy PayPal stuff into a subdirectory [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [21:56:00] (PS1) Ejegg: Pull out some inline styles [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289083 (https://phabricator.wikimedia.org/T135416) [21:57:00] (Merged) jenkins-bot: Move legacy PayPal stuff into a subdirectory [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286116 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [21:58:03] gotta relocate, back in a few! [22:10:40] (PS8) Cdentinger: Remove soft transition for old "token" parameter [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286996 (owner: Awight) [22:15:30] (CR) Cdentinger: [C: 2] Remove soft transition for old "token" parameter [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286996 (owner: Awight) [22:23:44] (Merged) jenkins-bot: Remove soft transition for old "token" parameter [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286996 (owner: Awight) [22:30:52] (PS25) Cdentinger: Rough PayPal Express Checkout integration [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/286117 (https://phabricator.wikimedia.org/T131811) (owner: Awight) [22:34:53] (PS1) Ejegg: More 'token' cleanup [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289096 [22:41:05] Fundraising Sprint Jabberwock Slaying, Fundraising-Backlog, Unplanned-Sprint-Work: Setup Japanese form for Adyen - https://phabricator.wikimedia.org/T135418#2299324 (Ejegg) @Ppena Should we show the JCB card logo on this one? [23:09:29] (PS1) Ejegg: Configure Adyen for JP and UA [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289100 (https://phabricator.wikimedia.org/T135418) [23:10:57] (PS1) Ejegg: Update Spanish TY letter [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/289101 (https://phabricator.wikimedia.org/T134489) [23:15:12] ejegg: i stared at this for a long time before realizing strpos returns 0 if the needle is at the beginning of the haystack: https://github.com/wikimedia/mediawiki-extensions-DonationInterface/blob/master/gateway_common/ResultPages.php#L135 [23:16:03] yeah, nice ambiguous false-y return value [23:16:51] .net strings have a convenience function .StartsWith('foo') -- so much more readable! [23:17:30] ruby makes 0 true which i have all kinds of other problems with [23:17:54] (PS1) Cdentinger: [WIP] Use PROTO_CURRENT for paypal urls [extensions/DonationInterface] - https://gerrit.wikimedia.org/r/289102 [23:20:03] cwd whoa, 0 true is just odd [23:21:44] * ejegg is tempted to replace out all the i18n calls with a call to an all-purpose function with a zillion options... [23:22:28] ruby> !!nil.to_i => true [23:22:42] Ack [23:23:23] types are hard [23:23:55] or maybe they're not and it's just type juggling that's hard [23:24:16] in a strongly typed language you don't have any of these problems, it just won't compile [23:24:40] conceptually it's just weird... [23:25:36] having none of a thing doesn't equate to falsehood [23:25:57] i would vote for the abolition of to_type methods [23:26:32] choose how to equate things in code [23:26:39] it's an arbitrary decision either way [23:26:42] yah... if you're parsing a string, be honest and use a parse method [23:31:49] ejegg: a pattern in php i really like instead of a function with a zillion options is having them as functions of a class that return $this [23:32:20] builder style [23:32:21] so you go $thing->('thing')->thing('thing') etc [23:32:41] i believe it actually qualifies as a "monad" [23:33:03] oh cool [23:33:21] nice to know the lingo [23:33:43] Yeah, actually the underlying Message class in mw core is sort of like that [23:33:56] it's got an inLanguage('en') method at least [23:34:21] We just have to wrap it for our extracurricular DI usage [23:38:25] here is an example from formerjob: https://github.com/sparkfun/SparkLib/blob/2cdcde30f7659883c483a399fe5a5977b6df4948/lib/SparkLib/Application/Link.php#L53 [23:39:01] it makes for some pretty clean controller code [23:40:47] the rain is taking a break, i gotta get the dog out for a jog, back later