#instantbird log on 11 04 2019

All times are UTC.

00:17:41 --> chrisccoulson has joined #instantbird
01:35:07 <-- chrisccoulson has quit (Ping timeout: 121 seconds)
02:18:42 <-- spiffytech has quit (Quit: ZNC - http://znc.in)
02:40:42 --> spiffytech has joined #instantbird
08:02:53 --> Jackneill has joined #instantbird
08:06:35 --> Jackneilll has joined #instantbird
08:07:14 <-- Jackneill has quit (Ping timeout: 121 seconds)
08:18:26 <-- florian has quit (Ping timeout: 121 seconds)
08:37:40 --> chrisccoulson has joined #instantbird
08:39:48 <-- chrisccoulson has quit (Quit: OSError: [Errno 130] Owner died)
08:41:37 --> chrisccoulson has joined #instantbird
09:13:57 --> gerard-majax has joined #instantbird
10:23:08 --> florian has joined #instantbird
10:23:08 * ChanServ sets mode +qo florian florian 
11:29:22 --> Logicoma has joined #instantbird
11:35:25 <-- Logicoma has quit (Ping timeout: 121 seconds)
12:05:59 --> Logicoma has joined #instantbird
12:06:01 --> clokep has joined #instantbird
12:20:07 <-- Logicoma has quit (Ping timeout: 121 seconds)
12:48:32 --> Logicoma has joined #instantbird
12:52:34 <-- Logicoma has quit (Ping timeout: 121 seconds)
14:11:19 --> Logicoma has joined #instantbird
14:55:44 <-- Logicoma has quit (Ping timeout: 121 seconds)
15:02:26 <clokep> florian: Any ideas what could cause bug 1592505? I feel like it can't be UI due to it working for IRC, but breaking for XMPP.
15:02:29 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1592505 blo, --, ---, nobody, NEW, XMPP message window ignores "return" so no messages can be sent
15:05:49 <florian> could the tb staff spend some time adding automated tests?
15:05:59 <florian> this kind of issue shouldn't be found on beta :-/
15:06:50 <clokep> I don't know. :-\
15:07:14 <florian> IRC does https://searchfox.org/comm-central/source/chat/protocols/irc/irc.js#269
15:07:23 <florian> all the other prpls use https://searchfox.org/comm-central/source/chat/modules/jsProtoHelper.jsm#663
15:08:17 <florian> my guess is https://bugzilla.mozilla.org/show_bug.cgi?id=1557506
15:08:19 <instantbot> Bug 1557506 nor, --, Instantbird 71, clokep, RESO FIXED, Remove [array] use in xpidl from chat/
15:08:46 <florian> previously this could return null
15:08:50 <clokep> Are you suggesting that *I* broke it? :P
15:09:20 <florian> I think the NS_ERROR_FAILURE means failing to convert null to the Array<AString> type
15:09:36 <clokep> Ah, interesting. Thanks!
15:09:42 <clokep> That sounds likely. :)
15:09:54 <clokep> Do you know how to handle a situation where it can return Array<AString> or null?
15:11:53 <florian> for native code I think there's a Maybe<> type
15:11:59 <florian> but it doesn't seem to exist in idl
15:12:03 <florian> maybe just a '?' at the end?
15:12:36 <florian> ah, that seems to be webidl syntax rather  than xpidl
15:13:36 <florian> ah, there are a few .idl files with a '?' suffix after the type
15:13:39 <florian> worth a try I think
15:21:54 <clokep> Cool. Thank you for the assist!
15:23:46 <clokep> Uhh...I think magic copy is broken?
15:25:45 <florian> wfm
15:25:55 <florian> I'm on... 70.0a1 (2019-07-24) (64-bit)
15:27:00 --> Logicoma has joined #instantbird
15:27:19 <clokep> I'm on 71b2.
15:27:24 <clokep> It seems to be working now though.
15:32:40 <clokep> florian: All the examples I've found use ? for input variables, not output. Which were you looking at?
15:32:56 <clokep> (Just adding a ? doesn't seem to compile: Array<AString>? prepareForSending(in imIOutgoingMessage aMsg);
15:33:55 <florian> all the examples I found seem to be in the mozilla/testing/web-platform/tests/interfaces folder, so maybe that's webidl there too :-/
15:34:08 <florian> yeah, looks like webidl contnet
15:34:09 <florian> sorry
15:34:26 <clokep> No problem. I can probably back out the change for that specific line if there's no better way to do it.
15:34:40 <clokep> Or I can go back to the original Mozilla bug and look further. :)
15:35:00 <florian> or just return an empty array instead of null?
15:35:24 <florian> but that means we can't make the prepareForSending function return something that means "please, do not send anything
15:35:30 <florian> "
15:41:48 <clokep> Yeah. I'm not sure if we actually do that or not.
15:41:54 <clokep> I feel like OTR might do that?
15:42:34 <florian> yeah, it might do
15:42:51 <florian> I almost said "do we care about OTR?" but I guess we do now
15:43:02 <florian> this could really do with tests
15:43:07 <florian> and it's possible to test with xpcshell!
15:45:37 <clokep> Which part?
15:45:50 <clokep> Lunch.
15:46:46 <florian> prepareForSending working in all cases
15:46:56 <florian> and all the imConversations APIs that OTR depends on
15:47:00 <florian> and maybe even OTR
15:48:21 <freaktechnik> all in chat/ should be xpc testable since it's the "model" side?
15:48:54 <florian> freaktechnik: yes, with varying levels of effort. Protocol code that requires fake servers is harder
15:48:56 <freaktechnik> or I guess almost all, there's some formerly share UI stuff in there I guess
15:48:57 <florian> but still doable
15:49:37 <freaktechnik> yeah, fully agreed. The better isolated a unit is, the easier it is to unit test ;)
15:50:56 <clokep> I think the protocols needing a "fake server" is kind of BS in some ways.
15:51:04 <clokep> You can write pretty decent tests without it.
15:51:11 <clokep> Skipping the socket layer, of course.
15:51:30 <clokep> Some of our IRC tests (I think) do that by implementing a fake socket that just has a hard-coded set of responses.
15:51:37 <florian> yeah, you could test most of the code without fake servers
15:51:55 <florian> I would want a fake server to have an end-to-end test that gives me confidence that we are able to connect and exchange messages
15:55:38 <clokep> I agree! I meant more for testing logic, etc. you don't need one!
15:55:42 <clokep> (Or want one, probably.)
17:29:30 <-- florian has quit (Ping timeout: 121 seconds)
19:37:15 <-- gerard-majax has quit (Ping timeout: 121 seconds)
19:40:00 --> florian has joined #instantbird
19:40:00 * ChanServ sets mode +qo florian florian 
19:50:33 <clokep> flo: Btw you were 100% right on that bug. It was due to the changes to the IDL file.
19:50:52 <clokep> So if there isn't a better option I'll undo a portion of that change tomorrow.
19:52:24 <clokep> Thanks for spotting that. :)
20:24:28 --> gerard-majax has joined #instantbird
20:30:34 <-- gerard-majax has quit (Ping timeout: 121 seconds)
20:43:32 --> gerard-majax has joined #instantbird
21:05:45 <-- gerard-majax has quit (Ping timeout: 121 seconds)
21:10:39 <-- clokep has quit (Ping timeout: 121 seconds)
21:37:30 --> gerard-majax has joined #instantbird
22:11:51 --> clokep has joined #instantbird
22:56:43 <-- Logicoma has quit (Ping timeout: 121 seconds)
23:37:32 <-- gerard-majax has quit (Ping timeout: 121 seconds)
23:42:05 <-- clokep has quit (Connection closed)