#instantbird log on 03 22 2013

All times are UTC.

00:02:08 <-- rohandalvi has quit (Client exited)
00:02:31 <flo-retina> so I think that was right
00:02:35 <flo-retina> thanks for the review :)
00:02:57 <Mic> Ah!
00:03:15 <Mic> I had read that as "Force binding (of the) attachment".
00:03:49 <Mic> Which made little sense for me :)
00:04:00 <flo-retina> yeah, seems to not make much sense
00:04:04 <flo-retina> but it's 1am
00:04:10 <Mic> true
00:04:18 <Mic> Good night :)
00:04:25 <flo-retina> thanks, good night :)
00:04:46 <Mic> I'm really looking forward to have this fix in a nightly
00:05:04 <EionRobb> I'm really looking forward to have this fix in a *nighty*
00:05:10 --> rohandalvi has joined #instantbird
00:05:52 <flo-retina> Mic: tomorrow ;)
00:06:00 <flo-retina> Mic: well, 'today' actually
00:06:21 <flo-retina> EionRobb: I don't see what you mean. (it's 1am for me too ;))
00:06:31 <Mic> I was just about to set [checkin-needed] on this bug, so it won't be missed but that's even better :)
00:07:02 <flo-retina> I don't unapply a patch I made locally if I can just get an r+ immediately and check it in ;)
00:08:30 <instantbot> florian@instantbird.org set the Resolution field on bug 557 to DUPLICATE of bug 1904.
00:08:33 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=557 nor, --, ---, nobody, RESO DUPLICATE, Keys sometimes broken on the account manager (a sort of focus loss?)
00:08:34 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1904 nor, --, ---, nobody, NEW, Changing the selected account with the up/down arrow keys works only once
00:09:08 <Mic> Mid-aired...
00:10:40 <-- clokep has quit (Ping timeout)
00:11:15 <instantbot> Check-in: http://hg.instantbird.org/instantbird/rev/c3afef072ba0 - aleth - Bug 1881 - Nick completion should add punctuation after complete nicks, r=fqueze.
00:11:16 <instantbot> Check-in: http://hg.instantbird.org/instantbird/rev/cc4c3682aa17 - Florian Quèze - Bug 1904 - Changing the selected account with the up/down arrow keys works only once, r=Mic.
00:12:01 <-- Mic has quit (Quit: No time to waste, let's go!)
00:17:30 <instantbot> New Core - Debug bug 1905 filed by florian@instantbird.org.
00:17:31 <instantbot> florian@instantbird.org requested review from clokep@gmail.com for attachment 2294 on bug 1905.
00:17:32 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1905 tri, --, ---, nobody, NEW, Stop including venkman in debug builds
00:19:52 <-- rohandalvi has quit (Client exited)
00:20:27 <instant-buildbot> build #364 of macosx-onCommit is complete: Failure [failed compile]  Build details are at http://buildbot.instantbird.org/builders/macosx-onCommit/builds/364  blamelist: aleth <aleth@instantbird.org>, Florian Qu?ze <florian@instantbird.org>
00:20:33 <-- EionRobb has quit (Connection reset by peer)
00:24:29 --> EionRobb has joined #instantbird
00:26:39 --> clokep has joined #instantbird
00:26:40 * ChanServ sets mode +o clokep 
00:32:36 <instantbot> benediktp@ymail.com requested review from aleth@instantbird.o rg for attachment 2295 on bug 260.
00:32:39 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=260 min, --, ---, benediktp, ASSI, Pasting in the conversation input box doesn't send typing notifications
00:34:28 <flo-retina> ah, so that's who Mic goes to bed!
00:34:31 <flo-retina> *how
00:49:44 <-- Mook_as has quit (Quit: Mook_as)
00:51:31 <instant-buildbot> build #387 of linux-onCommit is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/linux-onCommit/builds/387
01:21:51 --> jb has joined #instantbird
01:25:43 --> rohandalvi has joined #instantbird
01:28:38 <-- clokep has quit (Ping timeout)
01:41:13 --> clokep has joined #instantbird
01:41:13 * ChanServ sets mode +o clokep 
01:45:03 <instant-buildbot> build #373 of win32-onCommit is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/win32-onCommit/builds/373
01:48:39 <instantbot> clokep@gmail.com granted review for attachment 2294 on bug 1905.
01:48:41 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1905 tri, --, ---, nobody, NEW, Stop including venkman in debug builds
01:59:57 <-- jb has quit (Ping timeout)
02:34:02 <-- clokep has quit (Quit: Instantbird 1.4a1pre -- http://www.instantbird.com)
02:37:27 --> Mook has joined #instantbird
03:14:12 <-- rohandalvi has quit (Client exited)
03:50:06 --> Kaishi has joined #instantbird
03:53:12 <instant-buildbot> build #817 of linux-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/linux-nightly-default/builds/817
04:01:23 <-- Kaishi has quit (Quit: Kaishi)
04:01:32 --> Kaishi has joined #instantbird
04:42:18 <instant-buildbot> build #813 of macosx-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/macosx-nightly-default/builds/813
04:52:26 <-- Mook has quit (Quit: Mook)
05:00:10 <-- rdickens has quit (Quit: Leaving)
05:06:24 <-- Kaishi has quit (Ping timeout)
05:06:35 --> jb has joined #instantbird
05:10:39 <-- jb has quit (Connection reset by peer)
05:10:57 --> jb has joined #instantbird
05:29:05 <-- EionRobb has quit (Quit: Leaving.)
05:32:35 <-- jb has quit (Ping timeout)
06:06:56 <-- skeledrew has quit (Ping timeout)
06:08:52 <instant-buildbot> build #909 of win32-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/win32-nightly-default/builds/909
06:52:43 --> skeledrew has joined #instantbird
06:53:58 --> deltafalcon has joined #instantbird
08:18:50 <instantbot> benediktp@ymail.com set the Resolution field on bug 1904 to FIXED.
08:18:53 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1904 nor, --, ---, nobody, RESO FIXED, Changing the selected account with the up/down arrow keys works only once
08:20:55 --> Mic has joined #instantbird
08:20:56 * ChanServ sets mode +h Mic 
08:48:13 <-- flo-retina has quit (Quit: Instantbird 1.4a1pre -- http://www.instantbird.com)
08:48:15 --> flo-retina has joined #instantbird
08:48:15 * ChanServ sets mode +qo flo-retina flo-retina 
09:02:28 <-- gerard-majax_ has quit (Ping timeout)
09:34:58 <Mic> I didn't know that tweets could contain linebreaks: http://i.imgur.com/q00kwwX.png
09:35:10 <Mic> And neither that we'd show them.
09:37:26 <-- chrisccoulson has quit (Quit: PM: Preparing frontal lobe for mem sleep)
09:40:48 --> chrisccoulson has joined #instantbird
09:42:05 --> gerard-majax_ has joined #instantbird
09:42:31 --> mpmc has joined #instantbird
09:46:16 <-- mpmc has quit (Ping timeout)
10:01:53 <instantbot> Check-in: http://hg.instantbird.org/instantbird/rev/6f4aabdb298d - Florian Quèze - Bug 1905 - Stop including venkman in debug builds, r=clokep.
10:03:55 --> clokep has joined #instantbird
10:03:55 * ChanServ sets mode +o clokep 
10:13:22 <instant-buildbot> build #365 of macosx-onCommit is complete: Failure [failed compile]  Build details are at http://buildbot.instantbird.org/builders/macosx-onCommit/builds/365  blamelist: Florian Qu?ze <florian@instantbird.org>
10:18:37 <clokep> Mic: We've always shown line breaks in tweets, Twitter.com just started to a couple weeks ago.
10:20:22 <instantbot> clokep@gmail.com set the Resolution field on bug 1905 to FIXED.
10:20:26 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1905 tri, --, 1.4, florian, RESO FIXED, Stop including venkman in debug builds
10:21:03 <instantbot> clokep@gmail.com set the Resolution field on bug 1881 to FIXED.
10:21:08 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1881 enh, --, 1.4, aleth, RESO FIXED, Nick completion should add punctuation after complete nicks
10:37:01 <-- clokep has quit (Quit: Instantbird 1.4a1pre -- http://www.instantbird.com)
10:37:20 <flo-retina> the emails from reviews on github pull requests are really hard to understand
10:37:32 <flo-retina> I almost suspect it's on purpose so that we load the webpage
10:37:40 --> clokep has joined #instantbird
10:37:41 * ChanServ sets mode +o clokep 
10:38:11 <clokep> flo-retina: You'll need to tell me how to get that JS stack on shutdown at some point
10:38:49 <flo-retina> if you write "debugger;" in the JS code it prints a JS stack to the terminal for debug builds
10:39:39 <flo-retina> you know the crash is in a call to purpleAccountBuddy::GetServerAlias
10:39:49 <flo-retina> so it's easy to find which JS code calls that, and to add a debugger; there
10:40:05 <flo-retina> the JS stack of the crash will be the last printed stack before the build crashes
10:40:55 <clokep> Oh OK!
10:41:03 <flo-retina> there's another solution if you can catch the crash with a debugger. You can execute DumpJSStack() (it's a C symbol exported in debug builds)
10:41:07 <clokep> Hopefully it crashes with my debug build?
10:41:25 <clokep> https://github.com/fqueze/talkilla/commit/c2965065644c98cf5fa7e9263fe03eefae8b4d33 looks very similar to http://lxr.instantbird.org/instantbird/source/chat/protocols/irc/ircBase.jsm#112 ;)
10:41:25 <flo-retina> yeah, if you can't reproduce with a debug build, it will be more difficult to debug :(
10:41:47 <flo-retina> clokep: both repositories are MPL2'ed so I'm allowed to do that
10:42:05 <flo-retina> clokep: and as you can guess, I loved https://github.com/fqueze/talkilla/commit/c2965065644c98cf5fa7e9263fe03eefae8b4d33#commitcomment-2859404 ;)
10:42:09 <clokep> flo-retina: I know. :) Reusing code is good!
10:42:54 <clokep> utils! :)
10:43:13 <clokep> flo-retina: Was more of I clikced on a random link in @WebRTC-Apps and was like "Hey, I know this code!"
10:44:31 <flo-retina> :)
10:44:44 <flo-retina> clokep: yeah, that function really needs to go in utils.js
10:57:43 <clokep> Do we have a bug about not retweeting tweets that are already in your timeline?
10:58:10 <clokep> E.g.Standard8 tweeted something, lhirlimann retweeted it, I already follow Standard8, do I really need to see the RT?
10:58:42 <flo-retina> I don't think we filed that
10:58:55 <clokep> #2 is, is it valid? :)
10:58:59 <flo-retina> would be nice to have a way to show on the original tweet how many times it's been retweeted
10:59:45 <flo-retina> clokep: the annoyance of seeing the same tweet dozens of times if it's a popular one is real. Whether the proposed solution of just not showing the RTs that aren't the first one is valid, I'm not sure
10:59:54 <clokep> Ah, bug 1253?
10:59:57 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1253 enh, --, ---, nobody, NEW, Don't show RTs of tweets that are already in the timeline
11:00:23 * clokep would also like bug 1667 fixed.
11:00:26 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1667 enh, --, ---, nobody, NEW, Display RTs by showing the original tweet
11:00:47 <flo-retina> ahah
11:00:57 <flo-retina> so obviously my memory of what's already filed is poor these days
11:01:27 <flo-retina> (I filed a dup yesterday that I would have found trivially if I had searched; which I didn't do because I thought it wasn't filed :-S)
11:02:14 <flo-retina> clokep: https://bugzilla.instantbird.org/show_bug.cgi?id=1881#c12 you actually don't need to wait ;)
11:02:18 <instantbot> Bug 1881 enh, --, 1.4, aleth, RESO FIXED, Nick completion should add punctuation after complete nicks
11:03:16 <clokep> flo-retina: Yes, I know! :) I'm excited for it.
11:03:47 <clokep> Remember when we didn't have tab complete? :P
11:04:16 <flo-retina> clokep: remember when we didn't have show nick?
11:04:37 <clokep> :P
11:06:35 <-- clokep has quit (Quit: Instantbird 1.4a1pre -- http://www.instantbird.com)
11:07:52 <Mic> hmm, "clo|" -> TAB -> "clokep: |" -> BACKSPACE -> "clokep|" -> TAB -> "clokep|" = unchanged: is that intended?
11:27:35 <-- flo-retina has quit (Quit: Instantbird 1.4a1pre -- http://www.instantbird.com)
11:48:49 --> clokep_work has joined #instantbird
11:48:49 * ChanServ sets mode +o clokep_work 
11:49:26 <clokep_work> I wonder if we should just put our foot down and say "no more" fixes to tab complete until we write some tests for it.
12:04:01 --> mpmc has joined #instantbird
12:04:51 --> mikk_s has joined #instantbird
12:14:13 <-- clokep_work has quit (Ping timeout)
12:15:07 --> jb has joined #instantbird
12:15:25 --> aleth has joined #instantbird
12:15:26 * ChanServ sets mode +h aleth 
12:16:42 --> clokep_work has joined #instantbird
12:16:42 * ChanServ sets mode +o clokep_work 
12:17:01 <-- jb has quit (Ping timeout)
12:17:05 --> jb has joined #instantbird
12:21:16 --> Kaishi has joined #instantbird
12:22:02 <-- aleth has quit (Quit: Ciao)
12:22:05 --> aleth has joined #instantbird
12:22:05 * ChanServ sets mode +h aleth 
12:24:54 <-- gerard-majax_ has quit (Quit: Ex-Chat)
12:24:56 <aleth> Mic: That MathML issue could be a regression, can you file a bug on the bugtracker please with the math you used?
12:25:25 <-- jb has quit (Quit: jb)
12:26:33 --> jb has joined #instantbird
12:27:07 <aleth> I don't think it makes sense for you to review MathJax itself. If you did find something, you'd have to file it on their bugtracker anyway. I'm only patching things which fail to work due to it not being used in a webpage context (and adding obvious feature which they can't provide cross-browser).
12:31:46 <-- mikk_s has left #instantbird ()
12:31:55 <aleth> clokep_work: Yeah, modularizing tab complete is on my todo list...
12:33:53 <aleth> I'm definitely not going to add any new features before that is done.
12:36:47 <aleth> Mic: That tab complete edge case is "intended", but feels wrong, so you can file a bug for it if you like. I'm not sure it will be a good idea to "fix" it though.
12:37:27 <Mic> What's the idea behind that?
12:38:26 <aleth> The idea is that when you have multiple possible completions and press backspace to undo the punctuation, further TAB presses should still cycle through the completion alternatives. So it's not possible to "always" re-add the punctuation there.
12:38:39 <aleth> You'd be special casing the "no multiple completions" case.
12:39:14 <aleth> Which may or may not be a good idea.
12:40:09 --> gerard-majax has joined #instantbird
12:43:08 <-- jb has quit (Connection reset by peer)
12:43:35 --> flo-retina has joined #instantbird
12:43:35 * ChanServ sets mode +qo flo-retina flo-retina 
12:44:10 --> jb has joined #instantbird
12:46:30 <-- jb has quit (Quit: jb)
12:47:43 <Mic> aleth: from my point of view it was like adding the ": " when "aleth" was already typed.
12:48:09 <flo-retina> that case seems wrong from a user POV, yes
12:48:15 <flo-retina> but... unit tests ++ ;)
12:48:43 <Mic> bye
12:48:52 <-- Mic has quit (Quit: No time to waste, let's go!)
12:49:38 <aleth> Changing expected behaviour has nothing to do with tests, but unit tests++ anyway ;)
12:50:21 <aleth> (& it really has changed as we have added features and then used them for long enough for them to become automatic)
12:52:18 * aleth hopes flo-retina won that no-js-framework argument :D
12:52:26 <aleth> Some things are better left to web pages...
12:53:36 <clokep_work> aleth: They're using node.js. ;)
12:58:31 <aleth> I wonder whether that means node.js will eventually migrate to m-c then...
13:11:25 <clokep_work> aleth: What? Why?
13:13:21 <aleth> I don't mean there is an immediate reason, but in the long run, once core mozilla projects start using it, who knows?
13:14:10 <aleth> If mozilla projects had used a lot of jquery, wouldn't we have seen some of that migrating into the core?
13:14:19 <aleth> Not that the two are that comparable.
13:14:51 <aleth> Anyway, just thinking aloud on an empty stomach, so... :P
13:14:59 <clokep_work> aleth: What do you mean "core mozilla projects"?
13:15:31 <aleth> clokep_work: I mean projects with mozilla employees spending paid time on them
13:17:35 <clokep_work> aleth: I don't think that's a reason that things would get uplifted into m-c. That makes no sense.
13:20:30 <-- mpmc has quit (Connection reset by peer)
13:20:40 <aleth> clokep_work: Yeah, probably not. Just wondering.
13:21:25 <-- Kaishi has quit (Quit: Kaishi)
13:22:08 --> jb has joined #instantbird
13:26:08 <-- aleth has quit (Quit: Ciao)
13:29:04 --> mconley has joined #instantbird
13:50:28 --> rosonline has joined #instantbird
14:03:53 <flo-retina> aleth: we are indeed making web pages
14:03:58 <flo-retina> or a web application at least
14:04:05 <flo-retina> and no, I didn't win.
14:08:35 <flo-retina> dmose said "i share some of your concerns, which is one of the reasons i tend to bias towards the simplest thing possible" but later said "i don't want to overly bias against frameworks" (I don't think taking "As a front-end developer, I have a widget framework available so I can stnd up UI quickly" as a starting point for the discussion was a bias against frameworks though ;))
14:09:06 <clokep_work> Ouch.
14:18:32 --> jb1 has joined #instantbird
14:18:43 <clokep_work> flo-retina: So that suggestion about sending the whole string to the sendTyping API and abusing that...
14:18:47 <-- jb has quit (Connection reset by peer)
14:18:51 <clokep_work> (For Twitter links changing the length of a tweet)
14:19:01 <clokep_work> Wouldn't that then involve changing the maximum length for the account?
14:19:57 <flo-retina> sendTyping would return the count of characters you can still type
14:20:21 <flo-retina> we would need a special value for "no limit"
14:20:21 <clokep_work> Ah, I misunderstood you then.
14:20:45 <clokep_work> -1? null? NS_NULL_THIS_DOESNT_EXIST?
14:21:02 <flo-retina> but if it's a float, we can maybe just use Infinity
14:21:45 <flo-retina> clokep_work: -1 was my first thought, but it will mean "typed 1 character above the limit"
14:21:51 <flo-retina> null would be casted to 0
14:22:22 <clokep_work> flo-retina: NaN works for a double too.
14:22:34 <clokep_work> But if it's a float, Infinity seems to be the proper thing for no maximum length. ;)
14:22:49 <flo-retina> float/double are the same thing
14:22:58 <flo-retina> it's if it's an int that we have a problem
14:23:12 <clokep_work> Yeah I know. I"m just saying NaN is another "special" value for floats/doubles.
14:24:31 <flo-retina> clokep_work: yeah
14:24:47 <flo-retina> NaN or Infinity does't make much of a difference
14:25:03 <flo-retina> in this context
14:25:21 <flo-retina> except if we want to actually use the value, we can use Infinity in a comparison
14:25:51 <clokep_work> Ah, good point. :)
14:25:58 <clokep_work> OK. That sounds like a reasonable plan then.
14:27:05 <flo-retina> it's a bit of a hack
14:27:15 <flo-retina> clokep_work: also, what should we do for IRC messages that contain line breaks?
14:29:16 <clokep_work> flo-retina: I think you just count all the characters but you don't stop it from being sent on IRC since the prpl hands that.
14:29:50 <-- deltafalcon has quit (Connection reset by peer)
14:30:02 <flo-retina> clokep_work: I dislike seeing the -<some number> red indicator when none of the lines I wrote is above the char limit
14:30:10 <flo-retina> that's what I was trying to say, sorry if this wasn't clear
14:30:32 <flo-retina> but I don't know how we can handle it, because if some lines are above the limit, there's no easy way to tell which one :(
14:31:42 <clokep_work> flo-retina: Ah, yeah...I see what you're saying. Maybe use the maximum line length?
14:32:10 <flo-retina> probably the best we can do, yes
14:34:10 <-- jb1 has quit (Ping timeout)
14:40:36 <-- gerard-majax has quit (Ping timeout)
14:42:44 --> gerard-majax has joined #instantbird
15:10:17 <flo-retina> I wonder how many billion times jquery has been downloaded, and how much of that traffic was a waste (ie people including it without using more than 1 or so % of the features)
15:11:33 <clokep_work> flo-retina: My big problem with libraries is that I don't like libraries that "do everything".
15:11:53 <flo-retina> clokep_work: I don't like not being able to understand what each line of the code does
15:12:10 <clokep_work> But it's SO MUCH SHORTER!!!
15:12:23 <flo-retina> clokep_work: I like (especially while debugging) being able to read lines sequentially and form a relatively accurate (if not exist) mental model of what's going on
15:12:33 <flo-retina> I'm looking at http://jquery.com/
15:13:12 <flo-retina> isn't $( "button.continue" ).html( "Next Step..." ) just document.querySelector("button.continue").innerHTML = "Next Step"; ?
15:13:23 <flo-retina> s/exist/exact/
15:14:07 <clokep_work> Right, which is...not very complicated.
15:14:45 <flo-retina> the second example on that page is scary
15:15:01 <flo-retina> apparently it adds event handlers on all the elements matching a CSS selector
15:17:45 <clokep_work> Btw their ajax stuff (which is what a lot of people seem to use jQuery for), isn't that much simpler than just doing an XHR, it's pretty much ouir http.jsm...which is only 100 lines or whatever.
15:18:10 <flo-retina> yes, that seems useful
15:18:17 <flo-retina> but to really not deserve 9k lines of code
15:18:24 <clokep_work> Exactly! :)
15:19:31 <flo-retina> maybe browsers should just implement a window.HTTP API that doesn't suck
15:20:19 <flo-retina> so that we should just HTTP.post("url", callback, errorCallback);
15:21:06 <clokep_work> That seems like the right thing to me. XHR always seemed like too low level to me.
15:22:11 <flo-retina> on the other hand, it's easy to write a 10 line function calling XHR to abstract it away...
15:23:53 <clokep_work> "easy" even though we just found a bug in ours last week? ;)
15:25:20 <flo-retina> clokep_work: that's because we don't have the window object so we can't use the FormData API ;)
15:28:10 <-- clokep_work has quit (Ping timeout)
16:10:38 <-- rosonline has quit (Ping timeout)
16:12:48 <-- chrisccoulson has quit (Ping timeout)
16:16:49 --> rosonline has joined #instantbird
16:27:41 --> chrisccoulson has joined #instantbird
16:31:06 --> unghost has joined #instantbird
16:45:44 --> YH has joined #instantbird
16:47:34 --> jb has joined #instantbird
16:53:23 --> clokep_work has joined #instantbird
16:53:23 * ChanServ sets mode +o clokep_work 
16:53:55 --> Mook_as has joined #instantbird
17:10:40 --> FireFly_TB has joined #instantbird
17:11:56 <flo-retina> the framework battle may not be as lost as I thought it was. We'll see next week :).
17:21:40 <-- gerard-majax has quit (Ping timeout)
17:30:51 <-- FireFly_TB has quit (Input/output error)
17:45:30 <-- jb has quit (Ping timeout)
17:47:17 --> jb has joined #instantbird
17:56:26 <-- jb has quit (Ping timeout)
17:57:20 --> FireFly_TB has joined #instantbird
18:00:19 --> jb has joined #instantbird
18:09:43 --> gerard-majax_ has joined #instantbird
18:11:58 <-- clokep_work has quit (Quit: Instantbird 1.4a1pre -- http://www.instantbird.com)
18:15:52 <-- FireFly_TB has quit (Input/output error)
18:42:44 <-- YH has quit (Quit: Instantbird 1.3 -- http://www.instantbird.com)
19:05:18 <-- jb has quit (Ping timeout)
19:24:22 --> clokep has joined #instantbird
19:24:22 * ChanServ sets mode +o clokep 
19:33:57 <clokep> Hello!
19:38:22 <clokep> Mook_as: "I'd be defensive and use if (sslStatus.serverCert instanceof Ci.nsIX509Cert3 &&
19:38:23 <clokep> sslStatus.serverCert.isSelfSigned)" wouldn't I still need the QI?
19:38:31 <clokep> Or does some magic occur by doing instanceof?
19:39:53 <Mook_as> instanceof magically flattens the thing to pick up the new interfaces
19:40:05 <Mook_as> it's like a QI, but without the throwing things at your face
19:40:37 <Mook_as> (it's actually a try { QI(); return true; } catch () { return false;}, basically)
19:42:04 <clokep> Ooooo, interesting.
19:42:07 <clokep> Yes that sounds better.
19:45:02 <clokep> Mook_as: Why is Object.create better than setting __proto__?
19:45:27 <Mook_as> because they want to kill __proto__ in the future
19:45:38 <Mook_as> it's a future-thing, no action needed right now
19:45:54 <Mook_as> but it's nice to know for the next time you want to write similar things
19:46:00 <clokep> OK...but Object.create seems useful when you want to create a single instance, doesn't really seem useful if I want to create a new object that is always inherits from another object.
19:46:12 --> rohandalvi has joined #instantbird
19:46:28 <clokep> Oh hmm...
19:46:33 <clokep> I don't know, it looks really awkward to use.
19:46:50 <Mook_as> it does look like a horrible API to me, yes
19:46:51 <clokep> Although this "mixin" thing could be useful.
19:47:04 <Mook_as> but, well, if they're going to kill the useful API... :(
19:48:18 <clokep> Hahha true.
19:59:00 <-- chrisccoulson has quit (Ping timeout)
19:59:24 <-- rosonline has quit (Ping timeout)
19:59:29 --> chrisccoulson has joined #instantbird
20:00:10 <-- chrisccoulson has quit (Client exited)
20:02:39 --> chrisccoulson has joined #instantbird
20:17:52 <-- rohandalvi has quit (Client exited)
20:23:10 <-- gerard-majax_ has quit (Ping timeout)
20:30:05 <flo-retina> clokep: let's not stop using useful APIs just because they may disappear in an hypothetical future ;)
20:33:02 <clokep> flo-retina: That was my plan.
20:35:09 <flo-retina> the weather here is horribly disappointing, so this week-end may be a good opportunity to actually code something for Instantbird!
20:46:05 --> rohandalvi has joined #instantbird
20:50:13 <Mook_as> ... yay for horrible weather?
20:51:45 <clokep> Yay!
20:52:08 <clokep> And you probably won't get more patches from me filling up the queue. ;)
20:52:12 * clokep is at PAX tomorrow.
20:52:13 <flo-retina> I'll likely need to take a day off next week to do what I planed to do tomorrow
21:04:27 <clokep> How's your house coming?
21:04:58 <-- rohandalvi has quit (Client exited)
21:05:18 <flo-retina> nothing has changed during the last 2-3 weeks
21:06:24 <flo-retina> the tiler was supposed to come again tomorrow to fix the entrance and finish things in the bathroom and on the floor, but it will start snowing again this night, so it's impossible to make concrete for the entrance with freezing temperatures, so he won't come...
21:14:10 --> rohandalvi has joined #instantbird
21:16:00 --> rohandal_ has joined #instantbird
21:16:04 <-- rohandalvi has quit (Connection reset by peer)
21:16:11 <instantbot> clokep@gmail.com cancelled review?(florian@instantbird .org) for attachment 2291 on bug 1100.
21:16:12 <instantbot> clokep@gmail.com requested review from florian@instantbird .org for attachment 2296 on bug 1100.
21:16:16 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1100 cri, --, ---, clokep, ASSI, Use Firefox untrusted cert dialog for "SSL Handshake failed" errors
21:23:09 --> Mic has joined #instantbird
21:23:09 * ChanServ sets mode +h Mic 
21:26:07 <flo-retina> "I think Florian and I agree that this is more confusing." that's not exactly what I said ;)
21:26:21 <clokep> flo-retina: It's exactly what I heard. ;)
21:26:44 <flo-retina> iirc I said that the code in the current patch is ugly, and that without looking at the code after this change, I can't be sure it would be less ugly
21:36:12 --> jb has joined #instantbird
21:39:46 <-- mconley has quit (Input/output error)
21:39:59 <Mic> flo-retina: thanks for fixing the account manager keyboard navigation! It's been painful to use before today.
21:41:02 <flo-retina> :)
21:50:02 <flo-retina> would it seem OK to drop the debug messages from the memory when an account is disconnected without error?
21:51:39 <clokep> I think so. Are you concerned about it taking up a lot of space?
21:51:57 <flo-retina> no
21:52:11 <flo-retina> I would like to write a patch tonight keeping the last 50 debug messages before the latest error of the account
21:52:36 <flo-retina> and I think resetting everything when there's a disconnection without error would simplify my code
21:52:57 <clokep> I think that's fine, yes...unless you need to debug how an account disconnects.
21:53:14 <flo-retina> mm
21:53:17 <flo-retina> *hmm
21:53:50 <flo-retina> do you think we could want to request debug logs from people who had accounts that cleanly disconnected but for some other reason seemed to have misbehaved at disconnect?
21:54:26 <clokep> Most likely not.
21:54:51 <flo-retina> at this point I'm trying to get a mental model of what I want my code to do :)
21:55:00 <flo-retina> it's difficult to start coding if I don't understand what I want
21:55:15 <clokep> Of course. :)
21:55:33 <clokep> Would clearing them out right before connect help?
21:56:44 <flo-retina> what I would like is: http://pastebin.instantbird.com/161362
21:57:40 <clokep> Right.
21:58:58 <flo-retina> btw, the getDebugMessages method returns an array of imIDebugMessage, so for the "N messages omitted" lines, it seems I'll have to insert a fake DEBUG call somewhere
21:59:13 <flo-retina> I can't just send the count to the UI, which is a bit unfortunate
22:01:19 <flo-retina> so what's not really clear to me is when I should reset the count of omitted messages
22:02:31 <flo-retina> should it be the count from the start of the application, or from the last time we attempted to connect after a clean disconnection?
22:03:47 <clokep> I don't know. :-S
22:04:33 <flo-retina> it's probably not really important
22:12:14 <Mic> Has any of you been using the input box placeholder text?
22:12:29 <clokep> Mic: I have.
22:12:40 <flo-retina> Mic: I have.
22:13:00 <Mic> I've been using the default message for a while now and it works fine for me.
22:13:13 <Mic> What text have you been using and what's your experience with it?
22:13:28 <flo-retina> I've been using "Type messages for %S here…"
22:13:37 <clokep> You know I wa swondering if it could possibly be good for something like Twitter to say "Tweet to your followers" now or something.
22:13:58 <flo-retina> and I see something wrong instead of …, so it feels wrong
22:14:26 <Mic> flo?
22:14:35 <Mic> Ah, the ellipsis?
22:14:37 <flo-retina> Mic: the UTF8 issue
22:15:04 <flo-retina> and the visual noise I perceive isn't really where we expected it would be when we discussed it.
22:16:02 <Mic> umm, could you rephrase that?
22:16:03 <flo-retina> it's distracting to have the whole message disappear when I type just one character (my eyes are attracted by the message when it disappears; instead of staying on what I'm typing)
22:16:27 <flo-retina> I wonder if we could have a CSS transition on the opacity, to reduce that effect
22:18:29 <flo-retina> Mic: yes, I can rephrase. iirc we (especially aleth) were concerned that having a message always in the message box would be distracting and annoying (it would be perceived as "visual noise"). We even discussed changing the text after a few messages have been sent by the user, to reduce its length. After trying the add-on for a while, I don't think that was a real issue. I'm however annoyed by it disappearing in a way that catches my
22:18:29 <flo-retina> attention
22:18:58 <flo-retina> It's possible I would get more used to it if it was also present in MUCs though.
22:22:31 <-- jb has quit (Ping timeout)
22:26:03 <Mic> clokep: which text have you been using?
22:27:12 <clokep> Mic: Default.
22:28:54 <Mic> OK, I too. The contact name at the end of the string worked well for me. It was easy to spot since it didn't require to look for it in the middle of the message.
22:29:29 <clokep> I agree.
22:29:49 <clokep> I also agree with flo-retina that it's distracting when it disappears.
22:29:57 <clokep> It also caused me to delete a response I had pre-typed out earlier today too.
22:30:40 <flo-retina> "caused me to delete a response I had pre-typed" how so?
22:31:03 <clokep> (I had asked a question, assumed a response and typed out another response...unfortunately I switched tabs...when I switched back and they had replied how I expected I deleted the typed out response without re-reading it.)
22:31:15 <clokep> I think it was because I was confused about what the text was.
22:31:28 <clokep> Maybe it was just me being weird. :)
22:31:30 <Mic> OT: Ctrl-Z isn't working reliably anymore for me. Maybe we really need to implement input history now ;)
22:31:58 <flo-retina> Mic: seems to work fine for me
22:32:01 <flo-retina> (Ctrl-Z)
22:32:25 <clokep> WFM too.
22:32:45 <flo-retina> clokep: oh, so you mean the empty text caused you to not notice you had something already typed?
22:33:02 <clokep> flo-retina: Yeah.
22:33:03 <flo-retina> hmm, it would have had to be selected for that though :-S
22:33:08 <clokep> (It was a similar length.)
22:33:13 <flo-retina> otherwise it wouldn't have been deleted when starting to type
22:33:16 <clokep> flo-retina: I hit ctrl+a
22:33:33 <flo-retina> hmm
22:34:17 <flo-retina> so I don't see how it's possible to select the text (even with ctrl-a) without noticing the input box isn't empty (ie it's not the empty text that's visible)
22:35:20 <flo-retina> if it happened only once it's probably not worth trying to fully understand what happened. We will try and understand the cause if it happens to you a few more times though.
22:37:14 <Mic> Ctrl-Z is also working for me here and now but it isn't all the time anymore since not long ago.
22:39:43 <Mic> Meh...
22:40:09 <Mic> k, I told Activestate about this crash so they can fix it. :(
22:40:36 --> jb has joined #instantbird
22:41:32 <clokep> All the nice AS guys hang out in #komodo btw.
22:42:25 <Mook_as> and one not-nice guy that hangs out here ;)
22:42:31 <clokep> Todd?
22:42:33 <-- jb has quit (Ping timeout)
22:42:41 <Mook_as> no, he's not here :p
22:42:41 * clokep jests.
22:42:52 <clokep> Ohhh, you mean EionRobb? :P
22:43:08 <clokep> Oh hey, you guys finally got chanserv set up for Komodo?
22:43:09 <Mook_as> ... umm, don't tell him that we've forgotten to pay him, like, ever :p
22:43:30 <Mook_as> yeah, at some point we lost all ops and wanted to change the topic... oops?
22:43:37 <clokep> Hahah, nice. :)
22:44:41 * clokep debates if he wants to start rewriting the sendTyping API...
22:46:11 <flo-retina> so logging creating a log message from imAccounts.js is trickier than it seems
23:08:25 <clokep> Does purplexpcom not implement "send typing"? :-S
23:09:04 <clokep> Unrelated, but one of my friends pointed out that HipChat is apparently open to small teams now for free.
23:10:03 <flo-retina> clokep: http://lxr.instantbird.org/instantbird/source/purple/purplexpcom/src/purpleConvIM.cpp#121
23:10:19 <clokep> Ahhh, duh. Only for ConvIM.
23:10:23 <clokep> I was looking in conversation.
23:10:41 <clokep> So why do void functions return NS_OK?
23:11:20 <Mook_as> void in xpidl terms
23:11:50 <Mook_as> the C++ return value just says "oh hai, I didn't throw a JS exception"
23:11:51 <instantbot> c++ sucks
23:12:22 <clokep> Mook_as: So if I have something that returns a long, how do I handle that?
23:12:40 <Mook_as> as in, xpidl says | long foo(); | ?
23:12:49 <clokep> Yes, I guess it ends up being an extra input param like http://lxr.instantbird.org/instantbird/source/purple/purplexpcom/src/purpleConvChat.cpp#80 ?
23:13:10 <Mook_as> that gets to C++ as something like nsresult Foo(long* _retval);
23:13:37 <clokep> OK! Thank you. :)
23:14:02 <Mook_as> you're welcome; feel free to ask more, I'll just be busy hacking komodo :p
23:14:34 <clokep> Sometimes I think that Instantbird has better tab complete than Komodo. ;)
23:16:12 <clokep> Mook_as: _retval can actually be called anything, I 'sume?
23:17:02 <Mook_as> yep, it's just some random thing on the stack (or thereabouts)
23:17:14 <Mook_as> after all, you don't actually have variable names in the machine code :D
23:17:32 <clokep> Cool...so I know strings are really confusing in Mozilla, but is there a description of the methods of AUTF8String somewhere or am I diving into code?
23:18:05 <Mook_as> sorry, code-diving. http://mxr.mozilla.org/mozilla-central/source/xpcom/glue/nsStringAPI.h#378
23:18:13 <clokep> Gross. But thank you.
23:18:15 <Mook_as> it's pretty easy to read though
23:18:40 <clokep> Is that the same as a AUTF8String?
23:18:53 <Mook_as> yes, UTF8 string = 8 bit chars = ACString
23:19:02 <Mook_as> (16 bit chars are AString)
23:19:42 <clokep> ...why the hell isn't it just called ACString then? :P
23:20:01 <Mook_as> because it's a hint that the contents ought to be in utf-8
23:20:07 <Mook_as> (it's derived from ACString, though!)
23:20:44 <clokep> Bah.
23:21:06 <flo-retina> clokep: ACString will contain ASCII stuff, AUTF8String will be UTF8 encoded. The only difference is the way xpconnect behaves with them when crossing JS<->C++ boundaries.
23:21:20 <clokep> Ah, I see.
23:21:32 <clokep> Sory for the questions. I only pretend to know C++ XPCOM code. ;)
23:21:41 <Mook_as> not necessarily ASCII; it's basically a bag of 8-bit bytes :D
23:22:04 <Mook_as> (they get to JS by, umm, adding a byte of 0 in front, so the results are ASCII-compatible)
23:24:06 <clokep> flo-retina: (I know I can look this up, but maybe you know the libpurple API...) I don't think libpurple provides any concept of "you can type x-more characters", is that correct?
23:24:51 <clokep> instantbot: uuid
23:24:53 <instantbot> e40dc3e5-c9ff-457b-a6cc-655cce81042c (/msg instantbot cid for CID form)
23:25:50 <flo-retina> clokep: even if it did, don't bother with that
23:25:54 <flo-retina> for now at least
23:26:06 <flo-retina> I'm pretty sure oscar as a char limit, but I don't know if it's exposed anywhere
23:26:39 <clokep> I doubt it is.
23:26:51 <clokep> (And the char limit is like 55 by default. :P)
23:35:36 <-- rohandal_ has quit (Client exited)
23:38:11 <clokep> Mook_as: So currently my diff is http://pastebin.instantbird.com/161409, but it doesn't compile.
23:38:47 <clokep> http://pastebin.instantbird.com/161410
23:38:49 <clokep> Is the output...
23:38:53 --> mconley has joined #instantbird
23:40:07 <flo-retina> clokep: at line 109 and * is missing
23:40:09 <flo-retina> *an
23:40:37 <flo-retina> !aString.Length() should e aString.IsEmpty()
23:40:54 <clokep> Good call.
23:41:02 <clokep> flo-retina: I think I have bigger issues than just syntax / review comments though.
23:41:07 <clokep> I think I have something declared wrong.
23:41:12 <Mook_as> line 148, it should be NS_IMETHOD (IMP is for the impl)
23:41:37 <clokep> Mook_as: Can you elaborate?
23:41:47 <clokep> IMP is for impl doesn't mean much. ;)
23:41:51 <Mic> clokep, flo-retina: chats, IRC channels, Twitter and other MUCs can use different texts now + UTF8 characters should work too now. https://addons.instantbird.org/en-US/instantbird/addon/343/
23:41:57 <flo-retina> Mook_as: that's right, but he didn't change that
23:42:00 <Mic> No fading of the text (yet?)
23:42:07 <Mook_as> should be NS_IMETHOD SendTyping(const nsACString& aString, long *_retval);
23:42:24 <Mook_as> more importantly, what does prplIConversation.h say? (it's generated)
23:42:24 <clokep> Mic: Thanks!
23:42:49 <Mook_as> probably, long -> PRInt32
23:43:34 <flo-retina> clokep: that compiler error says you forgot to edit purpleConversation.h
23:44:02 <Mook_as> nah, purpleConversation.h just says NS_DECL_PRPLICONVERSATION
23:44:05 <flo-retina> err, sorry scratch that
23:44:10 <clokep> flo-retina: purpleConversation.h doesn't have sendTyping!
23:44:19 <Mook_as> it does, behind the macro ;)
23:44:24 <clokep> Shush. :P
23:44:38 <flo-retina> yeah, as Mook said, don't try to guess the parameters, just use what's generated by the idl parser
23:44:43 <-- mconley has quit (Input/output error)
23:44:53 <clokep> OK. I didn't realize that stuff was generated, I guess.
23:45:02 <clokep> Mook_as: was right, long -> PRInt32 worked.
23:45:09 <clokep> (Isn't a long a 64-bit number?)
23:45:10 <Mook_as> copy it from the header anyway :D
23:45:17 <Mook_as> no, for xpidl, long is always 32 bits
23:45:30 <Mook_as> just like on 32 bit windows/linux/osx! :D
23:45:49 <Mook_as> (long is 64 bits on 64 bit linux/osx)
23:46:00 <Mook_as> (... but 32 bit on 64 bit windows, just to be confusing)
23:46:20 <flo-retina> Mook_as: Windows is so much fun ;)
23:46:28 <clokep> Bleh.
23:46:29 <Mook_as> (you may need some sort of hard liquor)
23:46:47 <clokep> Mook_as: I'm drinking hard liquor already, but thank you. :)
23:47:00 <clokep> So where is this header file generated then? in a similar directory to where the idl is?
23:47:14 <Mook_as> yes, .../public/_xpidlgen/whatever.h
23:47:16 <flo-retina> clokep: dist/include/purplexpcom/
23:47:35 <Mook_as> oh, it's in dist? huh, that's easier :D
23:47:40 <clokep> flo-retina: That doesn't exist.
23:47:48 <flo-retina> skip the purplexpcom/ then
23:47:55 <clokep> Yup!
23:48:08 <clokep> NS_IMETHOD SendTyping(const nsACString & aString, int32_t *_retval) = 0; is what it has there.
23:48:27 <clokep> Do we still normally use the PR stuff or the C++ types in Instantbird?
23:48:30 <flo-retina> yeah, at some point someone decided it was nice to get rid of all (well, most of) the subfolders of "include"
23:48:31 <Mook_as> go down a bit to the header section
23:48:44 <Mook_as> (the commented out one)
23:49:25 <clokep> Mook_as: I see a bunch of macros.
23:49:40 <flo-retina> there's been a mass PR* -> *_t replace recently. Maybe now that we are on moz19 we should do it too
23:49:43 <clokep> They all have the same function prototype.
23:50:10 <flo-retina> clokep: look for "/* Use the code below as a template for the implementation class for this interface. */"
23:50:47 <clokep> flo-retina: Oh wow, that's nice! :)
23:50:51 <clokep> Thanks guys!
23:51:02 <flo-retina> np
23:51:08 <flo-retina> glad you are now a C++ XPCOM expert! :)
23:51:35 <clokep> I'm glad I have a gin & tonic with me, yes. :)
23:51:47 <flo-retina> all the _MYCLASS_ are unfortunate
23:52:25 <flo-retina> if the interface was named nsIStuff, there would be nsStuff (interface name without the "I") instead of _MYCLASS_
23:52:39 <flo-retina> but that only works if there's only 2 letters before the "I"
23:54:10 <clokep> Right.
23:55:02 <Mook_as> hmm, would be nice if it's something like [a-z]I[A-Z] instead
23:55:22 <Mook_as> err, ^[a-z]*I[A-Z] - regex is hard :p
23:56:27 <clokep> flo-retina: How would you feel about making jsProtoHelper's sendTyping throw not implemented?
23:57:10 <flo-retina> clokep: would that be an improvement?
23:57:32 --> rohandalvi has joined #instantbird
23:57:41 <clokep> flo-retina: Well we have to define some behavior about what "infinity" means anyway...
23:57:47 <clokep> So...probably doesn't really matter right now. :)
23:58:02 <flo-retina> clokep: and you used long, not float or double for the return value ;)
23:58:27 <clokep> flo-retina: Yes. It feels wrong to use a float in this situation! But I can always change it. :)
23:59:00 <flo-retina> yes, that why I said it felt like a hack
23:59:05 <flo-retina> I don't have any other idea right now though
23:59:13 <flo-retina> and my code doesn't work for some reason :-S
23:59:51 <clokep> :-( Sorry!