#instantbird log on 09 16 2015

All times are UTC.

00:12:08 --> Alex1 has joined #instantbird
00:28:40 <-- aleth has quit (Ping timeout: 121 seconds)
01:19:38 <-- satdav has quit (Quit: Connection closed for inactivity)
03:03:35 <-- clokep has quit (Ping timeout: 121 seconds)
03:04:10 <instant-buildbot> build #1522 of linux-nightly-default is complete: Failure [4failed compile]  Build details are at http://buildbot.instantbird.org/builders/linux-nightly-default/builds/1522
03:54:13 <instant-buildbot> build #2904 of macosx-nightly-default is complete: Success [3build successful]  Build details are at http://buildbot.instantbird.org/builders/macosx-nightly-default/builds/2904
03:58:25 --> Mook has joined #instantbird
04:23:24 <-- Mook has quit (Client exited)
04:37:49 --> Mook has joined #instantbird
04:41:06 <Mook> Hmm.  On connect, the XMPP code fetches the roster.  This seems to trigger downloading the vcard if we're subscribed to their presence.
04:41:37 <Mook> ... this server seems to be kicking me off since that means I just requested the vCard of >1000 people.
04:42:41 --> Bollebib has joined #instantbird
04:45:56 <Mook> On the upside: stubbing out _requestVCard() fixes the problem, so that _was_ the issue.
04:52:58 <-- Suiseiseki has quit (Ping timeout: 121 seconds)
05:05:38 <Mook> And since I'm here, I don't think that code handles this vCard photo correctly: <PHOTO xmlns="vcard-temp">https://www.hipchat.com/img/silhouette_125.png</PHOTO> (I should probably file a bug on that one?)
05:08:26 --> Suiseiseki has joined #instantbird
05:25:50 --> afiksof has joined #instantbird
05:37:52 <instant-buildbot> build #432 of linux64-nightly-default is complete: Failure [4failed compile]  Build details are at http://buildbot.instantbird.org/builders/linux64-nightly-default/builds/432
05:45:43 --> afiksof1 has joined #instantbird
05:48:06 <-- afiksof has quit (Ping timeout: 121 seconds)
05:48:06 * afiksof1 is now known as afiksof 
06:01:35 <-- Mook has quit (Client exited)
06:56:52 <-- afiksof has quit (Ping timeout: 121 seconds)
07:07:36 --> afiksof has joined #instantbird
07:08:20 --> mpmc has joined #instantbird
07:16:35 <-- afiksof has quit (Connection closed)
07:18:05 --> afiksof has joined #instantbird
07:42:29 <-- afiksof has quit (Ping timeout: 121 seconds)
07:47:30 --> gerard-majax has joined #instantbird
08:00:45 --> aleth has joined #instantbird
08:00:45 * ChanServ sets mode +o aleth 
08:01:40 <-- gerard-majax has quit (Quit: Leaving)
08:01:45 --> gerard-majax has joined #instantbird
08:08:49 --> afiksof has joined #instantbird
08:11:31 <-- gerard-majax has quit (Ping timeout: 121 seconds)
08:15:30 --> gerard-majax has joined #instantbird
08:15:49 <-- gerard-majax has quit (Connection closed)
08:16:00 --> gerard-majax has joined #instantbird
08:20:35 <-- mpmc has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
08:24:48 <-- gerard-majax has quit (Ping timeout: 121 seconds)
08:27:03 --> gerard-majax has joined #instantbird
08:28:19 <-- aleth has quit (Quit: :tiuQ)
08:28:25 --> aleth has joined #instantbird
08:28:25 * ChanServ sets mode +o aleth 
08:36:50 <-- gerard-majax has quit (Ping timeout: 121 seconds)
08:43:55 --> gerard-majax has joined #instantbird
08:57:16 <-- gerard-majax has quit (Ping timeout: 121 seconds)
09:14:32 <-- nhnt11 has quit (Ping timeout: 121 seconds)
09:16:14 --> nhnt11 has joined #instantbird
09:16:14 * ChanServ sets mode +h nhnt11 
09:34:56 <-- Alex1 has quit (Connection closed)
09:36:20 --> gerard-majax has joined #instantbird
09:43:18 <-- gerard-majax has quit (Ping timeout: 121 seconds)
09:55:34 --> flo-retina has joined #instantbird
09:55:34 * ChanServ sets mode +qo flo-retina flo-retina 
09:55:54 --> gerard-majax has joined #instantbird
10:09:40 <-- BWMerlin has quit (Client exited)
10:09:58 --> BWMerlin has joined #instantbird
10:23:27 <-- nhnt11 has quit (Ping timeout: 121 seconds)
10:29:47 <-- Bollebib has quit (Connection closed)
10:34:04 <-- freaktechnik has quit (Ping timeout: 121 seconds)
10:35:16 --> freaktechnik has joined #instantbird
10:36:40 --> Bollebib has joined #instantbird
10:45:04 --> bittin has joined #instantbird
10:56:46 --> clokep has joined #instantbird
10:56:46 * ChanServ sets mode +o clokep 
10:57:18 <-- bittin has quit (Connection closed)
11:21:54 <-- afiksof has quit (Ping timeout: 121 seconds)
11:24:04 <-- clokep has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
11:24:11 --> clokep has joined #instantbird
11:24:11 * ChanServ sets mode +o clokep 
11:26:14 <clokep> aleth: You see Mook's messages?
11:38:09 * aleth scrolls
11:38:28 <aleth> Ah, in the logs.
11:39:11 <aleth> That sounds like a bug that needs filing!
11:39:38 --> nhnt11 has joined #instantbird
11:39:38 * ChanServ sets mode +h nhnt11 
11:39:44 <aleth> There's also some XEP that's not implemented yet that's supposed to reduce the number of vcard fetches etc
11:40:00 <clokep> How so?
11:40:09 <clokep> How does it reduce it if you have 1000 contacts?
11:41:13 * clokep wonders how Mook plans to deal w/ 1000 contacts on his buddy list. :-D
11:42:11 <aleth> It's not about the initial fetch, that's separate issue, it's about updates to the info
11:45:30 <clokep> Hm. OK.
11:48:01 <aleth> Ah, I misremembered slightly, that one is to prevent service discovery flooding, not vcard flooding
11:48:10 <aleth> xep-0115
11:52:39 <clokep> Ah.
11:52:45 <clokep> Well sounds like he found two different issues thoguh.
11:55:53 <aleth> Sure, he should be filing bugs for all of them ;)
11:56:23 <aleth> There's a reason JS-XMPP is not pref'd on yet
12:02:49 <-- nhnt11 has quit (Ping timeout: 121 seconds)
12:09:38 --> nhnt11 has joined #instantbird
12:09:39 * ChanServ sets mode +h nhnt11 
12:23:18 --> nhnt12 has joined #instantbird
12:23:18 <-- nhnt11 has quit (Connection closed)
12:23:19 * ChanServ sets mode +h nhnt12 
12:23:19 * nhnt12 is now known as nhnt11 
12:26:08 <-- clokep has quit (Ping timeout: 121 seconds)
12:58:21 <-- nhnt11 has quit (Connection closed)
12:59:20 --> clokep_work has joined #instantbird
12:59:20 * ChanServ sets mode +o clokep_work 
13:05:19 --> nhnt11 has joined #instantbird
13:05:20 * ChanServ sets mode +h nhnt11 
13:09:28 <-- nhnt11 has quit (Ping timeout: 121 seconds)
13:12:23 --> mpmc has joined #instantbird
13:42:12 --> abdelrhman has joined #instantbird
13:43:57 <abdelrhman> Do we have SRS/SDS for IB?
13:52:54 <-- abdelrhman has quit (Ping timeout: 121 seconds)
13:53:16 --> abdelrhman has joined #instantbird
13:57:57 --> afiksof has joined #instantbird
14:02:14 <clokep_work> abdelrhman: What are those?
14:02:18 <clokep_work> I'm unfamilar with those abbrevations.
14:03:30 --> afiksof1 has joined #instantbird
14:05:41 --> venom00ut has joined #instantbird
14:05:53 <abdelrhman> Software Requirements Specification and Software Design Specification documents
14:06:01 <abdelrhman> (https://en.wikipedia.org/wiki/Software_requirements_specification)
14:06:05 <-- afiksof has quit (Ping timeout: 121 seconds)
14:06:07 <-- afiksof1 has quit (Connection closed)
14:06:08 <venom00ut> hi, is there a plan for supporting the new MQTT Facebook protocol?
14:06:36 <clokep_work> venom00ut: Is it documented somewhere? ;)
14:06:45 <clokep_work> I played with it a bit and was unable to get a connection to it to work.
14:06:52 <clokep_work> abdelrhman: No.
14:07:27 <clokep_work> abdelrhman: I can't say I've ever felt a need to do it.
14:07:34 <clokep_work> to have one.
14:07:36 <clokep_work> Why do you ask?
14:07:36 <venom00ut> clokep_work, there's a working purple plugin, so yeah :)
14:07:46 <clokep_work> venom00ut: That's not documentation.
14:07:54 <clokep_work> I think that's EionRobb's code, right?
14:07:59 <clokep_work> That was the code I was basing mine on.
14:08:02 --> afiksof has joined #instantbird
14:08:18 <venom00ut> clokep_work, was the MSN protocol documented? :P
14:08:39 <clokep_work> venom00ut: No, I'm just saying it wasn't an answer to my question.
14:08:53 <clokep_work> The major problem I've had is finding a reasonable MQTT library for JavaScript.
14:09:03 <clokep_work> And finding basic information, like what's the damn endpoint and port to connect to.
14:09:10 <clokep_work> Which code are you talking about again?
14:09:21 <clokep_work> If it's the same one I was looking at...it's a maze of references that's super hard to follow.
14:10:24 --> nhnt11 has joined #instantbird
14:10:24 * ChanServ sets mode +h nhnt11 
14:10:28 <clokep_work> venom00ut: You interested in helping make one? ;)
14:10:36 <clokep_work> (FWIW I got demotivated when Facebook continued to work for me. :))
14:11:50 <venom00ut> https://github.com/jgeboski/purple-facebook
14:12:07 <venom00ut> clokep_work, with xmpp? it doesn't work for me
14:12:24 <clokep_work> venom00ut: Oh is that the one from the GSoC?
14:12:35 <venom00ut> clokep_work, idk, I should try instanbird a bit more before commit in such an effort :P
14:12:35 <clokep_work> I don't think it uses MQTT, I think it uses reverse engineering of the HTTP API.
14:12:48 <clokep_work> :)
14:13:01 <venom00ut> clokep_work, no it uses MQTT, but the source is somewhere else, in that repo there are patches for some other code I still have to find
14:13:04 <clokep_work> venom00ut: Yeah over XMPP it still works. Seems to depend on the person. (Of course now that I've said that..it'll stop working today.)
14:13:10 --> nhnt12 has joined #instantbird
14:13:10 * ChanServ sets mode +h nhnt12 
14:14:05 <venom00ut> https://github.com/jgeboski/bitlbee-facebook
14:14:13 <clokep_work> venom00ut: Ah cool! Frankly I stopped following that project because I assumed it was using the HTTP stuff.
14:14:27 <-- nhnt11 has quit (Ping timeout: 121 seconds)
14:14:27 * nhnt12 is now known as nhnt11 
14:14:30 <clokep_work> venom00ut: Ah! That's the code I had found that's ridiculously convoluted.
14:14:33 <clokep_work> Without any comments.
14:15:10 <venom00ut> yeah, better than nothing :P
14:16:00 <clokep_work> venom00ut: How long have you been using Instantbird?
14:16:10 <clokep_work> venom00ut: So yeah it's something I'm interested in doing...but time...and such.
14:16:30 <venom00ut> clokep_work, I think I didn't manage to build it last time I tried
14:16:42 <clokep_work> Why are you trying to build it yourself?
14:16:51 <venom00ut> because I'm a gentoo user :P
14:17:54 <clokep_work> Ah. :)
14:17:57 <clokep_work> Well...yeah...
14:18:02 <clokep_work> Good luck. ;)
14:19:15 <clokep_work> venom00ut: If you have questions, feel free to ask.
14:19:33 <clokep_work> (Of course you could compile the libpurple prpl too, but I think...that's only libpurple 3)
14:20:11 <venom00ut> if I wanted to use purple I'd stay with pidgin :P
14:20:27 <clokep_work> :)
14:20:31 <abdelrhman> If there are any spec for FB MQTT. I'll devote my time to finish it for IB ;)
14:20:41 <clokep_work> abdelrhman: There's nothing. :-\
14:20:45 <clokep_work> I wonder where my patch is for that...
14:21:05 <venom00ut> MQTT is a a standard protocol, not sure how different the facebook implementation is different from the standard
14:21:11 <abdelrhman> Whenever there are ..
14:21:54 <abdelrhman> venom00ut: it may be slightly different, but sure not totally.
14:23:25 <clokep_work> venom00ut: Standard doesn't mean trivial to implement though. :-\ And I haven't foudn good libraries in JavaScript. I looked like 8 months ago though? SO you're definitely right -- I should look again.
14:24:08 <venom00ut> I think MQTT is a pretty simple protocol, it's designed for small devices, but didn't look into it
14:25:37 <venom00ut> https://www.npmjs.com/package/mqtt first google result :P
14:27:35 <clokep_work> venom00ut: IIRC that library looks terrible.
14:27:47 <clokep_work> venom00ut: And *finding* something doesn't mean it will work well. ;)
14:28:06 <clokep_work> Yes, it's designed for small devices. It has some weird pub/sub thing IIRC. I'll probably end up writing my own.
14:28:07 * clokep_work sighs.
14:29:02 <clokep_work> venom00ut: So I think the *weird* thing that Facebook does is tunnel MQTT over WebSocket?
14:29:08 <clokep_work> I think that's what I got stuck w/.
14:30:57 <-- Bollebib has quit (Ping timeout: 121 seconds)
14:32:13 --> Bollebib has joined #instantbird
14:32:27 <venom00ut> clokep_work, the bitlbee doesn't seem to have anything to do with websockets, it just opens a SSL connection on mqtt.facebook.com:443
14:34:54 <venom00ut> clokep_work, it doesn't look very very bad: https://github.com/jgeboski/bitlbee-facebook/blob/master/facebook/facebook-mqtt.c
14:35:45 * clokep_work hates gtk code.
14:36:18 <clokep_work> venom00ut: Yeah I couldn't get it to respond to me. I'm sure I'm doing something wrong. :) I likely need to insert wireshark in the middle.
14:36:40 <venom00ut> wireshark and SSL don't get along very well together usually :D
14:36:51 <clokep_work> I know. :(
14:36:56 <clokep_work> That's what MITM proxies are for.
14:38:32 <-- chrisccoulson has quit (Quit: OSError: [Errno 130] Owner died)
14:38:34 --> chrisccoulson has joined #instantbird
14:39:44 <-- abdelrhman has quit (Ping timeout: 121 seconds)
14:43:33 <-- Bollebib has quit (Connection closed)
14:50:55 <clokep_work> venom00ut: Thanks for the links though. Please let me know if you are interested in helping out! I definitely don't have time for it at the moment. :(
14:51:54 <venom00ut> I want to give a try to instantbird first, now that OTR is supported
14:52:22 <clokep_work> Yeah, you need to pull the extension.
14:52:27 * clokep_work sighs.
14:52:32 <clokep_work> The state of Node packages is such a mess.
14:53:07 <-- nhnt11 has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
14:53:33 <venom00ut> how is the Tor Messanger thing going?
14:54:17 <clokep_work> Not sure, you'd have to ask arlolra.
14:54:24 <clokep_work> Who's not online right now. (He's west coast IIRC)
14:58:41 --> Bollebib has joined #instantbird
15:01:53 <-- afiksof has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
15:06:17 --> myk has joined #instantbird
15:12:26 <clokep_work> venom00ut: So one of the people in the Pidgin room pointed me to the (probably?) 3 files we'd need to reimplement into JS...
15:12:30 <clokep_work> It doesn't look *so* bad.
15:13:06 <venom00ut> from the bitlbee-facebook repo or what?
15:16:53 <clokep_work> venom00ut: https://hg.pidgin.im/soc/2015/jgeboski/facebook/file/6a0a79182ebc/libpurple/protocols/facebook
15:17:09 <clokep_work> api.c, mqtt.c and thrift.c (I suspect some stuff from util.c/data.c maybe?)
15:17:47 <clokep_work> venom00ut: http://pastebin.instantbird.com/1979253
15:19:54 <clokep_work> Actually http://pastebin.instantbird.com/1979254 has more info.
15:27:07 <venom00ut> cool
15:41:45 <-- gerard-majax has quit (Ping timeout: 121 seconds)
15:49:16 <-- myk has quit (Ping timeout: 121 seconds)
15:49:17 <clokep_work> So I've decided that my design for our socket API is really wrong.
15:49:23 <clokep_work> But fixing it isn't worth the time. :-\
15:49:40 <aleth> Ah, like xmpp-xml ;)
15:50:16 <clokep_work> Kind of.
15:50:32 <clokep_work> For more details: we should have a base socket object, then one that does strings, the one that does binary data.
15:50:41 <clokep_work> They shouldn't all be mixed together. It makes the logic too complex.
15:52:39 <flo-retina> heh
15:52:48 <flo-retina> yeah, it's always been kind of a mess :(
15:55:56 --> unghost has joined #instantbird
16:02:20 <-- venom00ut has quit (Ping timeout: 121 seconds)
16:11:11 --> myk has joined #instantbird
16:16:10 <-- flo-retina has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
16:16:32 --> flo-retina has joined #instantbird
16:16:33 * ChanServ sets mode +qo flo-retina flo-retina 
16:23:39 <aleth> clokep_work: I guess you can feel better now you've heard that all other socket APIs are wrong too ;)
16:24:04 <clokep_work> aleth: Something like that. :-D
16:24:12 <clokep_work> I am happy with the 'evented-ness' of it though.
16:24:14 --> mconley_ has joined #instantbird
16:24:15 <clokep_work> We did a godo job there.
16:24:22 <aleth> Yup.
16:25:09 <aleth> And it's non-blocking.
16:25:11 * mconley_ is now known as mconley|livehacking 
16:25:20 --> gerard-majax has joined #instantbird
16:25:57 <aleth> And got pings built in.
16:28:32 --> venom00ut has joined #instantbird
16:31:17 <-- flo-retina has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
16:34:52 <clokep_work> aleth: Well it could have pings regardless! :P
16:46:03 <-- gerard-majax has quit (Ping timeout: 121 seconds)
16:54:34 --> gerard-majax has joined #instantbird
16:58:29 --> flo-retina has joined #instantbird
16:58:29 * ChanServ sets mode +qo flo-retina flo-retina 
17:08:10 <-- venom00ut has quit (Ping timeout: 121 seconds)
17:08:29 <-- Bollebib has quit (Connection closed)
17:11:10 --> venom00ut has joined #instantbird
17:14:21 --> Bollebib has joined #instantbird
17:17:48 <-- gerard-majax has quit (Ping timeout: 121 seconds)
17:20:45 --> gerard-majax has joined #instantbird
17:24:38 <-- clokep_work has quit (Ping timeout: 121 seconds)
17:40:04 <-- gerard-majax has quit (Ping timeout: 121 seconds)
17:41:29 --> gerard-majax has joined #instantbird
17:49:38 <-- venom00ut has quit (Ping timeout: 121 seconds)
18:00:24 <-- gerard-majax has quit (Ping timeout: 121 seconds)
18:11:37 --> gerard-majax has joined #instantbird
18:33:39 <-- gerard-majax has quit (Ping timeout: 121 seconds)
19:22:25 <-- mconley|livehacking has quit (Quit: NO CARRIER)
19:29:47 <-- myk has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
19:39:08 --> mikk_s has joined #instantbird
19:50:50 --> myk has joined #instantbird
20:01:15 --> clokep has joined #instantbird
20:01:15 * ChanServ sets mode +o clokep 
20:01:25 <-- clokep has quit (Quit: Instantbird 1.6a1pre -- http://www.instantbird.com)
20:01:44 --> clokep has joined #instantbird
20:01:44 * ChanServ sets mode +o clokep 
20:22:10 <-- mikk_s has quit (Quit: Instantbird 1.5 -- http://www.instantbird.com)
20:40:50 --> Mnyromyr has joined #instantbird
20:41:18 --> venom00ut has joined #instantbird
20:41:55 <clokep> aleth: What syntax is that patch you just put up? :-S
20:42:09 <clokep> |delete(key) { return this._map.delete(this._normalize(key)); },|
20:42:13 <clokep> Doesn't that need a : and a function()?
20:42:21 <clokep> Or even a : and a fat arrow?
20:42:25 <aleth> no, not for a while
20:42:30 <clokep> WTF.
20:42:48 <clokep> Why do they keep uselessly changing JS syntax but then take away the *actual* useful things.
20:43:22 <aleth> https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Method_definitions
20:43:59 <aleth> clokep: The method properties are fair enough, what made it ugly is the removal of expression closures
20:46:12 <aleth> I hope you noticed the attachment name, anyway ;)
20:46:19 <aleth> Stupid bug.
20:47:56 <clokep> "patch without class"? :P
20:55:11 --> clokep_work has joined #instantbird
20:55:12 * ChanServ sets mode +o clokep_work 
20:55:55 <Fallen> wow, people apparently really don't like the word "function"
20:56:54 <clokep> I just find it confusing that there's so many *different* ways to do the same thing.
20:57:09 <Fallen> the shorthand generator is really crazy. Looks almost like a pointer that way
20:58:07 <aleth> What's also fun is that in a class, the individual methods are not separated by commas. But in a prototype (an object) they are.
20:58:38 <clokep> Can we just rewrite all this in Python? :P
20:58:58 <aleth> Fallen: yes, that's funky
20:59:44 <clokep_work> Personally I liked the Symbol iterator thing.
20:59:44 <aleth> "* g(){} will work but g *(){} will not" :P
20:59:47 <clokep_work> I vaguely understand that.
20:59:57 <aleth> Yes, there was a point to that.
21:00:05 <clokep_work> aleth: But does "*g(){}" work too?
21:00:14 <clokep_work> (Aka the old thing of where does the space go for a pointer.)
21:00:18 <aleth> Unifying the zillion different iterators was sensible
21:00:35 <aleth> clokep_work: good question
21:39:31 --> mikk_s has joined #instantbird
22:06:26 <-- Mnyromyr has quit (Connection closed)
22:24:36 <-- Bollebib has quit (Ping timeout: 121 seconds)
22:32:46 <-- mikk_s has quit (Quit: Instantbird 1.5 -- http://www.instantbird.com)
23:32:51 --> satdav has joined #instantbird
23:48:44 <-- unghost has quit (Quit: Ухожу я от вас (xchat 2.4.5 или старше))