#instantbird log on 07 09 2013

All times are UTC.

00:21:15 <-- nhnt11 has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
00:24:33 --> mconley has joined #instantbird
00:24:59 <-- mconley has quit (Input/output error)
00:25:06 --> mconley has joined #instantbird
00:48:29 <qheaden> clokep: So which prpl options are actually going to be used in the code?
00:48:54 <qheaden> Are they all applicable to Ib?
00:49:27 <clokep> qheaden: So that's kind of complicated.
00:49:40 <clokep> The way we did it for IRC is to make them all used, but not expose all of them in the UI.
00:49:49 <clokep> This means that if you migrate an account from libpurple it should work as before.
00:50:26 <qheaden> clokep: So basically make some of them dummy options for proper transitioning?
00:50:39 <clokep> I don't know what "dummy options" means.
00:51:10 <qheaden> Oh yeah, you did say that all of them were used.
00:52:17 <clokep> qheaden: It's possible that method isn't applicable to Yahoo and we shld do something else thouhg.
00:55:46 <-- Mook_as has quit (Quit: Mook_as)
00:57:10 * clokep will be back late.r
01:01:37 <-- clokep has quit (Ping timeout)
01:05:46 <-- douglaswth has quit (Ping timeout)
01:05:58 --> douglaswth has joined #instantbird
01:17:43 --> dionisos has joined #instantbird
01:42:06 --> jb has joined #instantbird
01:57:28 <-- Kaishi has quit (Quit: Kaishi)
02:00:05 --> wnayes has joined #instantbird
02:33:31 --> Mook has joined #instantbird
03:04:23 <-- wnayes has quit (Quit: wnayes)
03:04:41 * qheaden is now known as qheaden_away
03:05:13 <instant-buildbot> build #904 of linux-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/linux-nightly-default/builds/904
03:05:51 --> Nirgali has joined #instantbird
03:35:43 <instant-buildbot> build #896 of macosx-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/macosx-nightly-default/builds/896
03:36:18 <-- jb has quit (Ping timeout)
03:36:25 --> clokep has joined #instantbird
03:36:25 * ChanServ sets mode +o clokep 
04:03:07 <-- clokep has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
04:07:00 <-- dionisos has quit (Ping timeout)
04:31:36 <-- EionRobb has quit (Ping timeout)
04:41:02 <-- Nirgali has quit (Ping timeout)
04:54:16 <-- mconley has quit (Input/output error)
05:06:24 --> mconley has joined #instantbird
05:10:40 <-- mconley has quit (Input/output error)
05:46:35 <-- Mook has quit (Quit: Mook)
05:51:07 <instant-buildbot> build #999 of win32-nightly-default is complete: Success [build successful]  Build details are at http://buildbot.instantbird.org/builders/win32-nightly-default/builds/999
05:54:57 --> sluggo has joined #instantbird
05:56:34 <sluggo> hi while building instantbird here is my process stopped: waiting for lock on repository
06:06:29 <-- sluggo has quit (Quit: http://www.mibbit.com ajax IRC Client)
06:16:38 <-- Optimizer has quit (Ping timeout)
07:01:16 --> Mic has joined #instantbird
07:01:17 * ChanServ sets mode +h Mic 
07:01:32 <Mic> Good morning
07:32:41 --> EionRobb has joined #instantbird
07:54:38 <-- chrisccoulson has quit (Quit: OSError: [Errno 130] Owner died)
07:55:13 --> chrisccoulson has joined #instantbird
08:06:02 --> mpmc has joined #instantbird
08:29:52 <-- flo-retina has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
08:34:39 --> atuljangra has joined #instantbird
08:34:56 <atuljangra> Hello Good Morning :)
09:08:55 --> flo-retina has joined #instantbird
09:08:55 * ChanServ sets mode +qo flo-retina flo-retina 
09:10:04 <flo-retina> hello :)
09:10:35 <atuljangra> :)
09:14:36 <flo-retina> atuljangra: is your file reading/writing code finished?
09:15:04 <atuljangra> flo-retina: Working on it.
09:15:47 <flo-retina> if you still have difficulties with OS.File, or if error messages are completely confusing, we can ask Yoric
09:16:51 <atuljangra> Okay. I'll ping him. Currently I'm re-writing the sender side file I/O so that we open the file once and then keep reading, and finally close it.
09:17:05 <flo-retina> We can ask him to come here if you want
09:17:23 <flo-retina> ok
09:17:39 <atuljangra> No no pbm, I'll just ping him in #developers if I ran into some problem with the current code.
09:20:00 <Mic> Discussing things here has the advantage that it is logged and we can have a look at it later (and refer to it if needed) by the way.
09:21:35 <atuljangra> Yes Mic. I'm generally hesitating in asking questions, and remain blocked for hours instead of asking. I'll just ask from now.
09:23:32 --> jb has joined #instantbird
09:45:56 --> aleth has joined #instantbird
09:45:56 * ChanServ sets mode +h aleth 
09:46:30 <atuljangra> I'll be back in 20 mins. Going to my hostel. It's a 15 min walk from here.
09:46:35 <-- atuljangra has quit (Quit: http://www.mibbit.com ajax IRC Client)
10:04:39 --> clokep has joined #instantbird
10:04:39 * ChanServ sets mode +o clokep 
10:12:33 <Mic> Hi clokep
10:15:21 --> atuljangra has joined #instantbird
10:15:30 <atuljangra> back :)
10:21:41 <flo-retina> atuljangra: so what's left to do before you have a patch ready to attach on bugzilla for feedback/review?
10:23:10 <atuljangra> flo-retina: file i/o only I guess. But a completed patch should also contain ui bindings too right? (like accept/reject for receiver) 
10:23:45 <flo-retina> hmm. What's the UI plan for a minimalistic version?
10:24:45 <atuljangra> Acc to me: On the sender side, just dropping the file should be okay. And on receiver side, we can have accept/reject option when the initiation request is received.
10:25:18 <atuljangra> FT errors can be sent to LOG for now(in the minimal version)
10:26:02 <Mic> How would the option be offered?
10:27:07 <clokep> Mic: Good morning.
10:27:55 <atuljangra> I guess, In the conversation.xul we can send two buttons(click-able objects) saying that file transfer has been initiated. Then user can  select one of these.
10:28:04 <atuljangra> Or anything else that you would prefer
10:28:41 <flo-retina> Mic: do we still have a notificationbar in the conversation binding?
10:28:49 <flo-retina> (the one we used to have for the topic bar)
10:28:55 <Mic> I don't know but that's also the thing I was wondering.
10:29:05 <Mic> Let me check.
10:29:13 <flo-retina> we do: http://lxr.instantbird.org/instantbird/source/instantbird/content/conversation.xml#25
10:29:56 <flo-retina> atuljangra: ok, for the receiving end, just display a notification there with a "save" button.
10:30:31 <flo-retina> Maybe "Save…", to open a file picker
10:31:04 <flo-retina> or maybe files should just be saved to the Downloads folder automatically
10:31:32 <atuljangra> flo-retina: okay. Do we want a file picker, currently I'm automatically saving the file in Downloads folder with the same name as the original file. (if we are talking about minimal version)
10:31:48 <flo-retina> ok, ignore the picker for now
10:31:53 <flo-retina> (and possibly for the future too :))
10:31:59 * flo-retina hates file picker dialogs
10:32:10 <aleth> Let's try to avoid file pickers :)
10:32:15 <atuljangra> me too.
10:32:37 * atuljangra picker feels sad ;)
10:32:40 * Mic doesn't like all his downloads in one place. I usually "Save as..." to avoid that ;)
10:32:43 <flo-retina> aleth, atuljangra: we'll need configuration UI for the download folder though :-/
10:33:18 <Mic> atuljangra: OK, then just a notification bar with a "Save" button for now.
10:33:19 <aleth> If we start from the FX download panel UI, we can probably just port that too
10:33:30 <flo-retina> the same UI that Firefox has in its preference window seems fine
10:33:36 <atuljangra> flo-retina: Yes, we need config ui for some things in ft. Like default block size, default downloads folder.
10:33:52 <Mic> MDN has documentation on notificationbox s.
10:34:03 <aleth> Default block size should be a hidden pref probably
10:34:18 <flo-retina> "config ui for [...] default block size" are you kidding? How many users know what that even means? :)
10:34:20 <atuljangra> aleth: okay, that's fine with me.
10:34:39 <aleth> For the first patch, just use a reasonable constant ;)
10:34:45 <flo-retina> I don't even see why anybody would want to change that
10:34:48 <atuljangra> flo-retina: pref would make much more sense here.
10:35:11 <Mic> That's not important now.
10:35:28 <atuljangra> yes.
10:35:34 <clokep> flo-retina: How many developers even know what that means? ;)
10:36:18 <flo-retina> clokep: probably those who read the magic XEP atuljangra fell in love with :-p.
10:36:32 <atuljangra> haha :P
10:36:40 <aleth> atuljangra: Is there a max/min block size in the XEP specs?
10:37:04 <atuljangra> yes. we do have max block size
10:37:04 * aleth assumed you wanted it configurable due to possible server-side issues
10:37:18 <Mic> atuljangra: is the UI to accept the file transfer the only thing that is still missing?
10:37:29 <Mic> Would it work if it is there?
10:37:35 <flo-retina> aleth: the spec says "The REQUIRED 'block-size' attribute defines the maximum size in bytes of each data chunk (which MUST NOT be greater than 65535)."
10:38:00 <aleth> flo-retina: That doesn't seem a problem then.
10:38:15 <flo-retina> aleth: it basically looks like we always want to try 65535 first
10:38:28 <flo-retina> as the responder has an error code to answer it needs a smaller block size
10:38:39 <aleth> Great :) No need for a pref then
10:39:12 * aleth hopes atuljangra can get this into the review queue soon and move on to FileLink :)
10:39:22 <flo-retina> aleth: it seems stupid that the error doesn't suggest a smaller block size :-S
10:39:31 <atuljangra> Mic: yes. I believe so, sender can just drop the file, and receiver would accept it. Also we would send a system message saying the ft has completed.
10:39:33 <flo-retina> would be helpful if the responder replied with the max block size it supports
10:39:46 <atuljangra> aleth: :)
10:39:50 <atuljangra> flo-retina: I was thinking the same.
10:39:51 <flo-retina> aleth: yeah, either move on to filelink, or to libpurple integration
10:39:56 <aleth> flo-retina: I thought you said there was a 'block-size attribute'
10:40:02 <flo-retina> aleth: anyway, a "real" part of the project :)
10:40:09 <atuljangra>  :)
10:40:39 <flo-retina> aleth: the send of the file opens a stream and proposes a block-size. The responder can reply that he's unhappy about the proposed block size, but doesn't offer another size :-/.
10:40:45 <aleth> I'd say Filelink because it's the key to making this ready to ship, and to not make UX mistakes
10:41:06 <flo-retina> ah, the spec says "It is RECOMMENDED to use a 'block-size' of 4096."
10:41:14 * atuljangra afk
10:41:26 <flo-retina> aleth: libpurple is also important to not make API mistakes
10:41:52 <aleth> I guess either would do then ;)
10:41:58 * atuljangra proposes to keep 4096 as default. 
10:41:58 <flo-retina> aleth: and I would like IRC too. So that the code using OS.File is moved to jsProtoHelper instead of some obscure xmpp related files.
10:42:14 <flo-retina> atuljangra: yeah, 4k will be fine
10:42:23 <clokep> flo-retina: DCC is on my list of things...
10:42:26 <clokep> The list is long. :)
10:42:36 <flo-retina> anyway, "Generally, in-band bytestreams SHOULD be used only as a last resort. SOCKS5 Bytestreams will almost always be preferable." ;)
10:42:42 * clokep goes to check something off it.
10:42:48 <flo-retina> clokep: you have a student to do it for you ;)
10:43:06 <Mic> I also want DCC. I need it for the IRC avatars :)
10:43:14 <flo-retina> Mic: :-P
10:43:15 * aleth doesn't think DCC is part of yahoo ;)
10:43:27 <flo-retina> aleth: :-P too
10:43:41 <Mic> Anyways, atuljangra, are there any questions remaining what to do next?
10:44:20 <-- gerard-majax_ has quit (Ping timeout)
10:44:33 <atuljangra> mic I guess it;s fine. I'll just complete the file i/o asap and do the receiver ui first.
10:45:20 <Mic> OK, when that is done, please upload a patch for feedback (and please make sure the indentation is acceptable;).
10:46:07 <clokep> If parts are done now, we could have the patch go up for feedback soon, even without the UI...we're kind of slow on feedback. :(
10:46:24 <flo-retina> clokep: are we?
10:46:41 <flo-retina> clokep: I was under the impression that we are rather fast on initial feedback, and slow on final reviews.
10:46:55 <atuljangra> Ok :)
10:47:04 <clokep> Fair enouhg. :)
10:47:05 * flo-retina wonders how nhnt11 feels about this. (where is he btw?)
10:47:16 <Mic> flo-retina: no idea.
10:48:58 --> gerard-majax_ has joined #instantbird
10:49:56 <Mic> How's the status of your file reading and writing code?
10:51:26 <atuljangra> mic It's near to complete. Just changing the mechanism so that we open the file only once and keep reading and sending until we are done.
10:51:38 <atuljangra> I'm just writing it. Will pastebin it if I run into any error.
10:52:08 * aleth is sad so many people here are on mibbit due to our http proxy issue
10:52:17 <Mic> Good, make sure to ping one of us if there's a problem.
10:52:49 <atuljangra> aleth: me too :(
10:52:51 <atuljangra> Mic: sure
10:53:00 <Mic> Here's a simple example how to create a notification with a button: https://developer.mozilla.org/en-US/docs/Code_snippets/Alerts_and_Notifications#Using_notification_box
10:54:18 <atuljangra> Thanks :)
10:56:01 --> Optimizer has joined #instantbird
11:08:16 <-- clokep has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
11:12:56 --> dionisos has joined #instantbird
11:20:12 * atuljangra afk for 20 mins. doing lunch
11:26:12 <flo-retina> isn't it like 4 or 5pm in Atul's timezone?
11:26:27 <aleth> late lunch? ;)
11:26:33 <-- EionRobb has quit (Quit: Leaving.)
11:27:54 <Mic> Maybe nhnt11 will appear in a moment coming back from breakfast? ;)
11:28:10 <aleth> probably :P
11:28:54 <aleth> Where's this etherpad you were talking about yesterday?
11:30:09 <Mic> https://etherpad.mozilla.org/instantbird-gsoc-2013-awesometab ?
11:30:18 <Mic> You should have contributed there already ;)
11:30:36 <aleth> Oh, I thought he had a new one ;) thanks
11:32:37 <Mic> aleth: that's just stuff that I remembered and wanted to note somewhere, not stuff that needs to be done before landing this.
11:32:58 <aleth> Mic: ah OK
11:33:23 <Mic> "Bug 2015 and its followups:" is a better name for the section, yes :)
11:35:38 <aleth> If any of your comments there should be fixed before landing it might be better to move them to the bug, so that's clear.
11:47:30 * atuljangra back
11:47:45 <atuljangra> yes that was a late lunch. :P
11:48:00 <atuljangra> ordered pizza ;)
11:54:30 --> clokep_ has joined #instantbird
12:12:32 <-- jb has quit (Ping timeout)
12:13:00 <clokep_> Hello!
12:21:53 --> Tonnes has joined #instantbird
12:22:26 --> Nirgali has joined #instantbird
12:32:39 --> nhnt11 has joined #instantbird
12:33:01 <flo-retina> nhnt11: good morning :)
12:33:16 <nhnt11> Hello :]
12:34:58 * nhnt11 is back to his "sleep all day, code all night" schedule.
12:35:28 <aleth> Time for breakfast then? ;)
12:35:51 <flo-retina> aleth: ;)
12:35:58 <nhnt11> I finished that :)
12:36:14 <aleth> nhnt11: Re my r- comment, "Actually in the next milestone the filtering will not be done at all in this method, so splitting it is kind of a waste.. since one of the two methods will have to be removed." that's fine with me.
12:36:31 <nhnt11> Okay.
12:36:37 <nhnt11> I'm reading the logs now, btw.
12:36:48 <aleth> I hesitated to r- because of that issue, but did so because you did not say in your comments on the bug why you had ignored my previous review comment on that issue.
12:37:15 <aleth> This isn't great because then it's not clear whether you did not understand what I was getting at, or decided to do something else, or decided to leave it for later.
12:37:34 <nhnt11> I kind of just forgot. :]
12:37:43 <nhnt11> I seem to do that more often that I'd like :(
12:38:13 <clokep_> nhnt11: I find it useful to quote the review comments and delete / respond to it line by line as I fix things.
12:38:25 <nhnt11> I don't have any problems with your feedback/review speeds btw.
12:38:31 <nhnt11> clokep_: Yeah, I should do that.
12:38:58 <nhnt11> I think what happened was that Mi_c added his review comment and then I forgot about aleth's. Oops.
12:39:00 <aleth> nhnt11: Also, it certainly wasn't just about the name of that method :-S But let's leave it for later if you are ditching/moving that part of the code anyway.
12:39:08 <nhnt11> Okay.
12:39:48 <-- Nirgali has quit (Ping timeout)
12:40:47 <nhnt11> Should I worry about the "word1 word2" => "word1 AND word2" right now?
12:40:53 <aleth> No
12:41:03 <aleth> (see the etherpad)
12:41:26 <nhnt11> I'm looking at it now, that's why I asked. I wasn't sure that was included in "postponed" or not.
12:42:38 <aleth> Afaik everything in the etherpad is meant to be todo-stuff for followups
12:43:18 <aleth> Maybe you can get a r+ from Mic on that patch today? :)
12:43:37 <nhnt11> Er, I thought I should address some of those before a new patch.
12:43:41 <nhnt11> The click handling for e.g.
12:43:46 <nhnt11> Otherwise, a new patch is ready.
12:43:48 <-- flo-retina has quit (Ping timeout)
12:44:29 <aleth> If you think you can address them today, then go ahead, otherwise I'd say get the r+ first ;)
12:45:09 <nhnt11> I'll take some time and try to address those.
12:45:32 <nhnt11> Unless Mic is free to review right now? If that's the case I think I'll upload a new patch asap.
12:45:53 <aleth> Maybe do both?
12:46:09 <nhnt11> (Y)
12:46:49 * clokep_ feels like he's seen a lot of feature creep in that patch. ;)
12:52:41 <aleth> clokep_: If you look back at the first patch in that bug that wasn't a bad thing ;)
12:53:16 <clokep_> aleth: Honestly I haven't really been following, I just want to play with it in a nightly. :)
12:54:18 <-- dionisos has quit (Ping timeout)
13:01:38 --> flo-retina has joined #instantbird
13:01:38 * ChanServ sets mode +qo flo-retina flo-retina 
13:13:13 <Mic> nhnt11: I've got half an hour before I have to leave.
13:13:34 <nhnt11> Mic: Uploading in a minute.
13:16:23 <nhnt11> Btw, I've already renamed the "filter"s to "refresh".
13:16:31 <nhnt11> It'll be good for later too, so I'm leaving it.
13:19:33 <atuljangra> Mic: In the file read example that we did the other day, can I somehow store the openFile so that I can read from the same promise again. Also if I try to do anything with the instance of OS.File.open, like file.close() or file.read(), do I need to use the onOpenSuccess() and onOpenError functions again.
13:20:55 <clokep_> atuljangra: OS.file.open returns a promise, you can store it and reuse it.
13:21:40 <-- atuljangra has quit (Ping timeout)
13:22:00 <instantbot> nhnt11@gmail.com cancelled review?(florian@instantbird .org) for attachment 2555 on bug 2015.
13:22:01 <instantbot> nhnt11@gmail.com requested review from aleth@instantbird.o rg for attachment 2556 on bug 2015.
13:22:03 <Mic> nhnt11: please ping me if you've uploaded a new patch and instantbot failed to announce anything.
13:22:03 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
13:22:08 <Mic> Ah!
13:22:09 <nhnt11> Mic: Ping ;)
13:22:30 <clokep_> atuljangra: Something like http://pastebin.instantbird.com/241170
13:22:48 <clokep_> nhnt11: He said only if instantbot fails to announce it. :P
13:23:04 <aleth> atuljangra: Not directly related, but have you looked at the use of OS.File in http://dxr.mozilla.org/mozilla-central/source/browser/components/downloads/content/downloads.js
13:23:06 <nhnt11> clokep_: I saw. I was kidding.
13:23:41 <aleth> atuljangra: also http://dxr.mozilla.org/mozilla-central/source/toolkit/components/jsdownloads/
13:24:23 <clokep_> aleth: What's downloads.js vs. jsdownloads?
13:25:14 <aleth> clokep_: I'm not certain, but I assume the parts of the download manager code that are in toolkit
13:25:29 <clokep_> aleth: Ah, I didn't notice one was browser and one was toolkit. :)
13:25:32 <clokep_> Good call.
13:25:54 <aleth> mconley would be the person to ask ;)
13:26:05 --> atuljangra has joined #instantbird
13:26:22 --> mconley has joined #instantbird
13:26:33 <aleth> psychic ;)
13:26:52 * atuljangra mibbit suddenly disconnected me :(
13:27:05 <aleth> atuljangra: check the logs ;)
13:27:09 <atuljangra> I wrote so many lines now I can't even write them again
13:27:19 <atuljangra> aleth: yes, but I wrote many lines :(
13:27:23 <aleth> :(
13:27:23 <clokep_> atuljangra: Copy & paste?
13:27:45 <atuljangra> tab gets closed once the channel is dead :(
13:29:38 <Mic> nhnt11: I would have preferred  |if (acc.connected && (aCmd == "cmd_addbuddy" || aCmd == "cmd_newtab" || acc.canJoinChat))| because the command won't be enabled then when there are no (connected) accounts.
13:30:18 <atuljangra> clokep_: that means http://pastebin.instantbird.com/241171
13:30:21 <nhnt11> I thought you said don't worry about that :(
13:30:22 --> novabyte has joined #instantbird
13:30:29 <nhnt11> I can fix it in a second if you'd like.
13:30:38 <clokep_> atuljangra: Mine doesn't.
13:30:52 <Mic> OK.
13:31:01 <atuljangra> clokep_: mine just did :'(
13:31:10 <flo-retina> clokep_: I'm not sure about http://pastebin.instantbird.com/241170. Wouldn't you want to do something like http://pastebin.instantbird.com/241172 ?
13:31:14 <clokep_> atuljangra: Kind of, I'm not sure what you mean by "all the calls".
13:31:45 <Mic> flo-retina: ++
13:31:47 <atuljangra> flo-retina: I'm trying to do the same. But the file is undefined at this point.
13:31:47 <clokep_> flo-retina: What does "store the file" mean? Isn't the promise returned the file?
13:32:07 <clokep_> (Note that I haven't actually used OS.file, just some other promises ;))
13:32:31 <atuljangra> clokep_: I meant the calls to file.close() file.read() etc.  "file" here is obtained by Os.file.open
13:32:36 <Mic> atuljangra: you'll need to make sure to access the stored file only AFTER the promise has been resolved.
13:33:29 <flo-retina> clokep_: I was thinking "put a reference to it in an object that will actually use the file"
13:33:52 <instantbot> aleth@instantbird.org denied review for attachment 2556 on bug 2015.
13:33:54 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
13:34:56 <atuljangra> Mic: like this? http://pastebin.instantbird.com/241173
13:35:37 <clokep_> flo-retina: But if it's returned why would you do something weird inside the promise itself. :-S
13:35:50 <clokep_> (I guess that keeps it async...)
13:36:03 <nhnt11> Aah. Missed something /again/
13:36:20 <flo-retina> clokep_: what's "something weird" in this context?
13:36:33 <clokep_> "saving the file"
13:36:46 <clokep_> It's also possible the context is not what I'm expecting.
13:36:56 <clokep_> Ther'es a bunch of different promises specs around, maybe I've looked at a different one.
13:37:03 * Mic isn't sure what should be done here at the moment.
13:37:10 <atuljangra> :(
13:37:16 <aleth> atuljangra: Try asking mconley? ;)
13:37:24 <mconley> ahoyhoy
13:37:28 <Mic> atuljangra: if you'd like to use "then" on tempFile, you'd need to make it a Promise with let tempFile = Promise.defer();
13:37:31 <aleth> And did you see the links I posted earlier?
13:37:32 <atuljangra> hey Mike :-)
13:37:36 <mconley> what's up?
13:37:46 <Mic> And resolve it from the file.open success callback.
13:38:08 <aleth> mconley:  atuljangra is struggling with OS.File and I suspect you probably encountered similar issues when coding the download panel ;)
13:38:21 <mconley> possibly
13:38:31 <atuljangra> aleth: yes, those use the simpler version of Os.file usage
13:38:33 <clokep_> Mic: Doesn't it just return a promise you can use though?
13:38:45 <mconley> atuljangra: can you boil the problem down to a question?
13:39:06 <Mic> clokep_: it might even be undefined at this point.
13:39:37 <atuljangra> mconley: I'm trying to open a file once and read from it several times. Thus I want to store the file instance somewhere. How should I do it, given that it is a promise which resolves to a file. http://pastebin.instantbird.com/241173
13:40:04 <clokep_> Mic: "it"?
13:40:17 <Mic> "tempFile"
13:40:22 <Mic> http://pastebin.instantbird.com/241189
13:40:42 <atuljangra> Mic: tempFile.read(1024) would return a promise, I guess there is no need of making tempFile a promise
13:41:07 * clokep_ doesn't understand how this is any different than chaining promises. :-S
13:41:16 <mconley> tad confused here
13:41:28 <mconley> in the pastebin you just sent me
13:41:37 <mconley> the tempFile is going to be undefined on line 8
13:42:03 <mconley> because it doesn't get set to the Promise'd file synchronously
13:42:13 <Mic> tada... now what did I say? ;)
13:42:37 <atuljangra> mic sorry for indentation, I copy pasted it from the original code which was indented. 
13:42:44 <atuljangra> mconley Mic exactly.
13:42:49 <atuljangra> that's the problem here.
13:43:05 <atuljangra> I cannot use the tempFile before it is resolved.
13:43:16 <mconley> ok
13:43:35 <mconley> atuljangra: but you can use it inside the first then function
13:43:37 * Mic can't help without seeing much more code around this place.
13:43:41 <atuljangra> I can do tempFile = yield OS.File.open(path); I guess?
13:43:47 <-- Optimizer has quit (Ping timeout)
13:43:52 <mconley> you could, yes
13:43:58 <mconley> inside a Task
13:44:14 <mconley> like Mic, I need more context to know exactly what's going on here
13:44:16 <mconley> but you could do:
13:45:08 * flo-retina needs more context too
13:45:09 <atuljangra> mconley: yes, I can use it first then function, I was doing the same for now, but now we want to use to same open file, rather than opening it again and again.
13:45:11 <mconley> return Task.spawn(function() { let file = yield OS.file.open('foo');  let data = yield tempFile.read(1024);  })
13:45:17 <flo-retina> I'm not even sure of what we are discussing any more :-S
13:45:32 <mconley> atuljangra: then perhaps keep context inside a Task
13:45:47 <mconley> the file instance will stay in scope within the Task
13:45:54 <Mic> nhnt11: you haven't renamed the "filter"-method itself as it seems.
13:46:00 <Mic> Only the calls to it.
13:46:01 <mconley> atuljangra: but I'm just guessing here
13:46:07 <atuljangra> Mic: I can pastebin the whole code, but I would like to know what exactly do you need. :)
13:46:10 <mconley> because I don't 100% know what you're trying to do, or what context we're in
13:46:21 <atuljangra> mconley: oh okay. :(
13:46:42 <atuljangra> Should I push the wip code my bitbucket if it can help?
13:46:43 <flo-retina> mconley: we need to keep a reference to the file for a while. It's for IM file transfer, and we need to send the file in chunks of 4kB.
13:46:45 <mconley> atuljangra: well, we can fix that. :) Start with the function that this stuff you pastebin'd in
13:46:49 <Mic> atuljangra: maybe pastebin all of it for the others but I'd need to leave in five minutes.
13:46:56 <flo-retina> so we need a reference to the opened file until we have sent the last chunk.
13:47:01 <nhnt11> Mic: I fixed that! It didn't get into the diff? :(
13:47:07 <nhnt11> I checked the diff again before uploading...
13:47:08 <nhnt11> Sorry.
13:47:14 <mconley> flo-retina: ok, so we pump it for chunks. got it.
13:47:15 <atuljangra> Mic: okay.
13:47:19 <mconley> chunk pumpin.
13:47:23 <atuljangra> mconley: yes.
13:47:40 <mconley> atuljangra: and this chunk pumpin' - how is it kicked off?
13:47:52 <mconley> is it a function, like, "pumpChunks" that returns a promise when complete?
13:48:01 <mconley> or is it a generator that returns the chunks?
13:49:24 <Mic> nhnt11: beside that I can't find any more problems.
13:49:26 <atuljangra> No, it's basically a function that receives a signal from Alice and then read the file into chunks, sends a chunk to Alice, wait for the ack from Alice about the received chunks, then read more chunks and send and repeat
13:49:44 <Mic> I need to go now, will review what's current when I return ~ 9pm CEST.
13:49:47 <mconley> atuljangra: can I see that function?
13:49:51 * nhnt11 is hurrying to fix his derp.
13:49:55 <nhnt11> Oh okay.
13:50:03 <Mic> Bye!
13:50:03 <flo-retina> Mic: ok, have a nice end of afternoon :)
13:50:06 <-- Mic has quit (Quit: Instantbird -- http://www.instantbird.com)
13:50:08 <atuljangra> mconley: yes. give me 2 mins.
13:50:11 <mconley> sure
13:50:13 * aleth hopes that "wait for the ack" is async
13:51:02 <aleth> mconley: Thanks btw :)
13:51:34 <atuljangra> aleth: yes. Everything is async. 
13:51:45 * atuljangra took care of performance as much as he could
13:51:59 <aleth> atuljangra: :) Basically I too would like to see the code... ;)
13:52:39 <mconley> aleth: np
13:52:53 <atuljangra> aleth: yes, I'm planning to push it tonight
13:53:10 <aleth> Well, just that function would help ;)
13:53:16 <atuljangra> okay :(
13:53:19 <atuljangra> *:)
13:56:09 <flo-retina> atuljangra: I don't think pushing the code online to a place where people can see it should require a "plan" on an open source project.
13:57:06 <atuljangra> Code is messed up right now, as I was trying few things out, so maybe indentation is not good. If not readable, tell me I'll pastebin indented code :s http://pastebin.instantbird.com/241204
13:57:19 <atuljangra> flo-retina: I meant, I'll push it after completing file i/o
13:57:52 <atuljangra> mconley: aleth ^^
13:58:42 <clokep_> (Beautified: http://pastebin.instantbird.com/241205)
13:59:16 <atuljangra> clokep_: Thanks :)
13:59:20 <instantbot> nhnt11@gmail.com cancelled review?(benediktp@ymail.com ) for attachment 2556 on bug 2015.
13:59:21 <instantbot> nhnt11@gmail.com requested review from aleth@instantbird.o rg for attachment 2557 on bug 2015.
13:59:22 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
13:59:23 <flo-retina> clokep_: doesn't seem much better
13:59:56 * nhnt11 forgot to address the register textbox again
14:00:18 * nhnt11 slaps his wrist with a ruler
14:00:24 <flo-retina> atuljangra: returning early if the stanza type isn't "result" would reduce the indent.
14:00:46 <mconley> atuljangra: so, this onIBBInitiateReceive function...is it supposed to return something?
14:00:54 <mconley> it looks like "no", but I want to make sure
14:01:06 <atuljangra> flo-retina: okay :)
14:01:11 <nhnt11> aleth: Please don't bother looking at the new patch.
14:01:21 <atuljangra> mconley: no, it is just sending stanza to the receiver.
14:01:37 <atuljangra> at line #71
14:02:06 <mconley> atuljangra: ah, I see - and that callback should only be fired when all of the chunk pumping and sending is done?
14:02:41 <atuljangra> you mean this.onDataReceived ?
14:03:14 <mconley> atuljangra: I guess my question is - when sendStanzaCallback is done, is that a signal that onIBBInitiateReceive has finished its job?
14:03:20 <mconley> s/done/called
14:03:36 <flo-retina> atuljangra: on the line "                data.reject();", where is the 'data' variable coming from?
14:03:42 <mconley> (my questions may seem dumb - just doing soundings so I understand what's happening)
14:03:48 <instantbot> nhnt11@gmail.com cancelled review?(aleth@instantbird.o rg) for attachment 2557 on bug 2015.
14:03:49 <instantbot> nhnt11@gmail.com requested review from aleth@instantbird.o rg for attachment 2558 on bug 2015.
14:03:52 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
14:04:10 <atuljangra> This function is responsible for sending the initial chunk, all other chunks will be sent using this.onDataReceived recursively(which is defined afterwards).
14:04:28 <atuljangra> flo-retina: It was used for debugging. I
14:04:33 <atuljangra> 'll remove it
14:04:51 <flo-retina> don't be surprised if "ATUL : error reading " never appears in your debug logs ;)
14:05:10 <atuljangra> mconley: yes, when sendStanzaCallback finished, then onIBBInitiateReceive has done it's job
14:05:36 <atuljangra> flo-retina: hehe yes. earlier it was appearing then I removed the defered data. so now, it's just hanging in there.
14:08:24 <aleth> nhnt11: "03:59:55 PM * nhnt11 forgot to address the register textbox again" I think this still applies?
14:08:26 <atuljangra> mconley: So basically, I want to store the Os.file.open instance for a while so that I can read from the same file again. Or somehow file.read #32 can be done outside the open call.
14:08:58 <mconley> k, thinking
14:09:07 <atuljangra> both are similar in implementation. main idea it to store the instance.
14:09:33 <nhnt11> aleth: What? The latest patch fixes that!
14:09:57 <aleth> nhnt11: What do you use imTextboxUtils.jsm for?
14:10:28 * nhnt11 cries
14:10:32 <atuljangra> flo-retina: From performance point of view, we do not want to "yield" right?
14:10:33 <nhnt11> I seem terribly distracted today.
14:10:39 <nhnt11> aleth: I'm really sorry about this.
14:11:33 <flo-retina> atuljangra: I'm not aware of performance concerns with yield. The reason why I prefer avoiding it is that debugging of generators is painful.
14:11:52 <nhnt11> aleth: Should I move this.contacts, contactsById, etc to their own fields instead of initializing them in the constructor?
14:12:08 <atuljangra> flo-retina: that too. So we can just keep yield aside on the shelf.
14:12:13 <flo-retina> if its usage is self-containted, that may be OK though :)
14:12:24 <aleth> nhnt11: I don't think it matters as they will move to the service anyway
14:12:34 <nhnt11> Right.
14:12:44 <atuljangra> okay. I think mconley will come out with some way to do our task :)
14:13:43 <flo-retina> I'm still not really sure of which question you asked him exactly. :-S
14:14:32 <atuljangra> flo-retina:  :( :(
14:18:02 <atuljangra> flo-retina: see http://pastebin.instantbird.com/241205. All the file.close() file.read() etc calls can now be done inside the function at #30(here file is not undefined). I need a way to do it outside also, so that the file can be used again and again.
14:18:38 <atuljangra> The function I pasted works completely fine, because I'm doing file i/o in the function at #30.
14:19:04 <atuljangra> but that means opening the file again and again.
14:19:06 <flo-retina> so what does "(here file is not undefined)" mean?
14:19:23 <flo-retina> ah, "not undefined" !
14:19:34 <atuljangra> hm
14:20:11 * atuljangra hopes that makes sense.
14:21:30 <mconley> atuljangra: so
14:21:41 <mconley> atuljangra: again, I'm only minutely privy to what you're trying to do
14:21:42 <mconley> and how it all works
14:21:48 <atuljangra> mconley: yes.
14:22:05 <mconley> but assuming the goal is "read a file by chunks, send each chunk, wait for response, send next chunk - repeat until no chunks"
14:22:09 <mconley> this is how I might do it:
14:22:10 <mconley> http://pastebin.instantbird.com/241206
14:22:14 <clokep_> mconley: Yes, that's the goal.
14:22:32 <mconley> I absolutely have not tested this code
14:22:34 <mconley> the syntax might be wrong
14:22:40 <mconley> and feel free to nix the arrow functions if they're not kosher for IB
14:22:41 <flo-retina> atuljangra: would this work http://pastebin.instantbird.com/241209 ?
14:22:58 <mconley> and I'm pretty sure I'm missing a closing brace at the end now
14:23:03 <mconley> but the idea is, I think, sound.
14:23:26 <clokep_> Does anyone else find the arrow function entirely unreadable? :(
14:23:34 <flo-retina> mconley's pastebin with colors: http://pastebin.instantbird.com/241210
14:23:36 <mconley> clokep_: I've gotten used to it
14:23:46 <aleth> clokep_: Not if it saves .bind(this) all over the place ;)
14:24:30 <clokep_> aleth: My issue is that I come across (some, parameters), before realizing it's a function call and have no context for WTF those variables are doing there. :(
14:25:46 <flo-retina> ah, I hadn't noticed you already had a this.file in there :-S
14:26:10 <flo-retina> http://pastebin.instantbird.com/241213 may be less confusing
14:26:41 <atuljangra> flo-retina: that didn't work well :( Seeing.
14:26:48 <aleth> clokep_: Yes, I still double-take at that too :-/
14:27:25 <flo-retina> "that didn't work well" doesn't mean much to me. What's "that"? and what's "didn't work well"?
14:27:43 <atuljangra> mconley: so basically it spawns a task which does the reading and sending part. I'm confused about read chunk though, what is that function? :s
14:27:49 <atuljangra> flo-retina: Disregard that :)
14:27:59 <nhnt11> Should I split this line into two? http://pastebin.instantbird.com/241216
14:28:29 <flo-retina> nhnt11: yes
14:28:36 <mconley> atuljangra: that's a helper function I thought up
14:28:42 <mconley> atuljangra: didnt' implement it in the pastebin
14:28:50 <mconley> but what it should to is:
14:29:29 <mconley> atuljangra: aw, you know what - that doesn't need to return a promise, since all of that is synchronous string stuff anyway
14:29:37 <mconley> so forget the yield
14:29:39 <mconley> should be
14:29:48 <mconley> whiel (chunk = this.readChunk(file)) {
14:30:09 <mconley> unless - oh man, this is better
14:30:17 <mconley> like, this is the *perfect* use case for a generator function
14:30:18 <atuljangra> cool and readChunk basically read a chunk from the file and returns the array?
14:30:45 <nhnt11> flo-retina: I'll split it after the acc.connected &&. is that okay?
14:32:21 <flo-retina> yes
14:32:28 <flo-retina> may not be enough to stay < 80 chars
14:32:30 <flo-retina> but oh well
14:32:34 <mconley> atuljangra: so, I spoke too soon - we do need yield, since file.read returns a promise, so I was right the first time
14:32:37 <mconley> lemme write something up
14:32:39 <mconley> and then I gotta do other things
14:32:44 <mconley> but give me 2 min here
14:33:00 <atuljangra> mconley: Oh okay :)
14:33:07 <atuljangra> mconley: Sure
14:33:42 <nhnt11> flo-retina: It's enough.
14:34:04 <nhnt11> The whole thing is about 90 chars, I think.
14:34:47 <flo-retina> ok
14:38:34 <mconley> atuljangra: something like this: http://pastebin.instantbird.com/241229
14:38:34 <-- skeledrew has quit (Connection reset by peer)
14:38:38 <mconley> atuljangra: that's how I'd approach it anyhow
14:38:44 --> skeledrew has joined #instantbird
14:39:28 <instantbot> nhnt11@gmail.com cancelled review?(aleth@instantbird.o rg) for attachment 2558 on bug 2015.
14:39:29 <instantbot> nhnt11@gmail.com requested review from aleth@instantbird.o rg for attachment 2559 on bug 2015.
14:39:31 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
14:40:53 <atuljangra> mconley: okay thanks :) Trying that.
14:40:54 <-- skeledrew has quit (Connection reset by peer)
14:41:45 --> skeledrew has joined #instantbird
14:41:51 <mconley> atuljangra: let me know if you run into insurmountable difficulty, though I may be in and out
14:42:20 <clokep_> Tasks resolve by throwing? :-S That's gross.
14:43:48 <atuljangra> mconley: No problem. I'll ping you.
14:43:50 <atuljangra> clokep_: :S
14:44:35 <mconley> clokep_: yeah
14:44:37 <mconley> clokep_: yeah it is
14:47:17 <instantbot> aleth@instantbird.org granted review for attachment 2559 on bug 2015.
14:47:20 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
14:47:21 <aleth> That's some abuse of notation...
14:47:51 <nhnt11> aleth: Thanks! Sorry again for all the bad patches. :(
14:49:43 <aleth> nhnt11: np... Btw I think flo also had some issues which he hasn't attached to the bug yet
14:57:46 <aleth> atuljangra: In case you didn't know, arrow notation (landed in moz22) won't work for you as we are still on moz21
14:58:27 <atuljangra> aleth: oh okay, so I should be using bind(this) instead.
14:58:46 <clokep_> Yes.
14:58:47 <aleth> Yes (at least until the next upgrade happens ;) )
14:59:00 <atuljangra> Cool :)
15:04:53 * clokep_ hopes to do that upgrade soon... :-/
15:30:05 <instantbot> clokep@gmail.com requested review from florian@instantbird .org for attachment 2560 on bug 1587.
15:30:08 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=1587 min, --, 1.5, clokep, REOP, Re-sync build scripts with comm-central
15:31:56 <instantbot> clokep@gmail.com requested review from florian@instantbird .org for attachment 2561 on bug 1587.
15:33:28 <-- skeledrew has quit (Quit: Instantbird 1.4 -- http://www.instantbird.com)
15:33:37 <clokep_> Once those two are checked in I think I can start on the Moz 22 upgrade.
15:34:14 <atuljangra> yay :)
15:35:10 * flo-retina just heard in a talkilla call that Instantbird logs everything but display nothing; it just stores things in kinda strange files.
15:36:33 <aleth> That strange JSON...
15:37:11 <aleth> I guess "Show logs" isn't that discoverable :(
15:37:35 <clokep_> flo-retina: I hope you corrected them. ;)
15:37:41 <clokep_> And we certainly display messages. :)
15:37:55 <flo-retina> clokep_: not yet.
15:38:04 <flo-retina> clokep_: that was meant in a positive way!
15:38:12 <aleth> flo-retina: positive?!
15:38:38 <clokep_> It /is/ kind of strange files, I have to give them that. ;)
15:41:25 --> skeledrew has joined #instantbird
15:44:36 <atuljangra> flo-retina: Tried the method that you suggested. http://pastebin.instantbird.com/241266
15:47:40 <aleth> atuljangra: Do you understand why it fails?
15:47:53 <aleth> Have you tried what mcon ley suggested?
15:48:09 <atuljangra> aleth: trying mike's suggestion now.
15:48:28 <atuljangra> Somehow the promise is not resolved when we want to use it.
15:48:45 <aleth> gtg
15:48:55 <atuljangra> aleth: okay.
15:49:04 <-- aleth has quit (Quit: Ciao)
15:49:05 * atuljangra tries mike suggestion now.
15:56:23 <flo-retina> aleth: yes, positive
15:57:05 <flo-retina> as an example of how Agile software development can focus on what's really needed (like storing the data first), and then do the parts that are useful but not required (like "displaying logs") 'someday'.
15:58:46 <flo-retina> atuljangra: what's http://pastebin.instantbird.com/241266 showing?
15:58:54 <flo-retina> if you tried you have real code, right?
16:01:46 <atuljangra> flo-retina: http://pastebin.instantbird.com/241279
16:01:48 --> Optimizer has joined #instantbird
16:02:02 <atuljangra> that promise seems to be unresolved.
16:03:39 <-- gerard-majax_ has quit (Quit: Ex-Chat)
16:03:41 <flo-retina> it's possible the promise is resolved only after the success callback has finished running :-S
16:04:47 --> gerard-majax_ has joined #instantbird
16:05:57 <atuljangra> flo-retina: yes, promise resolves to what the success call back returns. https://developer.mozilla.org/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise#Examples
16:06:35 <flo-retina> isn't that the returned promise though?
16:07:06 <flo-retina> why do you expect this.OSfile.leafName to exist?
16:07:21 <atuljangra> oh yes sorry.
16:07:52 <atuljangra> I basically think that the file should be resolved, so that I can call file.read on it.
16:08:09 <atuljangra> But when I print the file name or file it comes undefined
16:08:11 <flo-retina> would this work: http://pastebin.instantbird.com/241280 ?
16:08:38 <atuljangra> I guess so. Trying.
16:08:44 * atuljangra have tried it before though.
16:16:22 <flo-retina> so does it work?
16:16:50 <atuljangra> not as of now.
16:16:59 <atuljangra> trying. will pastebin it in 5 misn
16:20:41 <-- flo-retina has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
16:39:10 --> Mook_as has joined #instantbird
16:51:15 --> flo-retina has joined #instantbird
16:51:15 * ChanServ sets mode +qo flo-retina flo-retina 
17:02:07 <atuljangra> flo-retina: http://pastebin.instantbird.com/241302 Still undefined.
17:17:27 <clokep_> atuljangra: Can you *please* indent things? It's really hard to read someone else's code (especially when dealing with promises) if it's not done
17:19:34 <atuljangra> clokep_: I thought that it's indented :( I indented it in Komodo before pasting it.
17:20:59 <clokep_> atuljangra: Lines 76 - 87.
17:21:40 <atuljangra> I'm really sorry. Will take care from now onwards.
17:21:49 <-- novabyte has quit (Quit: bye bye)
17:21:53 <clokep_> I do have a beautifier script for Komodo btw.
17:22:04 <clokep_> So where is it null?
17:22:22 <-- mpmc has quit (Connection reset by peer)
17:22:39 <atuljangra> line 4
17:23:03 <atuljangra> and it's not going into the read function after that. I mean nothing is getting printed.
17:26:08 <clokep_> Where's the actual entry point of this whole thing? :-/
17:26:24 <clokep_> Have you tried a simpler st of code that just dumps to the error console btw?
17:26:33 <atuljangra> line 65
17:26:35 * clokep_ wonders if Mook_as knows if he can access the OS.File stuff from Komodo...
17:27:05 <Mook_as> hmm, komodo's built-in formatter gives http://pastebin.instantbird.com/?diff=241324 (that's the jsbeautifier.org one I think); I'd format it as http://pastebin.instantbird.com/?diff=241325 at least
17:27:32 <clokep_> That's only in the IDE, right? :)
17:27:55 <Mook_as> clokep_: https://developer.mozilla.org/en-US/docs/JavaScript_OS.File/OS.File_for_the_main_thread should work from the JS shell (Komodo Extension Developer extension)
17:28:16 <Mook_as> and yes, the built-in formatting is IDE-only. that's what betas are for ;)
17:28:47 <Mook_as> oh, the OS.File was from me testing in 8.5b1 of course
17:29:28 <atuljangra> clokep_: I didn't. Did you find anything in the pastebin code?
17:30:17 <Mook_as> got a 5-second description of the problem? maybe I can help
17:31:15 <clokep_> Mook_as: atuljangra is trying to read a file in chunks and send it over the network (waiting for an ack in between), he's trying to use OS.File and cache the open file.
17:31:23 <Mook_as> okay.
17:31:33 <atuljangra> hmm. :)
17:31:54 <Mook_as> so this is in the middle of some sort of a (file-to-send) specific object instance?
17:32:37 <atuljangra> yes, the function onIBBInitiateReceive is called when we get a response to the file transfer initiation request.
17:32:52 <Mook_as> okay, so that's the "ready to send" signal?
17:33:00 <Mook_as> (well, ready to receive, but close enough)
17:33:00 <flo-retina> atuljangra: is it still http://pastebin.instantbird.com/241302 that you are debugging?
17:33:35 <atuljangra> Mook_as: Yes. and it has received a ready to receive.
17:34:01 <atuljangra> flo-retina: I was, but currently I'm implementing Mike suggestion, using Tasks.spawn(0
17:34:21 <flo-retina> Tasks stuff seems more complicated
17:35:04 <atuljangra> yes, but I was not able to make this work, thus had no option anyhow. Want to make some real progress today.
17:35:32 <atuljangra> (though it's 11 pm here now, and I did almost nothing worth landing :s )
17:36:06 <flo-retina> so on http://pastebin.instantbird.com/241302, start by removing the junk
17:36:07 <flo-retina> what's the encodedData stuff doing in onIBBInitiateReceive?
17:37:06 <atuljangra> that's junk. It has no role currently. will remove it if that thing works. Just kept it there if I resolve to do the earlier thing.
17:37:35 <clokep_> It would be useful to strip everything out except the problem and start from there.
17:37:40 <clokep_> That way you know that other code isn't interferring.
17:37:50 <flo-retina> and then, what's the problem again?
17:37:58 <atuljangra> Yes. Okay.
17:38:15 <flo-retina> what's the line "    this.conv.sendMsg("In sendchunk trying to read " + this.openFilePromise.leafName);" doing?
17:38:24 <flo-retina> do OS.File instances have a leafName property?
17:38:57 <atuljangra> flo-retina: OS.File.read resolves to a file, which has a leafNameProperty.
17:39:06 <flo-retina> why is encodedData a promise?
17:39:28 <flo-retina> atuljangra: "OS.File.read resolves to a file, which has a leafNameProperty." where is this documented?
17:39:54 <-- nhnt11 has quit (Quit: Instantbird 1.5a1pre -- http://www.instantbird.com)
17:40:02 --> nhnt11 has joined #instantbird
17:40:04 <atuljangra> flo-retina: https://developer.mozilla.org/en-US/docs/JavaScript_OS.File/OS.File_for_the_main_thread#OS.File.open
17:40:29 <flo-retina> I meant "a file, which has a leafNameProperty"
17:41:05 <atuljangra> I don;t understand. Every file has a leafName. :s
17:41:17 <clokep_> Why do you say that?
17:41:24 <flo-retina> are you confusing OS.File and nsIFile?
17:42:39 <atuljangra> oh yes. I'm sorry. But shouldn't it give some error about not having a leafname?
17:43:18 <clokep_> Didn't Mic tell you yesterday how errors aren't really thrown inside of promises?
17:43:32 <flo-retina> atuljangra: it should be undefined
17:43:56 <atuljangra> Okay.
17:44:14 <atuljangra> So does this being undefined hinders the further flow of program?
17:44:43 <flo-retina> atuljangra: it definitely hinders my ability to read that code ;).
17:44:53 <atuljangra> hehe :P sorry.
17:44:53 <flo-retina> and why is encodedData a promise?
17:46:20 <atuljangra> Earlier when I was working on this one, Mic suggested me to make it a promise. But I guess in this part we can do without it being a promise. Just that, all the iq sending things would need to be inside the function.
17:46:55 <atuljangra> Making it a promise and then resolving it inside gives us the ability to dump the iq sending code outside.
17:47:47 <flo-retina> how confident are you in promises right now? ;)
17:47:59 <-- GeekShadow has quit (Ping timeout)
17:48:01 --> GeekShadow has joined #instantbird
17:48:21 <flo-retina> let's get the code as simple as it can be, then check it in, and see later if complicating stuff adds value.
17:48:36 <atuljangra> Hehe but that part of code seems to work fine, as I tested it with previous code. I'll remove it.
17:48:39 <atuljangra> flo-retina: Ok
17:49:35 <atuljangra> flo-retina: line7 is not getting printed. What can be the possible reason?
17:49:49 <flo-retina> which new pastebin are you talking about now?
17:50:44 <atuljangra> Umm, the sendMsg just inside the readSuccess function in sendChunk
17:51:00 <atuljangra> http://pastebin.instantbird.com/241302 the old one only
17:51:11 <flo-retina> I don't want to look at this mess again.
17:51:25 <flo-retina> If we asked you to clean it up, it's so that we can *read* the code :-P.
17:51:36 <atuljangra> flo-retina: Okay. Sorry.
17:52:23 <atuljangra> Actually I am currently in my lab, and it closes at 11:30 and it's 11:21. So can I get 30 mins here so that I can go to my hostel and have some dinner. I'll come back asap?
17:53:02 * flo-retina wonders what this lab is about.
17:53:12 <Mook_as> so tempted to rewrite it to make sense... (but not on company time, though)
17:53:31 <flo-retina> atuljangra: but sure, take a break and have some food. It usually helps with debugging when you are head down in something to stop for a few minutes
17:53:54 <atuljangra> this is a place alloted to all cs students with machines and air conditioning.
17:54:17 <atuljangra> Mook_as: I don't understand the "it" :P
17:54:31 <atuljangra> flo-retina: Thanks. I'll be back.
17:55:00 <-- atuljangra has quit (Quit: (frustrated ))
18:00:32 <flo-retina> Mook_as: I've been tempted too...
18:17:13 --> mpmc has joined #instantbird
18:21:45 * clokep_ wonders what time qheaden is coming back. :)
18:22:35 <nhnt11> contractID is only required for services rihgt?
18:22:53 <flo-retina> clokep_: you mean when does he take his breakfast today? :-)
18:23:06 <flo-retina> nhnt11: probably not. Can you be more specific with this question?
18:23:38 <clokep_> flo-retina: Nah he contact me this morning that he had some things to do and would be on this afternoon.
18:24:01 <nhnt11> Well, I'm getting back to work on the PossibleConversation interface, and I'm now getting an error that seems to happen at getService().
18:24:31 <nhnt11> I'll do a bit more digging around before filling you in more, I think I may have made a silly mistake somewhere.
18:25:00 <nhnt11> I was just researching what exactly is required in the prototype in order to properly implement an interface.
18:25:30 <nhnt11> (Stuff like QueryInterface, classDescription, classID, contractID)
18:26:07 <flo-retina> that kind of stuff isn't easy to guess right the first time, so you may want to pastebin both the error and the code ;)
18:26:28 <clokep_> (It's not easy the second or third or fourth...maybe the fifth is easy. :))
18:26:42 <flo-retina> clokep_: not really true.
18:26:49 <flo-retina> clokep_: the second time you copy/paste :-P
18:26:53 <nhnt11> Heh.. okay. I'll pastebin.
18:27:08 <nhnt11> flo-retina: I'm already copy/pasting stuff, but I'd rather know what I'm doing 
18:27:12 <nhnt11> (Even if I forget later :P )
18:27:42 <flo-retina> nhnt11: I meant "the second time you copy/paste code that you more or less understand"
18:28:00 <nhnt11> Okay :)
18:30:15 <nhnt11> http://pastebin.instantbird.com/241356
18:32:01 <flo-retina> nhnt11: I think the last 6 lines at the end of the pastebin aren't what you wanted to show
18:32:41 <nhnt11> The thing is, the service was working fine until I added the PossibleConversation stuff
18:33:08 <nhnt11> I couldn't understand why that would be. Anyway, I'm looking through my changes again.
18:33:50 <flo-retina> you haven't pastebined the service implementation ;)
18:33:56 <nhnt11> (That's why I pastebinned the PossibleConversation stuff)
18:34:08 <nhnt11> Yeah okay. Pastebinning
18:34:56 <nhnt11> http://pastebin.instantbird.com/241357
18:35:52 <flo-retina> check that there's no syntax error when parsing the file
18:35:59 <flo-retina> do you have a debug build?
18:36:03 <nhnt11> No :(
18:36:18 <flo-retina> I can never remember if xpcshell is available in non debug builds :-S
18:37:31 <nhnt11> I think you may be right about a syntax error. I added a Cu.reportError when it observes prpl-init, and it's not getting reported.
18:37:48 <nhnt11> So the service isn't started. Let me go through the idl file.
18:38:09 <flo-retina> if there's a syntax error, it's in the .js file
18:38:28 <nhnt11> Right because an idl error would break the build
18:38:29 <nhnt11> :/
18:39:32 <clokep_> nhnt11: Can you pastebin the entire file?
18:39:39 <nhnt11> Will do.
18:39:44 <nhnt11> In a moment.
18:44:32 <nhnt11> http://pastebin.instantbird.com/241379
18:46:59 <nhnt11> Er, the MUC support stuff is very WIP.
18:47:22 <nhnt11> Mostly I was playing around with some things..
18:47:23 <clokep_> The MUC support stuff gets a very much r- from me. ;)
18:47:48 * clokep_ doesn't see any syntax errors. :(
18:53:18 <flo-retina> there's no syntax error in that file
18:54:52 <nhnt11> Hmm
18:56:47 <nhnt11> Oh!
18:56:49 <nhnt11> Fixed it
18:57:28 <nhnt11> I seem to have removed |const NSGetFactory = XPCOMUtils.generateNSGetFactory([ConvStatsService]);| without realizing.
18:58:01 <flo-retina> that seems like a problem indeed ;)
18:58:10 <nhnt11> Finally. Time to start on LIST.
18:58:59 <nhnt11> Well, as soon as I have contacts working properly with PossibleConversations.
19:01:14 <-- mconley has quit (Connection reset by peer)
19:01:15 --> mconley_ has joined #instantbird
19:03:07 <nhnt11> Are all of these required? getHelperForLanguage, implementationLanguage, flags, getInterfaces
19:03:34 <nhnt11> I got an error because I hadn't implemented getHelperForLanguage. I'm thinking of just copy pasting whatever is in Contact.prototype in imContacts.js.
19:06:19 <flo-retina> nhnt11: you can remove all of them
19:06:35 <flo-retina> but you need to remove Ci.nsIClassInfo from the list in QueryInterface
19:06:43 <nhnt11> Ah okay.
19:07:40 * nhnt11 needs to merge all the changes to newtab.xml into his stats service branch :(
19:09:11 <clokep_> Does anyone have anything for the TB meeting?
19:09:13 * clokep_ is in it.
19:09:49 <flo-retina> who's in there?
19:10:07 <clokep_> flo-retina: Standard8, mconle y, aceman, a few others maybe.
19:13:55 <-- chrisccoulson has quit (Ping timeout)
19:15:19 --> chrisccoulson has joined #instantbird
19:15:40 * qheaden_away is now known as qheaden
19:15:49 <qheaden> clokep_: Okay, I'm finally here.
19:15:55 <-- chrisccoulson has quit (Client exited)
19:16:43 * clokep_ pokes qheaden.
19:16:56 <clokep_> I just put some info about your GSoC project on the TB call. :P
19:16:57 <clokep_> For fun.
19:18:25 --> chrisccoulson has joined #instantbird
19:19:05 <qheaden> clokep_: Cool. What was the reaction to the project?
19:19:27 <clokep_> We haven't gotten to it yet. :P
19:20:58 --> Mic has joined #instantbird
19:20:58 * ChanServ sets mode +h Mic 
19:21:03 <qheaden> Ahh okay. Is it a public call or private?
19:21:15 <Mic> Hello
19:21:46 <qheaden> Hi Mic.
19:21:53 <flo-retina> qheaden: punli
19:21:56 <flo-retina> *public
19:22:12 <qheaden> flo-retina: Is it possible to be a spectator without participating?
19:22:28 <clokep_> qheaden: https://wiki.mozilla.org/Thunderbird/StatusMeetings Yes, I don't have a Mic here. I just listen and type on the etherpad.
19:22:32 <clokep_> It's mostly really boring...
19:22:35 * clokep_ does other things while on it.
19:22:49 <qheaden> :P
19:22:58 <Mic> Yeah, thanks for pinging me :P
19:29:37 --> atuljangra has joined #instantbird
19:30:04 <atuljangra> DIdn't find the food around, so had to cook and eat :-/
19:33:17 <qheaden> clokep_: So... about those options.
19:33:35 <clokep_> qheaden: Go on...
19:35:25 * clokep_ has a feeling flo-retina has opinions about this too. ;)
19:40:52 <clokep_> qheaden: FYI I'm planning to leave work in ~1 hour and then will be offline for most of the night?
19:41:12 <clokep_> (Well until like 8 or 9, most likely. :))
19:43:07 <qheaden> clokep_: Oh okay.
19:44:12 * clokep_ doesn't want to block you. :-/
19:45:22 <qheaden> clokep_: No, your fine.
19:45:37 <qheaden> clokep_: Which options do I need to start working on?
19:46:02 <qheaden> I've already worked on blocking conference invitations. File transfer isn't implemented yet.
19:48:38 <clokep_> File transfer sholdn't be touched yet. :)
19:49:37 <clokep_> qheaden: So the pager port is done already?
19:50:14 <qheaden> clokep_: Yes.
19:51:46 <Mic> nhnt11: what's the thing with undoing the statusTypeIcon changes in status.css and conversation.css in the latest patch?
19:51:51 <clokep_> qheaden: So what is this "ignore conference invitations" did Yahoo have their own preference for that?
19:51:52 <Mic> That's just a mistake, isn't it?
19:51:58 <clokep_> qheaden: Are we checking both that and the global preference?
19:52:32 <nhnt11> Uh. Checking. I thought I removed something that was redundant after the status.css patch by you.
19:52:47 <qheaden> clokep_: libpurple's Yahoo did have a preference for that, but my code isn't checking the global setting. I have to add that.
19:53:35 * nhnt11 doesn't get why he's messing up the newtab patch so much today.
19:53:57 <clokep_> qheaden: OK, so we should check both (i.e. only accept invitations if both allow it).
19:53:59 <clokep_> Start with that.
19:54:13 <qheaden> clokep_: Okay.
19:54:16 <clokep_> Then probably chat room locale / encoding.
19:54:21 <clokep_> (Although chat room locale might be obsolete?)
19:54:28 <clokep_> And I thought everything was UTF-8. :(
19:54:43 <Mic> nhnt11: maybe I misread the interdiff.
19:54:44 <qheaden> clokep_: I believe it is.
19:54:51 <Mic> I easily get confused by those.
19:55:10 <nhnt11> Just a minute. I'm making sure I didn't do something stupid.
19:55:55 <Mic> I think I confused that.
19:56:42 <nhnt11> Mic: Yeah I think it's fine.
19:56:43 <Mic> There aren't even changes to neither status.css nor conversation.css in the latest patch. I'm sorry.
19:56:53 <Mic> :)
19:57:26 <nhnt11> No need to apologize! :)
19:57:50 <qheaden> clokep_: FWIW, this is the libpurple option: http://lxr.instantbird.org/instantbird/source/purple/libpurple/protocols/yahoo/libyahoo.c#331
19:58:03 <nhnt11> I just removed the stuff that was taken care of in bug 2031.
19:58:07 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2031 min, --, 1.5, nhnt11, RESO FIXED, Move rules for 16px status icons from conversation.css to status.css
20:00:28 <nhnt11> Btw, I've been a tad lenient with the 80 char limit in newtab.xml since you said it was ok. Let me know if I need to be a bit stricter.
20:01:39 * atuljangra loves hi laptop, the machines in the lab have so less resolution. :D
20:02:24 <clokep_> qheaden: Figure out how the chatroom locale and encodings are used and see if we need to implement those.
20:02:30 <clokep_> After that I'd like you to do Yahoo JAPAN.
20:02:46 <qheaden> Okay.
20:04:10 <clokep_> Does that seem like a plan? :)
20:04:17 <Mic> nhnt11: yes, we normally strictly obey the line length limit.
20:04:35 <clokep_> qheaden: Also take a look at that proxy one and figure out what it's doing. :-S
20:04:47 <qheaden> clokep_: Sounds like a plan to me.
20:05:00 <clokep_> "I love it when a plan comes together."
20:05:01 <Mic> newtab.xml was a bit of an exception because Javascript code in bindings has this useless default indentation of like 15 characters already...
20:05:05 <nhnt11> Mic: I've only exceeded it in the XBL stuff since you said it's okay.
20:05:09 * clokep_ thinks that's probably before most people in here's time...
20:06:01 <qheaden> clokep_: Also, where is the global option to ignore chatroom/conference invites? Is it exposed to the UI?
20:07:54 <clokep_> qheaden: No, I pointed you to the IRC code that accesses it in my comment though.
20:08:06 <qheaden> Oh okay.
20:09:48 <qheaden> clokep_: So it looks like the locale setting is used during the login stage, and can be either "jp" or "us": http://lxr.instantbird.org/instantbird/source/purple/libpurple/protocols/yahoo/libymsg.c#1747
20:10:47 <qheaden> Well, those are the default values anyway. Not sure if they are anything else.
20:11:32 <clokep_> qheaden: OK, do we send that value right now?
20:11:40 <clokep_> If so...just implement it the same way they do. ;)
20:11:47 <qheaden> I don't think we do. I'll implement it.
20:11:53 <clokep_> If we don't...it's not necessary.
20:12:00 <clokep_> And we should just not care abou tit, most likely.
20:12:07 * clokep_ has a feeling it has to do with the stuff Yahoo disabled.
20:12:21 <qheaden> clokep_: Yeah, I think that deals with their old chat service which is now gone.
20:12:27 <qheaden> So you want me to leave that?
20:12:55 <clokep_> I think just leave it out, yes.
20:13:13 <qheaden> ok
20:17:28 <Mic> nhnt11: the indentation in isCommandEnabled still isn't correct.
20:17:38 <Mic> Beside that it's r+, I'd say :)
20:17:57 <Mic> Let's see what flo-retina has to say about it.
20:18:08 --> Mnyromyr has joined #instantbird
20:18:37 <nhnt11> Mic: The if(cmd == "cmd_newtab") return true; didn't get removed. *facepalm*
20:18:57 <nhnt11> (In addition to the indenting)
20:19:10 <nhnt11> How would you say I indented that?
20:23:39 <Mic> I think I'd do it like this: http://pastebin.instantbird.com/241444
20:24:14 <nhnt11> Er, isn't that what I've done?
20:24:19 <Mic> Don't upload a new patch yet, I think it's better to wait for flo's feedback first.
20:24:22 <nhnt11> Oh, wait, two spaces.
20:24:33 <nhnt11> Okay! :)
20:33:18 <atuljangra> flo-retina: ok. sender side file i/o is done as you said. I'll now try to do receiver side i/o asap. And then will write the report.
20:35:10 --> jb has joined #instantbird
20:35:35 <qheaden> clokep_: This is the only use I see of the "Encoding" option http://lxr.instantbird.org/instantbird/source/purple/libpurple/protocols/yahoo/util.c#173
20:36:09 <qheaden> Does Ib use UTF-8 by default internally?
20:36:16 <qheaden> I mean for JavaScript strings and such.
20:36:28 <clokep_> qheaden: JavaScript strings are UTF-8, yes.
20:36:34 <clokep_> You'll probably need to ask flo for more details.
20:36:57 <qheaden> Okay.
20:37:07 <clokep_> We'll probably want to implement that option.
20:37:12 <clokep_> The IRC code has some exammples.
20:38:19 <-- jb has quit (Ping timeout)
20:39:03 <-- clokep_ has quit (Quit: Instantbird 21a1pre -- http://www.instantbird.com)
20:51:00 * Mook_as notes that JS strings are usually more UCS-2-ish
20:51:22 <Mook_as> well, 16 bit units, at least; it's hard to tell if it pretends enough to be UTF16.
20:51:56 * Mook_as loves that clokep_ always does the full upper case for Yahoo JAPAN
20:58:11 --> jb has joined #instantbird
20:59:26 --> EionRobb has joined #instantbird
20:59:47 <-- gerard-majax_ has quit (Ping timeout)
21:00:27 * nhnt11 is done with his merge :)
21:03:48 <qheaden> Mook_as: Okay, I'll have to look into it.
21:05:23 <-- mconley_ has quit (Connection reset by peer)
21:05:41 --> mconley has joined #instantbird
21:10:31 <flo-retina> Services.obs.addObserver(this, "*", false); :-S
21:15:08 <nhnt11> flo-retina: I don't know how else to do that .I think it was a suggestion to do that in order to listen to all contact-* notifications..
21:15:10 <qheaden> What in the world is that for?
21:15:50 <flo-retina> qheaden: it's to get one's code pointlessly called millions of times ;)
21:16:06 <qheaden> Ha ha.
21:16:33 * qheaden didn't know addObserver accepted wildcards.
21:16:41 <flo-retina> qheaden: I didn't know either!
21:16:49 <Mic> Afaik it's the only one.
21:17:00 <flo-retina> qheaden: I even checked the C++ implementation to be sure I understood what was going on
21:17:01 <instantbot> c++ sucks
21:17:12 <flo-retina> and there's an ifdef around that part of the implementation ;)
21:17:16 <nhnt11> flo-retina: So I should do addObserver once for each contact- notification?
21:17:17 <flo-retina> (enabled by default though)
21:17:26 <flo-retina> nhnt11: only for the notifications you care about
21:17:26 <qheaden> flo-retina: Wow, how strange.
21:17:44 <flo-retina> qheaden: http://mxr.mozilla.org/mozilla-central/source/xpcom/ds/nsObserverService.cpp#163
21:18:28 <qheaden> flo-retina: Wow. I learned something today. :P
21:19:02 <nhnt11> I knew about it, I remember reading some documentation before GSoC :P
21:19:34 <flo-retina> nhnt11: maybe it was a trap? :)
21:25:51 <flo-retina> what's the point of multiple selection in there?
21:26:16 <flo-retina> it doesn't seem to hurt, but I can't see why anybody would want to do that from this UI
21:27:06 <nhnt11> flo-retina: I found myself wanting it, so added it.
21:27:11 <flo-retina> nhnt11: ok
21:31:05 <nhnt11> flo-retina: Does it seem like we may be able to land this tonight? i.e. nothing that would take too long for me to fix
21:31:41 * Mic wants to write about it on the Instantbird blog after it has landed :)
21:31:47 <flo-retina> nhnt11: no
21:32:00 <flo-retina> but you can start thinking about which notifications you'll want to listen to
21:32:05 <flo-retina> (instead of "*")
21:32:11 <nhnt11> flo-retina: Already working on that. Not a big deal.
21:32:27 <flo-retina> you certainly don't want to listen to all the contacts-* notifications either ;)
21:32:36 <-- mpmc has quit (Connection reset by peer)
21:33:29 <nhnt11> Hmm. You're saying we shouldn't worry about updating the status messages and icons and stuff right?
21:35:37 <flo-retina> have I said that?
21:36:05 <nhnt11> You've said it before.
21:36:09 <Mic> atuljangra: you're still making progress?
21:36:36 <nhnt11> flo-retina: Otherwise, I think we should listen for all contact-* notifications.
21:36:39 <flo-retina> nhnt11: what I meant was that we have specific notifications, and broader notifications. For example, if you observe contact-status-changed, also observing contact-signed-on is pointless.
21:36:53 <nhnt11> Oh that way
21:36:57 <nhnt11> That's fine :)
21:37:16 <flo-retina> nhnt11: so you should find the notifications you really care about
21:37:35 <-- mconley has quit (Input/output error)
21:37:54 <nhnt11> flo-retina: That would be added, removed, status-changed, display-name-changed, no-longer-dummy, preferred-buddy-changed :)
21:38:51 <nhnt11> flo-retina: Shall I make a field containing an array with the notifications we listen for? That way we can add/remove observers with a loop
21:39:55 <flo-retina> yes (for the array)
21:40:48 <flo-retina> for the list of notifications: it seems reasonable, but I haven't fully checked that nothing is redundant in there
21:42:18 <nhnt11> flo-retina: Seems right according to the idl. I missed contact-icon-changed though.
21:42:25 <flo-retina> I guess I shouldn't bother you with |availabilityDetails|
21:42:40 <flo-retina> as it doesn't seem to be actually used anywhere :-S
21:42:50 * nhnt11 doesn't know what that is.
21:43:11 <nhnt11> Hmm.
21:43:38 <flo-retina> you display tags, so you may want to also observe contact-moved
21:44:23 <nhnt11> Ah. Thanks.
21:45:43 <nhnt11> Nearly everything, then.
21:47:33 <nhnt11> The formatting here is correct, right? http://pastebin.instantbird.com/241485
21:50:09 <nhnt11> Mic, flo-retina: ^
21:51:20 <flo-retina> seems ok
22:06:57 --> clokep has joined #instantbird
22:06:58 * ChanServ sets mode +o clokep 
22:09:04 <Mic> Yes, it looks good.
22:11:36 <clokep> Mook_as: I was hoping you were going to say that you loved that Instantbird 21 quit. ;)
22:12:14 * nhnt11 noticed that and assumed it was something to do with clokep working on moz22
22:12:30 <clokep> From Mibbit? :P
22:12:41 <nhnt11> Oh :P
22:16:44 <clokep> Mook_as: I don't always include the ! at the end of Yahoo! though. :(
22:17:05 <Mook_as> and I'd just write it as yahoo.jp
22:17:15 --> FireFly_TB has joined #instantbird
22:20:27 <flo-retina> is ", " a string that needs to be localizable (when joining a list)?
22:21:41 <Mook_as> what sort of list? east asians might like full width comma
22:22:35 <flo-retina> the list of tags in nhnt11's stuff (I don't have a screenshot around)
22:24:24 <nhnt11> flo-retina, Mook_as: http://puu.sh/3yYW7.png
22:24:54 <nhnt11> That's the list of tags for acontact.
22:25:02 <-- Mnyromyr has quit (Quit: ChatZilla 0.9.86 [SeaMonkey 1.1.19/2010030105])
22:25:23 <Mook_as> hmm. probably okay for east asians in that case; half-width comma is acceptable there, I think, even for unihan tag names.
22:25:39 * Mook_as doesn't know anything about other fancy languages, like rtl...
22:25:55 <flo-retina> they'll bug us if there's an issue I guess
22:26:18 --> mconley has joined #instantbird
22:32:52 <qheaden> clokep: Do you think we should start messing with encoding options when I start work on Yahoo! JP?
22:38:21 <atuljangra> I'll take some sleep for now. It has been a long day. 
22:38:26 <atuljangra> Good night!
22:38:43 <-- atuljangra has quit (Quit: (will be back tomorrow afternoon))
22:41:35 <flo-retina> preparing review comments to publish them is tedious
22:41:46 <flo-retina> I wish we were on BMO just so that splinter would take care of it for me :-/
22:42:36 * Mook_as has just been using a fixed up version of https://github.com/mook/greasemonkey-scripts/tree/master/bugzilla/review
22:42:58 <Mook_as> (horribly buggy spliter-workalike)
22:44:22 <instantbot> florian@instantbird.org denied review for attachment 2559 on bug 2015.
22:44:25 <instantbot> Bug https://bugzilla.instantbird.org/show_bug.cgi?id=2015 enh, --, ---, nhnt11, NEW, Display buddy list in a tab.
22:45:17 * nhnt11 wonders how fast he can get a new patch out.
22:45:38 --> wnayes has joined #instantbird
22:45:50 <flo-retina> nhnt11: rushing it may not be the best plan, if it's to notice that half the comments haven't been addressed ;)
22:46:30 <nhnt11> flo-retina: Ugh, don't worry, I have no intention of repeating today's mess.
22:47:28 <nhnt11> I missed a semicolon :o
22:47:28 <flo-retina> and I'm glad that patch is finally out of my review queue, so maybe I can breathe a few minutes before having it there again? ;)
22:48:01 <flo-retina> I would really prefer the css solution though ;)
22:48:14 <nhnt11> Yes, I'm doing that.
22:49:45 <Mook_as> it's easier to get a new patch out quickly if you have pre-planned things to fix in your previous patch ;)
22:52:02 <nhnt11> I need to research how the tab icons are set right now for conversations.
22:52:42 <nhnt11> By the way, flo-retina, if your worry is retina support, won't retina images be jar'd separately, like aero?
22:53:19 <flo-retina> no
22:54:10 <-- mconley has quit (Input/output error)
22:54:19 <flo-retina> nhnt11: they are applied with a media query like this: http://mxr.mozilla.org/mozilla-central/source/browser/themes/osx/browser.css#266
22:54:36 <flo-retina> nhnt11: on Windows the aero subfolder is selected based on the OS version.
22:54:48 <nhnt11> flo-retina: Thanks
22:55:08 <nhnt11> flo-retina: I was hoping there was a way to get the DPI settings or something :(
22:55:14 <flo-retina> nhnt11: on Mac the retina or not-retina icon is selected based on the resolution of the screen where the window is displayed. If I move a window between the retina screen and my external screen, I alternate between the 2 cases.
22:55:31 <nhnt11> Hmm
22:55:35 <nhnt11> Okay
22:55:39 <nhnt11> I didn't consider that
22:56:00 <flo-retina> nhnt11: btw, if you want to really handle the retina case for the icon you are adding, that would be appreciated, but I didn't mention it in my review comment as it's a bit off topic (it would be our first retina icon ;))
22:56:18 <nhnt11> I think that's a separate bug :P
22:56:24 <flo-retina> yeah
22:56:36 <flo-retina> my comment was just about not making it more difficult than it needs to be
22:56:46 <nhnt11> Right
22:57:04 <nhnt11> OI
22:57:07 <nhnt11> Typo sorry
22:57:15 <nhnt11> I'm trying to figure out the best way to do this.
22:57:30 <nhnt11> The tag icon class is tag-icon-image
22:58:00 <nhnt11> I could add an arbitrary attribute to it and set the image from css using .tag-icon-image[attribute]
22:58:10 <nhnt11> (Because only awesometabs would have this attribute)
22:58:15 <nhnt11> Doesn't feel clean though.
22:58:20 <flo-retina> why do you even need an attribute?
22:58:39 <nhnt11> How do I make sure the image is only applied to our tab?
22:58:43 <flo-retina> hmm, is there even a problem with the tag icon?
22:58:57 <nhnt11> Sorry I meant "tab"
22:58:59 <nhnt11> Not tag.
22:59:10 <nhnt11> tab-icon-image too.
22:59:19 <flo-retina> I would say just put a specific class on the tab
22:59:34 <nhnt11> Oh yeah
22:59:43 <nhnt11> An element can have two classes
22:59:45 <nhnt11> D'oh.
23:01:04 <flo-retina> as many as you want :)
23:02:38 <-- FireFly_TB has quit (Ping timeout)
23:09:33 <nhnt11> Do we support "content" from CSS3?
23:09:43 <Mook_as> some, but not all, of it.
23:09:54 <Mook_as> mostly just the useless bits and not the useful bits :p
23:10:01 <nhnt11> I want to set the src of an image using it...
23:10:09 <nhnt11> list-style-image isn't working for some reason :/
23:10:31 <nhnt11> If I include a stylesheet in xbl, will it apply to other bindings in the document?
23:10:42 <Mook_as> I think so, yes
23:10:55 <Mook_as> and list-style-image doesn't work if the image has a src= attribute
23:12:57 <nhnt11> Oh
23:12:58 <nhnt11> Hmm
23:13:34 <nhnt11> Well if content and list-style-image don't work, I'm not sure how to do this..
23:14:20 <nhnt11> Aha
23:14:28 <nhnt11> Putting it in instantbird.css works.
23:14:47 <nhnt11> So applying a stylesheet in the newtab binding didn't apply it to the tab...
23:15:01 <nhnt11> flo-retina: It's okay to do it from instantbird.css right?
23:17:34 <flo-retina> yes
23:17:57 <flo-retina> Mook_as: adding a css file as a resource for a binding applies the style rules only to that binding.
23:18:03 <nhnt11> flo-retina: You've quoted all of those comments but said "this comment". Do you want me to rephrase just the last one or all of them?
23:18:17 <flo-retina> it's just the last one that I couldn't understand
23:18:22 <nhnt11> ok
23:19:01 <nhnt11> flo-retina: Is it okay to use the value of the constant in the comment?
23:19:35 <flo-retina> maybe, what's the proposed new comment?
23:20:10 <nhnt11> Something like "We add more elements when the user has scrolled to the last three."
23:20:53 <Mook_as> flo-retina: oh? huh. thanks :)
23:23:23 <flo-retina> nhnt11: "the user has scrolled to the last three" that's not really true, right?
23:23:39 <nhnt11> Uh, the last four*
23:23:47 <nhnt11> Oh wait
23:23:49 <nhnt11> I see what you mean.
23:25:17 <nhnt11> How about "We add more elements when the last visible element is one of the last four elements in the list"
23:25:39 <nhnt11> s/We/Try to (if that's better)
23:26:09 <-- clokep has quit (Ping timeout)
23:26:17 <Mic> Good night
23:27:10 <nhnt11> Night Mic
23:27:18 <qheaden> Goodnight MIc
23:27:28 * qheaden is torn on what to work on next.
23:27:43 <flo-retina> nhnt11: still not very clear :-/
23:28:21 <nhnt11> :(
23:30:20 <flo-retina> Does "We start adding more elements when only 3 elements remain to be displayed by scrolling." make any sense?
23:30:21 <nhnt11> flo-retina: The reason we need init is because the constructor is also called when the newtab is imported to another window, and there we don't want to init.
23:30:57 <flo-retina> maybe put this in a comment about the init method? ;)
23:31:19 <nhnt11> Um, I don't like that but I don't mind. (about the threshold comment)
23:31:34 <nhnt11> "displayed by scrolling" is the part I don't like
23:31:38 <nhnt11> Maybe it's just me?
23:31:56 <Mic> I think flo's comment is OK.
23:32:20 <nhnt11> Mic: Okay then! Guess it's just me.
23:32:42 <nhnt11> How's this for the init comment? "This is separated from the constructor because we don't want to init when being imported to another window."
23:36:09 <-- Optimizer has quit (Ping timeout)
23:36:14 <flo-retina> nhnt11: I don't like my suggested comment.
23:36:29 <flo-retina> nhnt11: I just can't find anything good to propose :(
23:36:32 <nhnt11> Heh.
23:37:17 <flo-retina> it's good (for the init comment)
23:37:33 --> Optimizer has joined #instantbird
23:37:38 <flo-retina> Good night
23:38:10 <nhnt11> Night.
23:38:31 <nhnt11> flo-retina: I'm done with everything else, by the way!
23:39:58 <-- Mic has quit (Quit: Instantbird -- http://www.instantbird.com)
23:40:12 <-- jb has quit (Ping timeout)
23:54:39 --> mconley has joined #instantbird
23:59:06 <-- nhnt11 has quit (Ping timeout)
23:59:45 --> nhnt11 has joined #instantbird