All times are UTC.
00:07:42 * Fallen is now known as Fallen|away 00:11:39 <-- Mook_as has quit (Input/output error) 00:14:50 --> Mook_as has joined #instantbird 00:30:28 --> clokep has joined #instantbird 00:30:28 * ChanServ sets mode +o clokep 00:36:23 --> Armada has joined #instantbird 00:36:27 <-- Armada651 has quit (Ping timeout) 00:40:11 --> rosonline has joined #instantbird 00:57:21 --> iamjayakumars has joined #instantbird 00:57:34 <-- iamjayakumars has quit (Client exited) 01:02:06 <-- Rym has quit (Ping timeout) 01:05:34 <-- Armada has quit (Connection reset by peer) 01:12:13 <-- Mook_as has quit (Quit: Mook_as) 01:58:24 <-- rosonline has quit (Quit: Instantbird 1.5 -- http://www.instantbird.com) 02:37:35 <-- clokep has quit (Ping timeout) 03:46:13 --> mconley|food has joined #instantbird 04:22:19 <-- mconley|food has quit (Input/output error) 04:29:09 <-- flo-retina has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 04:37:32 --> mconley|food has joined #instantbird 04:39:54 <-- mconley|food has quit (Input/output error) 05:50:34 <-- EionRobb has quit (Quit: Leaving.) 06:02:51 --> Guido has joined #instantbird 06:04:37 --> jb has joined #instantbird 06:06:06 <Guido> is there a command to instal instantbird from the cmand promt or software center? 06:06:18 <-- jb has quit (Ping timeout) 06:17:02 --> gerard-majax_ has joined #instantbird 07:05:31 --> Tonnes has joined #instantbird 07:10:18 <-- gerard-majax_ has quit (Ping timeout) 07:28:14 --> jb has joined #instantbird 08:08:18 <-- chrisccoulson has quit (Quit: OSError: [Errno 130] Owner died) 08:08:28 --> chrisccoulson has joined #instantbird 08:21:26 --> Armada has joined #instantbird 08:45:17 --> EionRobb has joined #instantbird 09:12:55 * Fallen|away is now known as Fallen 09:29:14 --> aleth has joined #instantbird 09:29:14 * ChanServ sets mode +o aleth 09:29:43 <-- aleth has quit (Quit: exit stage left) 09:29:45 --> aleth has joined #instantbird 09:29:45 * ChanServ sets mode +o aleth 09:35:22 --> gerard-majax_ has joined #instantbird 09:36:30 <-- aleth_web has left #instantbird () 09:40:35 <nhnt11> aleth: How do you reproduce bug 955714? 09:40:41 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=955714 nor, --, ---, nhnt11, NEW, Tabbrowser conversations property assumes all tabs have linkedConversations 09:40:51 <nhnt11> (I just checked the list of bugs I'm assigned to and found that) 09:41:20 <nhnt11> I know that it definitely causes the error, but have never seen the warning. 09:41:24 <aleth> No idea, and as it's not in the bug description I assume when I filed the bug I didn't remember either and just spotted the error in the console 09:41:32 <nhnt11> alright. 09:41:40 <nhnt11> aleth: Prefixing it with !! should suffice right? 09:42:14 * nhnt11 tries 09:42:23 <aleth> There's probably a more legible way to do it 09:42:28 <aleth> i.e. filter before map 09:42:45 <aleth> or do it all in one step with a generator 09:42:49 <nhnt11> Ahh 09:42:59 <nhnt11> Didn't read the code properly 09:43:00 <nhnt11> Yeah okay 09:43:12 <nhnt11> (rather, I didn't register that we were mapping stuff) 09:44:49 <nhnt11> Fwiw I'd prefer filter then map 09:44:54 <nhnt11> The one step generator isn't very readable... 09:45:02 <aleth> nobody here likes generators ;) 09:45:11 <aleth> apart from me slipping them in once in a while... 09:45:13 <nhnt11> [aTab.linkedConversation for aTab of this.mTabs if aTab.linkedConversation] 09:45:23 <nhnt11> I like them, but that's a bit ugly ^ 09:45:33 <aleth> yeah, that one would need some tuning 09:45:54 <aleth> Just go with what's easiest. 09:45:57 <nhnt11> alright 10:01:22 --> BWMerlin has joined #instantbird 10:03:17 <-- aleth has quit (Ping timeout) 10:12:20 <Guido> hello, i just got a new laptop - 64 bit, linux - and have some trouble with startng instantbird. i can't install ia32-libs and if i install an alternatoive it doesn't help starting instandbird 10:18:29 --> clokep has joined #instantbird 10:18:29 * ChanServ sets mode +o clokep 10:19:18 <sawrubh> Guido: we don't do 64-bit builds 10:19:35 <sawrubh> I mean we don't distribute them, you'll have to build them yourself if you want to run it 10:20:22 <Guido> sawrubh: i found something about a lbrary which would allow to run a 32 bit version or do you know how to build it? 10:20:40 <sawrubh> Guido: https://developer.mozilla.org/en-US/docs/Simple_Instantbird_build 10:20:42 <clokep> Guido: One second. 10:20:47 <clokep> Stop that's bad advic.e 10:20:56 <sawrubh> eek 10:21:07 <clokep> Guido: You're running Ubuntu 14.04, I assume? 10:21:16 <Guido> clokep: yes 10:21:27 <sawrubh> clokep: I tried running the binary I downloaded from the website and it didn't run and at that time I was told because of the 64-bit issue 10:21:30 <clokep> Guido: https://groups.google.com/d/msg/mozilla.support.instantbird/MkzGljlVbik/BLIQWoYkaawJ 10:21:43 <clokep> sawrubh: Yes, but jumping from that to "built it yourself" isn't the right answer. :) 10:22:14 <clokep> Guido: Apparently Ubuntu likes to change the names of their packages every couple releases. :-\ That link should have the newer packages to install. 10:22:29 <clokep> The "real" solution is to get 64-bit builds going, yes. but we need to rebuild our Linux VMs first... 10:24:25 <Guido> clokep: so what do i have to do to let it work? 10:25:35 <Guido> the "sudo apt-get install ia32-libs" and tyhe 3 alternatives doesn't change something. so do i have to do something after installing it and maybe is there one of the 3 which i should use 10:26:24 <clokep> Guido: "The three alternatives"? What? 10:26:39 <clokep> Guido: You /don't/ do ia32-libs and you follow the directions in the link I gave you. 10:26:54 <Guido> if i enter "sudo apt-get install ia32-libs" i get an error and that there are 3 other possible pakages 10:27:19 <Guido> what do i do instead of ia32-libs? 10:28:55 <clokep> Guido: Did you read the link I sent you? 10:29:10 <clokep> sudo apt-get install libasound2:i386 libpango1.0-0:i386 libcairo2:i386 libgdk-pixbuf2.0-0:i386 libatk1.0-0:i386 libgtk2.0-0:i386 libxt6:i386 10:29:10 <clokep> sudo apt-get install libcanberra-gtk0:i386 gtk2-engines-murrine:i386 10:29:10 <clokep> sudo apt-get install appmenu-gtk:i386 10:30:46 <Guido> clokep: yes, i looked at the link and there is a link to the faq 10:31:03 <clokep> Guido: Did you read the text around the link? It says that it doesn't work. 10:31:44 <Guido> ah, didn't saw that there was an answer as well 10:32:25 <clokep> sawrubh: So I kno wI owe you a review, but what are you working on until you get that? 10:33:15 --> aleth has joined #instantbird 10:33:15 * ChanServ sets mode +o aleth 10:33:41 <-- EionRobb has quit (Quit: Leaving.) 10:33:53 <sawrubh> clokep: I want to work on the purplexpcom thingmajig, I tried to get started but couldn't find a point of entry 10:37:34 <clokep> sawrubh: OK, I'd suggest holding off on tnhat slightly, let me look at the API first? 10:37:41 <clokep> That way you're not constantly rewriting for TWO APIs. 10:37:45 <clokep> Only the JS one you've done so far. :) 10:38:05 <clokep> An entry point? I'm not sure I understand. 10:38:17 <clokep> You should probably think about what the UI should be for ongoing transfer (like aleth has mentioned a few times :P) 10:38:28 <clokep> aleth: Ping me when I'm _work and I'll push that website patch. 10:38:38 <Guido> clokep: did the 3 comants and still nothing. i will try a reboot 10:39:18 <sawrubh> clokep: ok, so it might make more sense then to take a look *finally* (as aleth has been saying :P) at integrating the downloads panel in IB 10:39:42 <aleth> Guido: what do you mean by "nothing"? The apt-get commands will install the missing packages, they won't install IB. 10:39:44 <sawrubh> that was I won't be re-writing any API's and it would give us enough time to check libpurple's API 10:40:15 <sawrubh> clokep: btw http://hg.mozilla.org/users/florian_queze.net/purple/file/93b8dd3e84b2/libpurple/ft.c is the API right? 10:40:15 <Guido> aleth: yes, but than i tryed to open the instandbird file and nothing hapand 10:40:17 <aleth> sawrubh: the point is you don't want to constantly bitrot yourself ;) 10:40:35 <sawrubh> aleth: I've done that to myself in both my current bugs :) 10:40:41 <aleth> Guido: How did you try to open it? 10:40:57 <aleth> sawrubh: time to land stuff then! ;) 10:41:10 <Guido> aleth: just open the explorer and double klick "instantbird" 10:41:11 <sawrubh> I'm just waiting for flo's review on that FileLink stuff 10:41:23 <Guido> and rightclikc and open 10:41:30 <aleth> Guido: Can you try from the command line so we see if there is an error message? 10:41:44 <aleth> Go to the directory with cd and then type "./instantbird" 10:42:35 <aleth> (I'm assuming here you saw the 3 apt-get commands install things successfully) 10:45:44 <clokep> sawrubh: Wel you might still need to rewrite APIs if you find we haven't exposed enough to show downoad status, etc. ;) But yeah. 10:45:51 <clokep> sawrubh: Yes, but you probably want to look at the .h file. 10:46:09 <Guido> aleth: doing somthing wrong - dont get to the desktop 10:46:53 <aleth> Guido: Open a terminal, type "ls", look for your desktop folder, and cd to it. 10:47:12 <aleth> Though it's hard to guess from here what you are seeing... 10:48:46 <Guido> aleth: error while loading shared librarys: libstdc++.so.6 10:49:05 <Guido> no such file or directory 10:50:20 <aleth> Which Linux distro is this? 10:50:36 <Guido> aleth: xubuntu 14.04 10:53:46 --> mayanktg has joined #instantbird 10:53:49 <-- mayanktg has quit (Client exited) 10:53:58 --> mayanktg has joined #instantbird 10:54:00 <aleth> Hmm 10:55:11 <-- clokep has quit (Ping timeout) 10:56:23 <aleth> Guido: Try "sudo apt-get install libstdc++6:i386" 10:56:59 <aleth> I guess xubuntu differs from normal ubuntu in what is installed by default. 10:57:50 <Guido> aleth: one moment 11:00:50 <Guido> aleth: now libxt.so.6 is missing 11:02:39 <aleth> "sudo apt-get install libxt:i386" 11:03:07 <aleth> I wish we had someone interested in packaging Instantbird properly for ubuntu so all this was automatic :-/ 11:04:00 <Guido> in the old version (switch from ubuntu to xubuntu and not 64 bit it works) 11:05:14 <aleth> oh, sorry I think it should be "sudo apt-get install libxt6:i386" 11:05:40 <aleth> It's a bit difficult for me as I'm not on Linux... 11:06:33 <Guido> aleth: yes, second version 11:07:02 <aleth> So does it run now or is there still an error message? 11:07:16 <Guido> aleth: both 11:07:28 <aleth> bah, another missing library? 11:07:43 <aleth> I guess they aren't kidding when they call xubuntu "slimmed down" ;) 11:08:00 <aleth> What's the error message? 11:08:40 <Guido> it started, but in the terminal i got the message "Type error Cc[cid] is undefined" 11:10:14 <aleth> Which Instantbird version are you running? 1.5? 11:11:05 <Guido> 1.5, (just downloaded it) than the next question. where do i find my profile so that i can move it? 11:13:02 <aleth> Guido: Glad it's running OK now. Profile folder is here http://instantbird.com/faq.html#profilefolder 11:13:40 <Guido> aleth: thanks a lot 11:18:01 <-- Guido has quit (Quit: Instantbird 1.5 -- http://www.instantbird.com) 11:28:24 <-- mayanktg has quit (Ping timeout) 11:34:22 --> clokep_work has joined #instantbird 11:34:22 * ChanServ sets mode +o clokep_work 11:34:39 --> mayanktg has joined #instantbird 11:37:17 <clokep_work> aleth: What's that bug again? 11:37:49 * aleth asks the awesomebar 11:37:53 <aleth> bug 976083 11:37:55 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=976083 nor, --, ---, aleth, ASSI, Update FAQ to include required libraries for newer 64b Ubuntus 11:38:04 <clokep_work> I have the wrong awesomebar here. ;) 11:38:15 <nhnt11> clokep_work: FxSync? 11:40:34 <clokep_work> nhnt11: You make the invalid assumption I want to sync these profiles. ;) 11:41:18 <clokep_work> aleth: Looks like I don't have permission to push to that repo. 11:42:13 <aleth> We'll have to bug flo to do it then... 11:42:21 <clokep_work> Or to give me permission to push. 11:42:30 <aleth> Yeah. 11:43:53 * Fallen is now known as Fallen|away 11:51:28 <-- BWMerlin has quit (Quit: BWMerlin) 11:56:57 --> flo-retina has joined #instantbird 11:56:57 * ChanServ sets mode +qo flo-retina flo-retina 11:57:25 <flo-retina> aleth: want me to r+ 788137? :) 11:58:05 <aleth> Sure, feel free to steal that hack review ;) 11:58:41 <aleth> Actually, it's less hackish than the existing mess now. 11:59:15 <flo-retina> yeah 12:01:39 <nhnt11> Aha 12:01:50 <nhnt11> The im/ only checkins patch was merged right? 12:01:57 <aleth> yes 12:02:09 <nhnt11> :) 12:06:59 <nhnt11> I'm going to push bug 1029501 12:07:02 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1029501 min, --, ---, nhnt11, ASSI, Opening the awesometab and then pressing Escape should return to the previous conversation 12:07:38 <nhnt11> clokep_work, flo-retina: ^ any objections? 12:07:45 <aleth> yay, something actually gets to land :) 12:08:43 <nhnt11> Yeah, I kinda want to push just for the joy of landing something. 12:13:17 <mayanktg> Mic: Was the CSS of user icon bug fixed for Windows as you were discussing about it when I was away? Ping me whenever you are free, I will try to install Ib on Windows today and give it a try. 12:17:22 <flo-retina> nhnt11: go ahead 12:17:30 <flo-retina> (despite Windows being broken, but oh well...) 12:17:49 <nhnt11> flo-retina: Are we avoiding checkins till windows is fixed? 12:18:21 * aleth wonders if clokep_work managed to build on Windows locally 12:18:30 <flo-retina> nhnt11: yes, no, maybe :-\ 12:18:35 <nhnt11> alright 12:19:01 <clokep_work> aleth: I got home very late last night. 12:19:05 <flo-retina> nhnt11: I think it's a judgment call for each patch whether it can land while Windows is busted 12:19:22 <nhnt11> Fair enough 12:19:27 <flo-retina> nhnt11: eg. I wouldn't want to land bug 975542 without a nightly before and one after 12:19:30 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=975542 enh, --, ---, mayanktg, NEW, Set user icon from image taken with the webcam. 12:19:36 <flo-retina> but your patch seems fine :) 12:19:49 <nhnt11> Right, makes sense 12:21:34 <instantbot> firstname.lastname@example.org changed the Resolution on bug 1029501 from --- to FIXED. 12:21:36 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1029501 min, --, ---, nhnt11, RESO FIXED, Opening the awesometab and then pressing Escape should return to the previous conversation 12:21:57 <flo-retina> :) 12:23:01 <nhnt11> aleth: Thanks, forgot to set that 12:23:05 <nhnt11> (target milestone^) 12:23:57 <aleth> It's helpful for writing release notes ;) 12:42:46 --> qheaden has joined #instantbird 13:04:50 <-- aleth has quit (Ping timeout) 13:06:30 <-- qheaden has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 13:07:37 --> aleth has joined #instantbird 13:07:37 * ChanServ sets mode +o aleth 13:35:38 <flo-retina> clokep_work, aleth: here is the draft API I/we currently have: http://pastebin.instantbird.com/745054 13:35:47 <flo-retina> feedback very welcome 13:38:24 <clokep_work> flo-retina: That seems reasonable to me... 13:38:28 <clokep_work> I dislike the names. :P 13:38:31 <clokep_work> But that's bike shedding. 13:38:40 <clokep_work> So in the pastebin case what happens? 13:38:43 <flo-retina> feel free to suggest better names :) 13:38:45 <clokep_work> It cancels the message? 13:39:04 <flo-retina> yes, it would cancel the message 13:39:17 <flo-retina> replacing the message content is possible... but pastebin is asynchronous 13:41:15 --> arlolra has joined #instantbird 13:41:41 <-- arlolra has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 13:42:28 --> arlolra has joined #instantbird 13:43:26 <clokep_work> Yep, just making sure I understand. 13:43:47 <clokep_work> flo-retina: So in that case it will "cancel" it and the next message would get sent immediately...and pastebin would then re-add a message once it gets stuff back somehow? 13:43:52 <clokep_work> What happens if the pastebin fails? 13:44:10 <flo-retina> a kitten dies? 13:44:52 <flo-retina> I think if pastebin succeeds it inserts a new message with the pastebined url, and if it fails it inserts a new message with the original text 13:45:06 <flo-retina> (and it may have set a flag somewhere to remember that its server is currently unusable) 13:45:35 <aleth> Can't the irc split case also be handled by observing preparing-message? 13:46:03 <-- arlolra has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 13:46:12 <aleth> Is this code going to live in imConversations or ...? 13:46:27 <flo-retina> aleth: this code is intended to go in imConversations, yes 13:47:06 <flo-retina> aleth: actually the patch currently attached handles the IRC message splitting with an observer 13:47:23 <aleth> i.e. someone handling preparing-message can cancel the message, but can also send new messages to be prepared of course. 13:47:25 <flo-retina> aleth: and that's something I wanted to change, because I dislike the prplConversation implementations observing themselves 13:48:40 <nhnt11> flo-retina: what is this for exactly? 13:49:02 <flo-retina> nhnt11: OTR 13:49:20 <nhnt11> ah okay 13:49:26 <nhnt11> What's the "pastebin" case 13:50:07 <aleth> flo-retina: I don't quite follow "observing themselves" - isn't sendmsg a method on the conv and the observer a method on the account? 13:50:09 <flo-retina> nhnt11: it's an hypothetical add-on, posting on pastebin and sending the pastebin URL instead, when you are attempting to send a huge message 13:50:12 <nhnt11> Support for sending messages to a pastebin? 13:50:12 <nhnt11> ah 13:50:15 <-- chrisccoulson has quit (Ping timeout) 13:50:25 * nhnt11 should update his pastebin addon :( 13:51:12 --> arlolra has joined #instantbird 13:51:13 <flo-retina> aleth: I mean https://bugzilla.mozilla.org/attachment.cgi?id=8438931&action=diff#a/chat/protocols/irc/irc.js_sec5 13:51:47 <flo-retina> nhnt11: if this land, it will become trivial to make a pastebin add-on ;) 13:51:54 <flo-retina> s/if/when/ :) 13:52:23 <nhnt11> flo-retina: Yeah, mine hooks the enter key handler 13:52:26 <nhnt11> hacky :-/ 13:54:12 <clokep_work> aleth, flo-retina: FWIW I like that being a method as opposed to an observe, it just seems like a cleaner interface onto the prpl. 13:55:59 <aleth> It's better, it's just a shame we can't do without the notification in that case (two ways for the same thing) 14:02:04 <aleth> What's "buffering"? 14:04:30 <aleth> Why does sendableMessages have to be an array? If it's only for splitting, I think I would prefer what I suggested earlier. 14:04:55 <clokep_work> How does what you suggested earlier help? 14:05:35 <aleth> If the preprocessor decides the message needs splitting, he cancels the message and sends N new (split) messages. 14:05:50 <aleth> These get preprocessed again of course. 14:08:23 <-- aleth has quit (Ping timeout) 14:12:17 --> aleth has joined #instantbird 14:12:18 * ChanServ sets mode +o aleth 14:13:45 <-- arlolra has quit (Quit: arlolra) 14:14:00 <flo-retina> aleth: buffering is keeping somewhere an array (or whatever data structure) that from the encrypted message can return the clear text version of the same message. 14:14:51 --> arlolra has joined #instantbird 14:15:13 --> Rym has joined #instantbird 14:15:21 <flo-retina> aleth: this is because when a prpl is done sending a message, it displays it. And it does it with only the text of the message, no reference to any object that could be holding the clear text version 14:15:32 <-- arlolra has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 14:16:25 <aleth> Oh I see, all that means is that imConversations does the "display the message in the UI". 14:16:28 <flo-retina> sendableMessages is an array because for one displayable message, you could have more than one sendable message (this is typically because the encrypted text is longer than the clear text for a same message, and the encrypted text of a message fitting on one message may no longer fit on one message) 14:16:59 --> arlolra has joined #instantbird 14:17:07 <flo-retina> aleth: "buffering" means that the data is saved so that later it's possible to find the clear text version of a message from the encrypted version that has been sent 14:17:45 <flo-retina> aleth: I think arlolra and I just agreed to move that buffering code to inside the OTR files, so that we don't have buffering overhead if there's no encryption enabled for a conversation. 14:18:28 <aleth> Why do we care about the encrypted version at all after it's been sent? 14:18:30 <-- arlolra has quit (Quit: arlolra) 14:18:58 --> arlolra has joined #instantbird 14:19:35 <-- mayanktg has quit (Ping timeout) 14:19:52 <aleth> (just asking naive questions... I'm sure you've thought this through!) 14:22:00 --> iamjayakumars has joined #instantbird 14:23:31 <flo-retina> aleth: so when we are sending a message, we want to actually display that message as an outgoing message in the conversation 14:23:58 <flo-retina> aleth: the imConversation code isn't doing that right away, because depending on the protocols, we may not display that outgoing message until it has actually been sent and acknowledged by the server 14:24:09 <aleth> oh. Twitter? 14:24:20 <flo-retina> yeah, that's a good example. 14:24:21 <aleth> Forgot about that part :-/ 14:24:54 <flo-retina> the API that libpurple exposes to us is very frustrating. When the prpl is done dealing with a message, it just sends a "new-text" notification with absolutely no context. Just the string of the message 14:25:03 <flo-retina> in the OTR case, that's just the string of the _encrypted_ message. 14:25:09 --> mayanktg has joined #instantbird 14:25:10 <aleth> I was just thinking that that is likely the problem. 14:25:20 <aleth> Otherwise we could just reorganize that part 14:25:29 <flo-retina> so for display, we actually need to be able to find the clear text again, based on the encrypted string 14:26:12 <aleth> Are there any libpurple prpls with the send/acknowledge problem? 14:28:25 <aleth> Otherwise might be possible to work around the limitations of that API 14:32:44 <-- mayanktg has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 14:34:17 * Fallen|away is now known as Fallen 14:34:35 <flo-retina> aleth: well. Do you really want to try? :-P 14:35:35 <aleth> No, it will likely be just as messy :-S 14:36:08 <flo-retina> if you are sure all libpurple prpls are handling messages synchronously, you could just assume that the next outgoing messages to be displayed is the one you just sent 14:36:33 <flo-retina> but I'm not willing to audit all the libpurple prpls to check how synchronous they are right now :-/. 14:36:50 <aleth> yeah... and you still have special cases around. 14:37:26 <clokep_work> Meh, libpurple. :( 14:37:38 <clokep_work> OTherwise we could just keep a reference to the message object somewhere. 14:37:42 <clokep_work> That had the cleartext ini t. 14:38:00 <flo-retina> sure 14:38:05 <flo-retina> if we ignored libpurple things would be easier 14:38:32 <nhnt11> Bah, I started updating my pastebinner addon and it's taken longer than I thought it would 14:38:49 <nhnt11> (I've been missing it, disabled because I really only want it for MUCs and it keeps hooking my non-MUC conversations) 14:39:00 <-- jb has quit (Ping timeout) 14:39:00 <clokep_work> nhnt11: Don't oyu have plenty of GSoC stuff to do. 14:39:10 <nhnt11> clokep_work: Yeah, I didn't think this would take more than 15 minutes 14:39:13 <nhnt11> I'm giving up on it fo rnow 14:39:51 <flo-retina> nhnt11: should be possible to fully rewrite it soon using a nicer API ;) 14:39:57 <flo-retina> (assuming you are only targetting nightlies) 14:40:12 <nhnt11> I just wanted to make it hook only MUCs for now. 14:42:25 --> jb has joined #instantbird 14:49:41 --> chrisccoulson has joined #instantbird 14:49:56 <clokep_work> flo-retina, aleth: Sorry, had to answer emails. We all good on API discussions? 14:50:18 <flo-retina> clokep_work: well, we were just asking for feedback 14:50:43 <flo-retina> clokep_work: what I pastebined is what arlolra and I came up with today. We aren't really excited about it, but it seems to fit the purpose. 14:51:15 <flo-retina> I was mostly asking you for feedback to sanity-check (I somehow feel that this new interface is overengineered, but I can't find any actual simplification) 14:51:45 <flo-retina> aleth: do you remember how we are handling sending the quit message on IRC accounts when the application is being closed? 14:51:58 <flo-retina> aleth: is this something we have ever figured how to reliably do? 14:52:19 <aleth> After the discussion, I don't see any obvious ways to simplify it either. 14:52:30 <aleth> flo-retina: I don't think IRC allows for any great improvements over what we have. 14:53:44 <flo-retina> aleth: I'm asking because arlolra would like to send a message saying the encrypted session is ending when we are closing a conversation during shutdown. I don't remember if we have every found a reliable way to ensure some data we send during shutdown reaches the OS before the process dies 14:53:57 <clokep_work> flo-retina: What do you mean "how" we send the quit message? We splat it to the socket and magic happens and it might or might not get sent. :-D 14:54:15 <flo-retina> clokep_work: so we have never figured it out? 14:54:23 <clokep_work> I don't think so. 14:54:32 <aleth> flo-retina: There's the recent asyncshutdown stuff that might help 14:54:35 <flo-retina> clokep_work: might be somethÃ§ing to poke Yoric about 14:55:01 <flo-retina> can we get a promise to resolve when sending has happened, and then use the new shiny asyncshutdown toy 14:55:08 <aleth> flo-retina: Oh, I see what you were referring to about the quit message now! 14:55:17 <aleth> I thought you meant a different aspect of that. 14:55:49 <aleth> A promise resolving when sending has happened would be far too sane an API to make work with libpurple? ;) 14:56:37 <aleth> flo-retina: More seriously, there are the shutdown barriers, one of them might do the trick though I don't know how they relate to necko 14:56:44 <aleth> flo-retina: http://dutherenverseauborddelatable.wordpress.com/2014/05/26/shutting-down-asynchronously-part-2/ 15:00:05 <aleth> It would generally be nice to know if messages were actually sent successfully (at least on the client side). 15:00:11 <aleth> Not just during shutdown... 15:00:57 <-- arlolra has quit (Ping timeout) 15:01:24 --> arlolra has joined #instantbird 15:01:54 <flo-retina> aleth: I'm not talking about libpurple, just about socket.jsm 15:03:06 <aleth> flo-retina: Yes. It's still true I think that the shutdown aspect is not the difficult part here. 15:03:41 <flo-retina> aleth: don't we get an error if stuff failed to be sent? 15:04:32 <aleth> Not reliably. Haven't you experienced sending an IRC message on dodgy wifi and it never arriving? 15:05:35 --> mpmc has joined #instantbird 15:07:43 <-- arlolra has quit (Quit: arlolra) 15:07:57 --> mayanktg has joined #instantbird 15:13:11 <-- iamjayakumars has quit (Client exited) 15:13:31 <-- chrisccoulson has quit (Ping timeout) 15:14:41 --> chrisccoulson has joined #instantbird 15:18:17 <-- aleth has quit (Ping timeout) 15:49:56 <-- gerard-majax_ has quit (Ping timeout) 15:51:57 --> rosonline has joined #instantbird 15:56:33 <-- nhnt11 has quit (Ping timeout) 15:56:40 <clokep_work> flo-retina: "11:27:40 AM * jcranmer is currently working on a set of patches that should eliminate the need to port package manifest changes" 15:57:01 <flo-retina> \o/ 15:57:06 <flo-retina> has he mentioned a bug number? 15:57:17 <clokep_work> Asked for it . . . I'll CC you. 15:57:20 <flo-retina> ahah, I see you asked before me :) 15:57:23 <clokep_work> sawrubh: Gonna look at your patch in a moment. 15:57:25 <flo-retina> excellent, thanks! :) 15:58:05 --> nhnt11 has joined #instantbird 15:58:21 * Fallen is now known as Fallen|away 15:59:10 <clokep_work> Uhh...well in a "few" minutes now. 15:59:13 <clokep_work> I'm stepping out for lunch. 16:03:33 <instantbot> New Instantbird - Conversation bug 1032870 filed by email@example.com. 16:03:34 <instantbot> Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1032870 nor, --, ---, nobody, UNCO, Notifications for new message in group chat is not working 16:05:31 --> aleth has joined #instantbird 16:05:31 * ChanServ sets mode +o aleth 16:06:17 --> arlolra has joined #instantbird 16:07:39 <-- arlolra has quit (Quit: arlolra) 16:25:52 <-- jb has quit (Quit: jb) 16:40:36 --> Mic|web has joined #instantbird 16:47:11 <-- nhnt11 has quit (Ping timeout) 16:47:23 --> nhnt11 has joined #instantbird 16:49:50 --> jb has joined #instantbird 16:51:45 <-- jb has quit (Ping timeout) 16:59:20 <-- rosonline has quit (Ping timeout) 16:59:42 --> rosonline has joined #instantbird 17:00:59 --> gerard-majax_ has joined #instantbird 17:03:44 <flo-retina> for some reason, I can't click in the topic to start editing it :-S 17:04:41 <flo-retina> after editing the topic once with the /topic command, I can then correctly edit by clicking in there 17:09:29 <-- flo-retina has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 17:13:31 <aleth> flo-retina: smells like binding initialization JS attribute -> DOM attribute trouble. 17:14:21 <-- gerard-majax_ has quit (Ping timeout) 17:14:27 <aleth> Or maybe a regression from clokep's recent patch? 17:24:52 <clokep_work> aleth: More likely a regression. :-S 17:25:00 --> mconley|food has joined #instantbird 17:30:16 --> gerard-majax_ has joined #instantbird 17:33:07 <sawrubh> do you guys use lxr for searching libpurple code? 17:33:20 <sawrubh> because I see it was updated in 2013 so just wondering 17:33:42 <clokep_work> sawrubh: "it"? 17:33:50 <clokep_work> sawrubh: I usually use lxr. 17:33:54 <clokep_work> Ah, yeah. It's from the old repo. 17:34:04 <clokep_work> There are some API changes and such now, we should probably set up something better. :-\ 17:34:11 <clokep_work> They do have online docs too btw. 17:34:16 <sawrubh> it == purple folder inside lxr 17:34:54 <-- gerard-majax_ has quit (Ping timeout) 17:35:22 <clokep_work> sawrubh: Yeah so the libpurple code hasn't changed since then. 17:35:26 <clokep_work> THe purplexpcom has had minor updates. 17:37:12 --> gerard-majax_ has joined #instantbird 17:37:26 <-- gerard-majax_ has quit (Max SendQ exceeded) 17:37:37 <sawrubh> nvm I'll just use Sublime's directory search 17:38:06 <sawrubh> I actually just wanted to find out the usages of the API functions which I'm listing at https://etherpad.mozilla.org/ib-filelink-week7 17:39:29 <mayanktg> aleth: I have two doubts. 1. Jitsi uses the "ext" attribute alongwith the "ver" attribute to detect the entity (though "ext" is depreciated). We should construct the ext attribute too to support older devices. Right? 17:39:29 <mayanktg> 2. I'm sending the "ext" attribute to the conversation binding using notifyObservers from the XMPPAccountBuddyPrototype's onPresenceStanza(). The notification isn't sent though no error is displayed. Here's the pastebin for the same. http://pastebin.instantbird.com/745134. 17:40:22 <aleth> mayanktg: Can you show me the XEP for ext? 17:43:02 <mayanktg> aleth: ext is included as a legacy in the XEP 0115. http://www.xmpp.org/extensions/attic/xep-0115-1.3.html and the format is mentioned here as depreciated http://xmpp.org/extensions/xep-0115.html#protocol 17:43:21 <aleth> Your (2) probably won't work because creating a new conversation takes time? 17:43:27 <clokep_work> mayanktg, sawrubh: Don't forget that if you want to support older software, you generally have to implement both legacy and whatever replaced it. 17:44:05 <sawrubh> clokep_work: context? using libpurple in my feature? 17:44:53 <mayanktg> aleth: Yeah. Then what should be done to send the notification? 17:45:12 <aleth> (2) isn't how you should be doing this anyway. 17:45:33 <mayanktg> hmm 17:45:50 <clokep_work> sawrubh: JS-XMPP 17:45:55 <aleth> What's the goal here? The conversation wants to know whether the buddy on the other side can do video? 17:45:55 <clokep_work> sawrubh: Context is mayanktg's conversation. :) 17:47:21 <mayanktg> aleth: Yes. As soon as it receives a <c/> node and it has the entity we are looking for (video in my case) it should send the notification to enable the buttons for the same. 17:50:06 <mayanktg> Received a <presence/> with a <c/> element --> fetch the "ext" and "ver" attr --> send this to the binding so that the buttons can be enabled for respective entity found. 17:50:18 <aleth> Doing this right is going to be a bit complicated. 17:50:51 <aleth> First, the UI doesn't care about the particular contents of ext or ver or whatever XMPP-specific thing this is. It wants to know whether a buddy can videochat. 17:51:37 <aleth> So there should be a video flag on the buddy, and the buddy fires a buddy notification when it changes. 17:52:02 <aleth> An open conversation will listen for notifications on the buddy it is talking to, and so can respond to these changes. 17:52:15 <mayanktg> Ok. 17:52:40 <aleth> Mic|web: do you think that's right? 17:53:12 <aleth> I'd ask flo whether he agrees before you implement this because it means you having to look at accountbuddies, buddies, etc. 17:55:12 <aleth> mayanktg: The answer to (1) is http://xmpp.org/extensions/xep-0115.html#legacy 17:56:49 <mayanktg> Ok..I'll wait for flo to return then. Yeah. That's where I got the draft link for (1). :) 17:57:18 <aleth> mayanktg: Then doesn't it tell you what to do? "An application can determine if the legacy format is in use by checking for the presence of the 'hash' attribute, which is REQUIRED in the current format." 17:57:32 <aleth> Does Jitsi send you a hash attribute? 17:58:03 <mayanktg> aleth: Yes it does send a hash attribute too. 17:58:45 <aleth> OK, so I would suggest for now that you don't support the legacy stuff. 17:58:55 <aleth> That can always be done in followups. 18:01:04 <mayanktg> Ok. I will then go for only using the "ver" attribute to get the entities. Until then I'll study and write the code to decrypt the ver string to get the attribute info. 18:01:15 <aleth> No, it's the opposite I think. 18:01:30 <-- rosonline has quit (Quit: Instantbird 1.5 -- http://www.instantbird.com) 18:01:37 <aleth> Or am I confused? 18:02:28 <mayanktg> aleth: First one has to create a "ver" attr http://xmpp.org/extensions/xep-0115.html#ver-gen and then process the attr http://xmpp.org/extensions/xep-0115.html#ver-proc 18:02:41 <aleth> What I mean is follow xep-0115 (latest version) and check that the hash attribute is present. Only if it's present do you process the ver attribute. 18:02:51 <-- Rym has quit (Ping timeout) 18:03:01 <aleth> ok 18:03:27 <-- Mic|web has quit (Quit: http://www.mibbit.com ajax IRC Client) 18:03:44 <mayanktg> Yeah! If hash attribute is present I should go for "ver" else I should extract info from "ext". Right? 18:04:26 <aleth> No, if it's absent for now we just add a todo comment and don't extract any info ;) 18:04:50 <mayanktg> ok dok :) 18:05:12 <aleth> In a followup you can (if it turns out we want it!) add support for the "legacy format" there. 18:07:21 <mayanktg> aleth: We definitely want inter-portability for more and more clients, but ofcourse first we should be able to build the standard! 18:07:55 <aleth> Yeah, I think if you manage to actually start a video chat with Jitis *then* you can worry about older clients ;) 18:08:12 <aleth> First of all we should land video chats with IBs of course ;) 18:08:17 * mconley|food is now known as mconley 18:08:20 <mayanktg> yep ;) 18:08:32 * mayanktg goes to process the "ver" string. 18:12:09 --> Rym has joined #instantbird 18:15:58 <-- aleth has quit (Ping timeout) 18:17:10 <clokep_work> sawrubh: Are you waiting for me to respond to anything btw? 18:17:33 <clokep_work> sawrubh: Btw you might want to look at http://lxr.instantbird.org/pidgin2.6.3/source/ to see how some things are done. 18:17:43 <clokep_work> That includes the /pidgin/ source, not just libpurple. 18:17:46 <sawrubh> right now I'm trying to help get the ver attribute done with mayanktg 18:19:13 <sawrubh> shall we take this publicly to #instamtbird? 18:19:22 <clokep_work> You guys should discuss everything publicly. 18:21:17 <sawrubh> mayanktg: ok so we need to first write that function for verifying if the hash attribute matches one of the processing application's supported hash functions 18:22:08 <mayanktg> sawrubh: Ok. I guess the standard is to use the sha-1 hashing. 18:22:45 <mayanktg> http://xmpp.org/extensions/xep-0115.html#security 18:23:36 <sawrubh> mayanktg: yes http://xmpp.org/extensions/xep-0115.html#security-mti says sha-1 is the hashing algo used 18:23:48 <sawrubh> I guess we have sha-1 already implemented in xmpp somewhere 18:24:08 <mayanktg> ...states all implementations MUST suddport sha-1 . So after checking this we should get the "ver" attribute and then proceed to decrypt it. 18:24:19 * mayanktg looks for it. 18:24:27 <sawrubh> something like 'let ch = Cc["@mozilla.org/security/hash;1"].createInstance(Ci.nsICryptoHash); ch.init(ch.SHA1);' 18:24:50 --> rosonline has joined #instantbird 18:24:56 --> aleth has joined #instantbird 18:24:56 * ChanServ sets mode +o aleth 18:25:37 <mayanktg> sawrubh: Just note that we are _first_ processing the "ver" attr and NOT creating it. 18:25:56 <mayanktg> so we should proceed accordingly. ;) 18:28:51 * Fallen|away is now known as Fallen 18:31:02 <-- aleth has quit (Quit: exit stage left) 18:31:17 <sawrubh> mayanktg: ok so we get the <c/>, check the ver to see if we have it's capability information already, if not we ask for it, in order to do these last two steps (get it from cache or ask for it) we need to first verify the validity of the ver attribute right 18:32:04 <sawrubh> let's just assume sha-1 is the only hash function supported, then we need to verify if the ver string is a valid sha1 hash right? 18:32:29 <sawrubh> there should be a function in nsICryptoHash.. 18:32:55 <mayanktg> Yes. http://mxr.mozilla.org/comm-central/source/chat/protocols/xmpp/xmpp-session.jsm#458 I was looking for it. 18:33:35 <sawrubh> that's what I pasted above earlier :P ^ 18:34:33 <mayanktg> How do we get the capability info from the cache? 18:35:17 <sawrubh> probably maintain a map or something, but this info needs to persist between sessions so.... 18:35:58 <sawrubh> btw https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsICryptoHash doesn't provide any methods to verify the validity of a sha1 hash so I'm not sure how http://mxr.mozilla.org/comm-central/source/chat/protocols/xmpp/xmpp-session.jsm#458 would help 18:36:52 <sawrubh> clokep_work: any idea how do we store things we want to persist between sessions, we need to persist the capability info of the clients we know about 18:38:26 <clokep_work> sawrubh: Define "sessions"? 18:38:46 <sawrubh> multiple runs which involve a closing of IB in between 18:39:08 <clokep_work> Don't. 18:39:27 <clokep_work> Why do you need to do it? 18:40:23 --> jb has joined #instantbird 18:44:27 <sawrubh> ok, so XEP-0115 caches the Entity Capability information for various clients and since they don't change, it normally doesn't need to query them from those clients again 18:45:41 <sawrubh> now once we get the Capability info from a client for the first time, we need to store it right, now we could cache it just for that session or for eternity (and in this case we'll need to maintain the info over a shutdown of IB) 18:53:46 --> gerard-majax_ has joined #instantbird 18:54:39 --> Mook has joined #instantbird 19:03:28 <-- chrisccoulson has quit (Quit: OSError: [Errno 130] Owner died) 19:06:17 <mayanktg> As far as I've understood we should follow these steps to _process_ the ver attribute. 19:06:33 <-- mconley has quit (Input/output error) 19:10:31 <mayanktg> 1. Get <c/>. 19:10:31 <mayanktg> 2. If (hash) get "ver". 19:10:31 <mayanktg> 3. check cache for particular value of "ver" received. 19:10:31 <mayanktg> 4. if found --> skip and proceed with notification to conversation binding! 19:10:32 <mayanktg> 5. else ask for service discovery from sender of <presence/> 19:10:32 <mayanktg> 6. Generate a local "ver" HASH using the service discovery info. 19:10:32 <mayanktg> 7. If the local "ver" matches received "ver" HASH. --> store the ver HASH and entity info in the caches and proceed with notification to conversation binding! 19:10:32 <mayanktg> 8. else leave the received "ver" string and declare the "ver" string is not valid. 19:10:34 <mayanktg> (because we are getting two different verification strings for the same service info from the sender.) 19:14:00 <mayanktg> So we would need to ask for a service discovery info and also use a common function to generate the "local" ver attribute and also another when I'll have send one along with the <presence/> stanza when someone connects his account. 19:16:34 <clokep_work> sawrubh: Why can't it just be cached for a session? 19:17:07 <sawrubh> yes, that's what I decided. I was gonna ask you to 'nvm' my question :) 19:18:18 <-- jb has quit (Ping timeout) 19:22:02 <-- mpmc has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 19:29:58 <clokep_work> OK! 19:39:51 <-- nhnt11 has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 19:39:58 --> nhnt11 has joined #instantbird 20:01:15 <-- Rym has quit (Ping timeout) 20:01:36 --> Rym has joined #instantbird 20:05:03 <-- mayanktg has quit (Ping timeout) 20:10:57 --> mayanktg has joined #instantbird 20:12:21 <-- Rym has quit (Ping timeout) 20:21:30 --> flo-retina has joined #instantbird 20:21:30 * ChanServ sets mode +qo flo-retina flo-retina 20:28:30 --> mconley has joined #instantbird 20:29:15 --> EionRobb has joined #instantbird 20:41:54 --> jb has joined #instantbird 20:50:34 <-- mconley has quit (Input/output error) 20:52:36 <-- jb has quit (Ping timeout) 21:03:02 --> mconley has joined #instantbird 21:05:20 <mayanktg> When I'm sending a Service discovery info Iq stanza to the Jitsi client I'm receiving http://pastebin.instantbird.com/745211 result from the client containing the <identity/> and <feature/> ,:) Means we are moving in the right direction :) 21:05:34 --> chrisccoulson has joined #instantbird 21:06:33 <mayanktg> Sorry ..*.a Service discovery request info 21:11:12 <-- mconley has quit (Input/output error) 21:28:34 <-- gerard-majax_ has quit (Ping timeout) 21:39:05 <clokep_work> sawrubh: I'm really sorry I haven't reviewed that code yet. 21:39:07 <clokep_work> Busy day. :-\ 21:44:23 <-- clokep_work has quit (Ping timeout) 21:51:49 <-- mayanktg has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com) 21:55:21 --> mconley has joined #instantbird 22:34:07 --> Rym has joined #instantbird 22:43:12 <-- Rym has quit (Ping timeout) 22:44:49 --> wnayes has joined #instantbird 22:45:04 <-- mconley has quit (Input/output error) 22:51:37 * Fallen is now known as Fallen|away 23:12:35 --> Rym has joined #instantbird 23:38:34 <-- Rym has quit (Ping timeout) 23:39:16 --> Rym has joined #instantbird 23:41:08 --> clokep has joined #instantbird 23:41:08 * ChanServ sets mode +o clokep 23:46:45 <-- Armada has quit (Connection reset by peer) 23:54:22 <-- rosonline has quit (Quit: Instantbird 1.5 -- http://www.instantbird.com)