00:00:01  * ircretaryquit (Remote host closed the connection)
00:00:07  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
00:00:08  * ircretaryjoined
00:04:53  * kazuponjoined
00:10:17  * philipsjoined
00:12:57  <mmalecki>bnoordhuis: https://github.com/mmalecki/mode-to-permissions/blob/master/lib/mode-to-permissions.js
00:25:33  <MI6>libuv-master: #68 UNSTABLE linux (2/187) smartos (4/187) windows (7/188) osx (2/187) http://jenkins.nodejs.org/job/libuv-master/68/
00:37:24  * TooTallNatejoined
00:40:01  <MI6>nodejs-v0.10: #113 FAILURE smartos-ia32 (1/573) windows-x64 (7/573) windows-ia32 (7/573) http://jenkins.nodejs.org/job/nodejs-v0.10/113/
00:40:07  <tjfontaine>rutroh
00:40:21  <tjfontaine>oh just jenkins nonsense
00:44:00  * loladiroquit (Quit: loladiro)
00:45:58  * qmx|awayquit (Ping timeout: 245 seconds)
00:46:52  * bnoordhuisquit (Ping timeout: 256 seconds)
00:50:05  * qmx|awayjoined
00:51:43  * loladirojoined
00:58:01  <MI6>libuv-node-integration: #5 UNSTABLE smartos-x64 (1/575) windows-ia32 (8/575) linux-x64 (1/575) windows-x64 (8/575) http://jenkins.nodejs.org/job/libuv-node-integration/5/
01:37:30  * abraxasjoined
02:08:53  * kazuponquit (Remote host closed the connection)
02:12:20  * kazuponjoined
02:19:18  * qmx|awayquit (Ping timeout: 264 seconds)
02:21:36  * qmx|awayjoined
02:33:53  * aledbfquit (Read error: Connection reset by peer)
02:35:34  * aledbfjoined
02:39:09  * aledbfquit (Client Quit)
02:49:57  * kazuponquit (Remote host closed the connection)
02:51:42  * TooTallNatequit (Quit: Computer has gone to sleep.)
02:54:02  * TooTallNatejoined
03:01:39  * TooTallNatequit (Quit: ["Textual IRC Client: www.textualapp.com"])
03:02:31  * abraxasquit (Remote host closed the connection)
03:08:20  * kazuponjoined
03:36:00  * loladiroquit (Quit: loladiro)
03:38:45  * loladirojoined
03:45:43  * kazuponquit (Remote host closed the connection)
04:14:07  * defunctzombie_zzchanged nick to defunctzombie
04:24:53  * abraxasjoined
04:46:06  * kazuponjoined
04:51:27  * kazuponquit (Ping timeout: 276 seconds)
05:01:00  * abraxasquit (Read error: Connection reset by peer)
05:01:14  * abraxasjoined
05:45:07  * karupaneruraquit (Ping timeout: 256 seconds)
05:46:15  * karupanerurajoined
05:46:23  * loladiroquit (Quit: loladiro)
05:46:40  * kazuponjoined
05:50:53  * kazuponquit (Ping timeout: 240 seconds)
05:53:10  * kazuponjoined
05:59:51  * abraxas_joined
06:00:04  * abraxasquit (Read error: Connection reset by peer)
06:08:38  * loladirojoined
06:21:32  * dsantiagoquit (Quit: Computer has gone to sleep.)
06:23:34  * dsantiagojoined
06:24:48  * mmaleckichanged nick to mmalecki[zzz]
06:31:47  * `3rdEdenjoined
06:34:33  * paddybyersquit (Read error: Connection reset by peer)
06:34:39  * paddybyers_joined
07:11:00  * stagasjoined
07:12:27  * defunctzombiechanged nick to defunctzombie_zz
07:17:25  * hzjoined
07:20:49  * dsantiagoquit (Ping timeout: 245 seconds)
07:23:42  * dsantiagojoined
07:34:43  * csaohjoined
07:49:09  <MI6>joyent/node: Fedor Indutny v0.10 * ff32ecd : net: account encoding in .byteLength - http://git.io/_uQM-A
07:57:29  * wolfeidaujoined
08:05:30  <MI6>nodejs-v0.10: #114 UNSTABLE linux-ia32 (1/573) windows-x64 (6/573) windows-ia32 (6/573) osx-ia32 (1/573) http://jenkins.nodejs.org/job/nodejs-v0.10/114/
08:10:32  * rendarjoined
08:16:19  * loladiroquit (Quit: loladiro)
08:18:37  * paddybyers_quit (Ping timeout: 252 seconds)
08:42:06  <indutny>isaacs: yt?
08:42:55  * indutnytopic: And we're going to die at "liberal utopian vacation" day. ~ http://logs.libuv.org/libuv ~ http://groups.google.com/group/libuv
08:43:18  * luigyquit (Ping timeout: 264 seconds)
08:46:01  * luigyjoined
08:59:40  * wolfeidauquit (Ping timeout: 246 seconds)
09:00:48  * paddybyersjoined
09:08:13  * csaohquit (Quit: csaoh)
09:08:54  * kazuponquit (Remote host closed the connection)
09:21:51  * dominictarrquit (Quit: dominictarr)
09:25:36  * csaohjoined
09:39:01  * kazuponjoined
09:51:53  * wolfeidaujoined
10:02:01  * dominictarrjoined
10:02:22  * `3rdEdenchanged nick to `3E|BRB
10:36:14  * kazuponquit (Remote host closed the connection)
10:36:22  * `3E|BRBchanged nick to `3rdEden
10:37:57  * indutny_joined
10:38:40  * csaohquit (Quit: csaoh)
10:39:11  * indutnyquit (*.net *.split)
10:39:36  * bnoordhuisjoined
10:45:13  <MI6>joyent/node: Andreas Madsen v0.10 * 14dec66 : crypto: fix constructor call in crypto streams When using some stream me - http://git.io/CbSODQ
10:45:55  <MI6>joyent/node: Andreas Madsen v0.10 * fed8cff : crypto: fix constructor call in crypto streams When using some stream me - http://git.io/3aXypw
10:58:31  * csaohjoined
11:02:18  <MI6>nodejs-v0.10: #115 UNSTABLE linux-x64 (1/574) windows-x64 (6/574) windows-ia32 (6/574) osx-ia32 (1/574) http://jenkins.nodejs.org/job/nodejs-v0.10/115/
11:09:37  * indutny_changed nick to indunty
11:09:40  * induntychanged nick to indutny
11:09:45  <indutny>bnoordhuis: hey ben
11:21:24  <bnoordhuis>indutny: ho fedor
11:21:33  <indutny>bnoordhuis: so those two tests
11:21:39  <indutny>they're timing sensitive
11:21:49  <indutny>and this changes makes them less sensitive
11:22:01  <indutny>somehow its showing more often with my patches
11:22:10  <indutny>but its reproducible without them too
11:22:14  <indutny>just quite rarely
11:22:29  <bnoordhuis>okay, noted
11:22:59  <bnoordhuis>you should split off those changes to the tests into separate commits
11:23:11  <bnoordhuis>with commit logs that explain why you're changing that
11:23:21  <indutny>sure, ok
11:23:31  <indutny>bnoordhuis: I'm fighting with other thing now
11:23:35  <indutny>http.js
11:23:37  <indutny>:)
11:23:48  <bnoordhuis>btw, that curl test you mentioned
11:23:59  <bnoordhuis>it's known flaky, it just doesn't fail that often
11:24:25  <indutny>aha!
11:24:29  <indutny>well it fails often with my patch
11:24:31  <indutny>:)
11:24:41  <bnoordhuis>i guess that's... good
11:24:43  <indutny>I believe .destroySoon() is closing socket too soon
11:26:20  <indutny>bnoordhuis: could it be that uv_write() hasn't finished yet and uv_close() is closing socket before former one will finish
11:27:33  * rendar_joined
11:29:32  * mralephquit (Read error: Connection reset by peer)
11:29:32  * rendarquit (Read error: Connection reset by peer)
11:29:34  * mraleph1joined
11:29:39  <indutny>I believe it could be possible
11:29:44  <indutny>after looking at code
11:30:12  * wolfeidauquit (Ping timeout: 260 seconds)
11:30:40  <indutny>yeah
11:30:41  <indutny>though
11:30:45  <indutny>it should not be possible
11:30:45  <bnoordhuis>indutny: https://github.com/joyent/node/issues/5239
11:31:10  <bnoordhuis>maybe we should put Reviewed-by or Acked-by tags in our commits...
11:31:20  <indutny>bnoordhuis: https://github.com/joyent/node/pull/5231
11:31:30  <indutny>yeah, that could be good
11:31:50  * abraxas_quit (Remote host closed the connection)
11:32:24  <bnoordhuis>indutny: re uv_write, no, that's not possible
11:32:29  <indutny>why?
11:32:33  <bnoordhuis>the write callback runs on the next tick
11:32:39  <indutny>uv_write(stream);uv_close(stream)
11:32:47  <indutny>this should work
11:32:52  <indutny>and data will be discarded, no?
11:32:54  <bnoordhuis>if you do that, one of two things happens
11:32:59  <indutny>well
11:33:03  <indutny>either it'll write immediately
11:33:05  <indutny>or
11:33:10  <indutny>loss all data
11:33:11  <indutny>right?
11:33:26  <bnoordhuis>well, yes and no
11:33:35  <bnoordhuis>the write may succeed immediately
11:33:58  <bnoordhuis>but your callback will be called even if you call uv_close() immediately afterwards
11:34:21  <bnoordhuis>write reqs that are still pending get called with UV_ECANCELED
11:34:35  <indutny>yeah
11:34:38  <indutny>got it
11:34:49  <indutny>ok, now I should figure out if streams2 are that fucked
11:35:03  <bnoordhuis>that seems like a tautology
11:35:41  <indutny>it might be me, actually
11:36:06  <indutny>yes, it is me
11:36:37  * kazuponjoined
11:36:52  <bnoordhuis>that guy again?
11:36:59  <bnoordhuis>i can't count the times it was me
11:37:08  <bnoordhuis>me has got a lot to answer for
11:37:26  <indutny>yes
11:39:45  <indutny>bnoordhuis: mind reviewing BIO patches?
11:39:53  <indutny>bnoordhuis: v0.10 really needs them
11:40:01  <bnoordhuis>sure
11:41:25  * kazuponquit (Ping timeout: 248 seconds)
11:45:36  <bnoordhuis>done
11:46:14  <indutny>thanks
11:52:39  * stagasquit (Ping timeout: 276 seconds)
11:53:45  <MI6>joyent/node: Fedor Indutny v0.10 * 21f3c5c : crypto: move write_head in bio's Reset() method (+2 more commits) - http://git.io/uawpFg
11:54:44  <indutny>bnoordhuis: thanks, landed with fixes
11:56:22  <indutny>aha
11:56:28  <indutny>that's what's happening with curl test
11:56:29  <indutny>write failureError: write EINVAL
11:56:35  <indutny>EINVAL errno
11:58:19  <indutny>and uv_write()'s afterwrite is invoked with status=-1
11:58:34  <indutny>bnoordhuis: does this mean bug in libuv or was write just cancelled?
12:00:23  <indutny>bnoordhuis: so about DH
12:04:40  <indutny>hm... no
12:04:53  <indutny>this status=-1 thing is not related to uv_close()
12:09:45  <MI6>nodejs-v0.10: #116 UNSTABLE windows-x64 (5/574) windows-ia32 (5/574) http://jenkins.nodejs.org/job/nodejs-v0.10/116/
12:22:46  <indutny>I found it!!!
12:22:46  <indutny>yay
12:37:18  * kazuponjoined
12:41:40  * kazuponquit (Ping timeout: 245 seconds)
12:45:46  <indutny>oh gosh
12:45:48  <indutny>stupid IOVs
12:45:50  <indutny>I fixed it
12:45:57  <indutny>bnoordhuis: wanna take a look?
12:46:25  <indutny>bnoordhuis: see iovMax here https://github.com/indutny/node/commit/57bfa3711324f50053b07f2e28bd2da521cf7778
12:51:55  <bnoordhuis>margaret thatcher passed away
12:51:55  <bnoordhuis>now there's someone i wouldn't have expected to die
12:51:55  <bnoordhuis>indutny: why is that necessary? libuv takes care of that
12:51:55  <bnoordhuis>(or should)
12:51:56  * bnoordhuisis off to the supermarket
12:52:01  <indutny>no
12:52:02  <indutny>it doesn't
12:52:47  * aledbfjoined
12:53:06  <indutny>bnoordhuis: hm.. it could be fixed on libuv's side as well
12:53:33  <indutny>bnoordhuis: tell me :)
12:53:40  <indutny>crazy shopper
12:54:20  * qmx|awaychanged nick to qmx
12:56:21  * bnoordhuisquit (Ping timeout: 276 seconds)
13:05:36  * kazuponjoined
13:13:41  <indutny>ircretary: tell bnoordhuis about https://github.com/joyent/libuv/pull/770
13:13:41  <ircretary>indutny: I'll be sure to tell bnoordhuis
13:21:32  * bnoordhuisjoined
13:23:26  <indutny>bnoordhuis: hey ben
13:23:28  <indutny>https://github.com/joyent/libuv/pull/770
13:27:07  * creationix_joined
13:29:53  * bnoordhuisquit (Ping timeout: 255 seconds)
13:31:44  * creationixquit (Quit: ZNC - http://znc.in)
13:31:50  * sgallaghjoined
13:33:04  * creationix__joined
13:33:14  * creationix_quit (Remote host closed the connection)
13:37:17  * creationix__quit (Remote host closed the connection)
13:37:26  * creationix_joined
13:40:53  * creationix_quit (Client Quit)
13:41:13  * creationixjoined
13:46:41  * sgallaghquit (Remote host closed the connection)
13:48:35  * sgallaghjoined
14:03:55  <indutny>ircretary: tell bnoordhuis https://github.com/joyent/node/pull/5248
14:03:56  <ircretary>indutny: I'll be sure to tell bnoordhuis
14:09:15  * bnoordhuisjoined
14:13:52  * c4milojoined
14:22:03  * defunctzombie_zzchanged nick to defunctzombie
14:24:12  * mmalecki[zzz]changed nick to mmalecki
14:29:05  * loladirojoined
14:41:51  * AvianFlujoined
14:46:37  * paddybyers_joined
14:48:45  * paddybyersquit (Ping timeout: 245 seconds)
14:48:45  * paddybyers_changed nick to paddybyers
14:49:55  <MI6>joyent/node: Rod Vagg v0.10 * ccabd4a : process: expose NODE_MODULE_VERSION in process.versions - http://git.io/o_lljg
14:55:39  <MI6>joyent/libuv: Kristian Evensen master * 1e8fe45 : include: updated uv_udp_open documentation On Unix, uv_udp_open can be u - http://git.io/LHKZfA
14:58:02  <MI6>libuv-master: #69 UNSTABLE linux (2/187) smartos (4/187) windows (8/188) osx (1/187) http://jenkins.nodejs.org/job/libuv-master/69/
15:01:58  * loladiroquit (Quit: loladiro)
15:03:31  * bnoordhuisquit (Ping timeout: 264 seconds)
15:04:02  * piscisaureus_joined
15:07:55  <MI6>nodejs-v0.10: #117 FAILURE linux-x64 (1/574) smartos-x64 (1/574) smartos-ia32 (1/574) windows-ia32 (5/574) http://jenkins.nodejs.org/job/nodejs-v0.10/117/
15:08:23  <MI6>libuv-node-integration: #6 FAILURE smartos-ia32 (1/575) http://jenkins.nodejs.org/job/libuv-node-integration/6/
15:09:49  <piscisaureus_>BAM! ^
15:13:11  * kazuponquit (Remote host closed the connection)
15:13:24  * loladirojoined
15:13:48  * kazuponjoined
15:14:03  * c4miloquit (Remote host closed the connection)
15:28:18  * `3rdEdenchanged nick to `3E|DINNER
15:31:38  <isaacs>indutny: the lazy transform thing breaks if you do setEncoding() or on('data'), because it tries to read the _readableState.
15:36:12  * wolfeidaujoined
15:41:02  * bnoordhuisjoined
15:43:51  * rendar_quit
15:45:49  <MI6>joyent/node: Fedor Indutny v0.10 * 037bcac : crypto: dh secret should be left-padded DH_compute_secret() may return k - http://git.io/4MaiEw
15:46:50  * dapjoined
15:47:56  <indutny>bnoordhuis: hey ben
15:48:03  <indutny>bnoordhuis: is that all for https://github.com/joyent/libuv/pull/770 ?
15:48:11  <bnoordhuis>indutny: yeah
15:48:11  <indutny>because if it is - then I fixed it and ready to push it
15:48:23  <bnoordhuis>it was on my TODO list for a long time actually :)
15:48:34  <indutny>haha
15:48:35  <indutny>ok
15:48:41  <MI6>joyent/libuv: Fedor Indutny v0.10 * 9e87974 : stream: account _SC_IOV_MAX Write no more than `sysconf(_SC_IOV_MAX)` ch - http://git.io/XuYS7w
15:48:42  <indutny>good that we've finally started using writev
15:48:47  <indutny>in node
15:49:20  * kazuponquit (Remote host closed the connection)
15:49:28  <bnoordhuis>fedor, commit log...
15:49:58  <indutny>oh
15:50:01  <indutny>oh oh
15:50:04  <indutny>5 minute rule!
15:50:34  <MI6>joyent/libuv: Fedor Indutny v0.10 * c967406 : stream: account IOV_MAX Write no more than `IOV_MAX` chunks with `writev - http://git.io/rCPGdA
15:50:38  <indutny>bnoordhuis: better? ^
15:51:06  <indutny>now, what do you think about updating libuv in node.js?
15:51:09  <bnoordhuis>well... s/stream: account IOV_MAX/unix: don't write more than IOV_MAX iovecs/
15:51:13  <bnoordhuis>something like that
15:51:18  <indutny>oh gosh
15:51:18  <indutny>ok
15:51:51  <MI6>joyent/libuv: Fedor Indutny v0.10 * 895e776 : unix: don't write more than IOV_MAX iovecs Write no more than `IOV_MAX` - http://git.io/_qX__w
15:51:53  <indutny>bnoordhuis: so... mind updating libuv in node?
15:51:57  <bnoordhuis>re updating libuv, i think the idea is to only update to official releases
15:52:07  <indutny>well, lets release it then :)
15:52:18  <bnoordhuis>we need bert for that, he has all the tooling :-/
15:52:22  <bnoordhuis>piscisaureus_: ^
15:52:23  <indutny>ooooh
15:52:32  <indutny>piscisaureus_: bert please opensource your black magic tools
15:52:40  <indutny>hope they're not .bat files
15:52:50  <bnoordhuis>probably vbscript .cmd files
15:52:55  <indutny>oh no
15:52:57  <bnoordhuis>using activex
15:52:59  <indutny>its even worse
15:53:06  * kazuponjoined
15:55:10  <isaacs>indutny: that's not quite as safe.
15:55:17  <isaacs>indutny: https://github.com/joyent/node/commit/fed8cff1d0170bb6558da0e7d143599e7c37a47f i mean
15:55:18  <indutny>isaacs: what?
15:55:21  <indutny>ah
15:55:23  <isaacs>but, i didn't see that.
15:55:46  <isaacs>indutny: what happens if you do `on('data')` with that?
15:55:50  <isaacs>;)
15:56:02  <indutny>hm... well :)
15:56:06  <indutny>ok
15:56:08  <indutny>I agree
15:56:42  <isaacs>i mean, we could avoid the defineProperty by also adding addListener and on to the list
15:56:54  <isaacs>or even on('readable'), actually, will have the same problem maybe
15:57:17  <indutny>yeaah
15:57:24  <indutny>your solution looks good to me
15:57:33  <indutny>but I believe that every other hack is not really required with
15:57:35  <indutny>it
15:57:58  <isaacs>yeah, we can just remove the method wrapping then
15:58:03  <indutny>yep
15:58:09  <isaacs>since the only problem with those methods is that they touch the properties
15:58:35  <indutny>isaacs: I don't like that it sets it with defineProperty
15:58:47  <indutny>I mean after it recognizes that stream should be initialized
15:58:51  <isaacs>it has to
15:58:54  <indutny>it should hard-set it, not this getter/setter
15:58:58  <indutny>thing
15:59:04  <isaacs>it's a getter
15:59:06  <indutny>ah
15:59:08  <indutny>it does it
15:59:10  <indutny>nono
15:59:12  <indutny>LGTM
15:59:19  <indutny>but please revert everything else
15:59:25  <isaacs>the only way to convert from a getter to a value prop is by reconfiguring
15:59:27  <isaacs>yeah, i will
15:59:33  <indutny>isaacs: and also https://github.com/joyent/node/pull/5246
15:59:39  <indutny>hope you'll like new streams2 apis
16:00:00  <indutny>interesting question
16:00:03  <indutny>if we won't document them
16:00:07  <indutny>could we land them in v0.10?
16:00:49  <isaacs>indutny: i'm not comfortable landing this in 0.10
16:00:54  <indutny>ok
16:00:59  <isaacs>indutny: it's a pretty dramatic change, even if we don't document it
16:01:06  <isaacs>and in fact, not documenting it is a huge problem.
16:01:19  <isaacs>because then it's just weird and confusing that net uses writev while other streams don't
16:01:32  <indutny>hm...
16:01:36  <indutny>that's just internal thing
16:01:37  <indutny>in fact
16:01:44  <indutny>but yeah
16:01:47  <isaacs>well, sure, but the stream api is not just an internal thing
16:01:49  <indutny>I'm ok with landing this in master
16:01:50  <indutny>yeah
16:02:03  <indutny>ok what about API?
16:02:07  <indutny>does it looks good to you?
16:02:09  <isaacs>we should do this in master. (not +1ing yet, still reviewing)
16:02:57  * loladiroquit (Quit: loladiro)
16:03:23  <indutny>ok
16:03:48  <MI6>libuv-v0.10: #27 FAILURE smartos (6/186) linux (2/186) osx (3/186) http://jenkins.nodejs.org/job/libuv-v0.10/27/
16:04:43  * kazuponquit (Remote host closed the connection)
16:05:08  <tjfontaine>jenkins, windows -- we need to have a talk
16:05:30  <tjfontaine>either that or the folks who love force push :)
16:06:26  <indutny>haha
16:07:19  <isaacs>indutny: caught!
16:07:35  <isaacs>indutny: so, does this work with write('0f0f0f', 'hex')?
16:07:44  <indutny>it won't coalesce it
16:07:54  <indutny>because buffer isn't created for it
16:08:18  <MI6>libuv-v0.10: #28 UNSTABLE smartos (7/186) linux (3/186) osx (2/186) windows (7/187) http://jenkins.nodejs.org/job/libuv-v0.10/28/
16:08:28  <indutny>I'm not sure how it feels from API point of view
16:08:32  <indutny>but its good for TCP
16:09:40  * rendarjoined
16:10:12  <isaacs>indutny: also, i'm not seeing where the individual callbacks go when you coalesce writes together
16:10:40  <indutny>oh gosh
16:10:43  <indutny>I forgot about them :)
16:10:57  <indutny>you're right
16:11:28  <MI6>libuv-v0.10: #29 UNSTABLE smartos (4/186) linux (2/186) osx (2/186) windows (9/187) http://jenkins.nodejs.org/job/libuv-v0.10/29/
16:11:35  <indutny>though, its pretty easy to solve
16:14:20  <isaacs>indutny: yeah, you can queue them up as well as the buffers, and call them all in a row when the writev returns
16:14:25  <indutny>yep
16:14:36  <isaacs>indutny: about _clearBuffer, that needs to be called by Writable, not Socket
16:14:52  <indutny>ok...
16:15:03  <indutny>but not sure where...
16:15:21  <indutny>because right now I'm calling it on connection destroy
16:15:26  <indutny>and this could happen before stream end
16:15:40  * kazuponjoined
16:20:19  <tjfontaine>what an interesting failure, http://jenkins.nodejs.org/job/node-pullrequest/DESTCPU=x64,label=smartos/154/tapTestReport/test.tap-136/
16:20:22  <MI6>nodejs-v0.10: #118 UNSTABLE osx-x64 (1/575) windows-x64 (4/575) windows-ia32 (4/575) http://jenkins.nodejs.org/job/nodejs-v0.10/118/
16:20:40  * loladirojoined
16:21:16  <indutny>I'm going to merge v0.10 in master if noone cares
16:21:23  <tjfontaine>we don't do that anymore
16:21:25  <tjfontaine>:)
16:21:34  <tjfontaine>or has there been a uv release?
16:21:53  <isaacs>tjfontaine: no, wait for a release.
16:21:54  <isaacs>i care
16:21:58  <isaacs>er, indutny ^
16:22:07  <indutny>ah
16:22:09  <indutny>ok
16:22:10  <isaacs>indutny: if you have to test stuff, do it in a feature branch
16:22:26  * qmxchanged nick to qmx|afk
16:22:27  <isaacs>i'll bug bert to release his tools
16:22:43  <tjfontaine>fwiw if you want to see the result of your pushes to libuv, I have a job that does integration
16:24:07  <tjfontaine>it's about to report the status from a v0.10 integration build http://jenkins.nodejs.org/job/libuv-node-integration/7/parameters/?
16:26:04  * brsonjoined
16:26:54  <MI6>libuv-node-integration: #7 UNSTABLE smartos-x64 (2/575) linux-ia32 (1/575) windows-ia32 (5/575) windows-x64 (5/575) http://jenkins.nodejs.org/job/libuv-node-integration/7/
16:34:14  <MI6>joyent/node: isaacs v0.10 * e4b716e : http: Support write(data, 'hex') We were assuming that any string can be - http://git.io/Oibc9g
16:42:50  <MI6>libuv-node-integration: #8 UNSTABLE smartos-x64 (1/575) windows-ia32 (4/575) osx-x64 (1/575) linux-x64 (1/575) windows-x64 (6/575) http://jenkins.nodejs.org/job/libuv-node-integration/8/
16:46:02  * aledbfquit (Ping timeout: 252 seconds)
16:47:53  * `3E|DINNERchanged nick to `3rdEden
16:49:13  * loladiroquit (Quit: loladiro)
16:49:45  <indutny>isaacs: https://github.com/indutny/node/commit/e6453ff46ac610d8bd05b9488599443e1f6da88f#L0R356
16:49:46  <indutny>about this
16:49:50  <indutny>may be we should expose it
16:50:00  <indutny>I really don't see another way of dealing with sudden .destroy() in net.js
16:50:49  <isaacs>indutny: what are you calling it for in net.js?
16:50:56  <indutny>imagine situation
16:51:03  <indutny>many .write(buffer)s was queued
16:51:09  <indutny>and then socket.destroy() was called
16:51:18  <indutny>its called test-http-client-abort
16:51:20  <indutny>:)
16:51:34  * aledbfjoined
16:51:39  <indutny>oh no
16:51:41  <indutny>not this
16:52:00  <indutny>well, I foah
16:52:01  <indutny>ah
16:52:08  <indutny>test-http-abort-client
16:52:10  <indutny>yes, this
16:52:26  <MI6>nodejs-v0.10: #119 UNSTABLE linux-x64 (1/575) windows-x64 (5/575) windows-ia32 (6/575) http://jenkins.nodejs.org/job/nodejs-v0.10/119/
16:52:46  * dominictarrquit (Quit: dominictarr)
16:53:05  <isaacs>k
16:53:28  <isaacs>so you have to throw away the queued up writes?
16:53:32  <isaacs>before hte writev happens?
16:53:41  <isaacs>otherwise, it'll try to write a bunch of crap
16:53:42  <indutny>yes
16:53:48  <isaacs>hm.
16:53:50  <indutny>erm
16:53:54  <indutny>before the writev() ?
16:53:57  <indutny>not sure I got it
16:54:04  <indutny>I don't want to throw away things
16:54:07  <isaacs>you do write()write()write()write()
16:54:10  <isaacs>then destroy()
16:54:12  <indutny>otherwise this writes would happen
16:54:14  <isaacs>now, the nextTick happesn
16:54:17  <indutny>if not coalesced
16:55:07  * qmx|afkchanged nick to qmx
16:55:38  * stagasjoined
16:56:57  * mikealjoined
16:57:28  * loladirojoined
17:02:36  <indutny>isaacs: thoughts?
17:02:47  <indutny>there's no interaction between net.js and streams2 at this point
17:03:13  <isaacs>i'm still not entirely sure why this is necessary to have a private-ish function that net calls.
17:03:48  <indutny>isaacs: we can expose it as API
17:03:50  <indutny>and make it public
17:04:02  <indutny>or introduce stream.destroy()
17:04:07  <indutny>and call it from there
17:04:12  <isaacs>yeah... it's a weird interface, that's all
17:04:27  <isaacs>what about if we just called it on stream close event?
17:04:37  <indutny>it happens too late
17:04:56  <indutny>in _handle.close() callback
17:05:12  <isaacs>hm. right
17:05:52  <isaacs>i almost think that this writev stuff belongs at a lower level... like, in the TCP handle or something
17:05:55  <isaacs>or just in net.js only
17:06:29  <isaacs>except, that'll fuck up the semantics of the write() cb and the writing flag
17:06:30  <isaacs>hmm...
17:07:39  <indutny>yes
17:07:41  <indutny>I tried it
17:07:42  <indutny>on that leve
17:07:45  <indutny>s/leve/level/
17:07:53  <indutny>seems to be much worse than this
17:07:59  * TooTallNatejoined
17:08:09  <bnoordhuis>indutny: what about benchmarks?
17:08:20  <indutny>working on that
17:08:59  <isaacs>because you don't know that the write has actually happened yet or if it succeeded
17:09:03  <isaacs>m.
17:09:12  <indutny>make bench > 1.log , right?
17:10:21  <isaacs>indutny: sure
17:10:31  <bnoordhuis>indutny: add 2>&1
17:10:32  <isaacs>indutny: you can also make a binary with the change, and another without it
17:11:04  <isaacs>indutny: and then use ./node benchmark/compare.js ./node-with-change ./node-master [args]
17:11:15  <indutny>oh
17:11:16  <indutny>kewl
17:11:35  <isaacs>the compare script is pretty ghetto but it's not completely horrible
17:11:49  <isaacs>you can make it run more times and do some embarassingly naive statistical stuff to the results.
17:12:16  <isaacs>process.env.NODE_BENCH_RUNS
17:12:20  <isaacs>set that to 10 or something
17:12:25  <isaacs>then go watch a movie and come back
17:12:33  * c4milojoined
17:12:40  <isaacs>also, probably best to set NODE_BENCH=bench-net or bench-http
17:12:45  <isaacs>the fs shouldn't change with this chnage.
17:12:52  <isaacs>(if it regresses, ok, then that's a problem.)
17:17:18  * `3rdEdenquit (Remote host closed the connection)
17:17:21  * qmxchanged nick to qmx|lunch
17:18:03  * piscisaureus_quit (Quit: ~ Trillian Astra - www.trillian.im ~)
17:30:35  * `3rdEdenjoined
17:33:20  * defunctzombiechanged nick to defunctzombie_zz
17:44:19  * c4miloquit (Ping timeout: 264 seconds)
17:46:48  * c4milojoined
17:48:39  * qmx|lunchchanged nick to qmx|away
17:49:19  * mikealquit (Quit: Leaving.)
17:55:10  * hzquit (Disconnected by services)
17:55:13  * hzjoined
17:56:11  * dominictarrjoined
18:05:48  <isaacs>indutny: so you're +1 on the LazyTransform thingie? (updated to only do properties, not methods)
18:11:14  <tjfontaine>isaacs: this can be closed, right? https://github.com/joyent/node/issues/4089
18:11:44  <isaacs>tjfontaine: i think so.
18:11:49  * qmx|awaychanged nick to qmx
18:12:01  <indutny>isaacs: yes
18:13:23  * AvianFluquit (Read error: Connection reset by peer)
18:13:48  * isaacsoff to practice...
18:13:56  * AvianFlujoined
18:15:11  * Raltquit (Ping timeout: 256 seconds)
18:15:58  * Raltjoined
18:20:52  * kazuponquit (Remote host closed the connection)
18:33:08  <bnoordhuis>tjfontaine: has v8 accepted that mmap patch yet?
18:33:29  <tjfontaine>to be honest I have taken it the mile, lemme do that right now
18:34:26  <tjfontaine>bnoordhuis: also out of curiosity, is there a way to convince gyp to link all the o's directly instead of doing a static library (while this sounds like a thin archive, that's not available to me atm)
18:37:06  <bnoordhuis>tjfontaine: i don't think so. why do you ask?
18:37:32  * stagasquit (Read error: Connection reset by peer)
18:37:50  <bnoordhuis>btw, doesn't gyp create thin archives by default?
18:38:27  <tjfontaine>bnoordhuis: well, the uv dtrace probes work fine on osx, but on smartos having both node and uv define probes is a problem, and thin archives aren't available on smartos
18:38:32  * stagasjoined
18:39:27  <MI6>joyent/node: Ben Noordhuis master * 7357bcb : v8: reapply floating patches (+1 more commits) - http://git.io/A5Oq7A
18:45:36  * defunctzombie_zzchanged nick to defunctzombie
18:51:14  * kazuponjoined
18:56:18  <MI6>nodejs-master: #142 UNSTABLE windows-x64 (7/575) windows-ia32 (7/575) smartos-ia32 (3/575) smartos-x64 (2/575) http://jenkins.nodejs.org/job/nodejs-master/142/
18:58:09  * trevnorrisjoined
18:59:05  <trevnorris>hey all
18:59:45  <indutny>hey trevor
18:59:56  <trevnorris>just got done speaking w/ crabtree.
18:59:56  * stagasquit (Read error: Connection reset by peer)
18:59:57  * kazuponquit (Ping timeout: 256 seconds)
19:00:36  * stagasjoined
19:01:10  <trevnorris>isaacs: was productive, and think the thread never actually hit exactly what he was looking for.
19:01:26  <trevnorris>i'll write up a few examples of what we discussed
19:05:20  * stagasquit (Read error: Connection reset by peer)
19:06:33  * stagasjoined
19:07:07  <trevnorris>bnoordhuis: specific reason for the 3.17.16 upgrade, or just figured it was time?
19:11:10  * stagasquit (Read error: Connection reset by peer)
19:12:36  * stagasjoined
19:13:45  <trevnorris>indutny: noticed that node_crypto uses SlowBuffer's a lot (a la Buffer::New), think that contributes much perf impact?
19:15:34  * sblomjoined
19:16:10  <indutny>trevnorris: idk
19:23:52  <bnoordhuis>trevnorris: i like upgrading all the things
19:24:19  <bnoordhuis>generally, if you put off upgrades too long, it becomes massively painful
19:24:33  * bnoordhuisis working on upgrading openssl atm
19:24:44  <trevnorris>cool
19:46:13  * bnoordhuisquit (Ping timeout: 248 seconds)
19:54:55  <tjfontaine>trevnorris: as I recall, the buffer-ization of crypto was meant to simplify the fact that it was one of the last pieces of the api to still be passing strings by default instead of buffers, it did result in some perf impact though I don't know where any of the numbers are, but I wouldn't worry to much about changing that interface as that's what ben wants to do for .12
19:55:52  <trevnorris>tjfontaine: what I was getting at is w/ the changes i'm working on, slowbuffers == buffers. so performance would be the same.
19:56:25  <trevnorris>it would keep pretty much the same api, but w/o the current perf impact.
19:56:28  * kazuponjoined
19:57:18  <tjfontaine>trevnorris: I am just saying I wouldn't worry too much about keeping track of the perf for the crytpo side knowing they're about to get a big revamp
19:57:30  <trevnorris>ah, understand.
19:57:32  <trevnorris>coolio
19:59:05  <tjfontaine>faster buffers mean faster for everyone, I can't imagine anything you do to the buffers that would hurt crypto in a way that would be your responsibility :)
20:01:06  * TooTallNatequit (Quit: Computer has gone to sleep.)
20:01:26  * kazuponquit (Ping timeout: 256 seconds)
20:01:33  * AvianFluquit (Remote host closed the connection)
20:05:57  * TooTallNatejoined
20:06:24  <trevnorris>TooTallNate: you mentioned that SlowBuffer = Buffer wouldn't work. why is that?
20:06:55  <TooTallNate>trevnorris: it would work fine, but technically it would be an API change of sorts
20:07:03  <TooTallNate>trevnorris: currently, SlowBuffer and Buffer and distinct classes
20:07:08  <TooTallNate>some code might rely on that fact
20:07:18  <trevnorris>hm...
20:07:42  <trevnorris>TooTallNate: well then the fact that I'm ditching the Buffer class (in cc) is also a pain.
20:08:12  <trevnorris>all the ::Data(), ::Length() stuff still all work. but instead you just get the object, instead of needing to do ->handle_
20:08:42  <TooTallNate>trevnorris: hmmm, that probably _is_ a breaking change
20:08:51  <TooTallNate>trevnorris: in retrospect, it's probably ok
20:09:06  <TooTallNate>they're very minor discrepancies
20:09:46  <trevnorris>yeah. the only difference in api is that there is no ::Unwrap() (well, no need for it, since you always have the js object, so it would just return itself.
20:10:08  <trevnorris>and that there's no need to "->handle_" since you always have the object.
20:10:51  <TooTallNate>trevnorris: can we define those and return "this" for backwards compatability?
20:11:05  <TooTallNate>handle_ and Unwrap() i mean
20:12:15  <trevnorris>Unwrap yes. that's trivial. handle_ no, especially since it's accessed using "->handle_"
20:13:07  <trevnorris>basically, benchmarks show that calling the js function and setting the object properties is much faster then setting them via "->Set*()"
20:13:25  <trevnorris>so you always have a "Buffer", either in js or cc.
20:14:00  <TooTallNate>trevnorris: no i think that's awesome
20:14:05  <TooTallNate>i love the "mixin" aspect of it
20:14:29  <TooTallNate>the JS community needs to utilize mixins better IMO
20:18:15  <trevnorris>api question for y'all. cc-side of the allocator allows you to pass char*. Think that should be copied then used, or just used?
20:18:49  <tjfontaine>just used
20:19:01  <tjfontaine>did we do any copying anywhere?
20:19:26  <trevnorris>idk
20:19:41  <tjfontaine>oh one of the replace paths has a copy
20:19:45  <trevnorris>right now the MakeWeakCallback automatically free's the data allocated to the object, but if the data is shared i'm not sure how to detect that.
20:20:21  <trevnorris>so just mention in the docs that the data shouldn't be used elsewhere?
20:20:34  <trevnorris>(or comments or whatever)
20:20:38  <tjfontaine>trevnorris: then how do you handle the free cb?
20:20:59  <tjfontaine>you need to proxy the makeweakcallback to the free cb that they might have supplied
20:22:17  <trevnorris>tjfontaine: sorry not following, you mean the Buffer api that allows pass of cb?
20:23:37  <tjfontaine>trevnorris: MakeWeak happens in Alloc? and unconditionally free's the data when it's triggered?
20:24:35  <trevnorris>tjfontaine: Alloc persists the object and assigns a weak callback. you can pass one in, but it also has a default that does basic cleanup.
20:24:41  <TooTallNate>trevnorris: no copy
20:25:08  <tjfontaine>trevnorris: and by basic cleanup you mean, free/delete?
20:25:08  <TooTallNate>trevnorris: otherwise you break node-ffi :p
20:25:46  <trevnorris>tjfontaine: yes, and the wonderfully named "AdjustAmountOfExternalAllocatedMemory"
20:25:58  <trevnorris>and Dispose() of the persistent.
20:26:08  <trevnorris>TooTallNate: roger that. =)
20:26:34  <tjfontaine>right, well that v8 part can unconditionally, but if this was an SMBuffer that has a cb, you can't free in Alloc you need to proxy the cb to SMBuffer so it can make the decision
20:26:51  <tjfontaine>*can happen unconditionally
20:27:39  * AvianFlujoined
20:27:52  <trevnorris>tjfontaine: the callback passed to Alloc is the callback passed to .MakeWeak(). so the callback will be responsible for all cleanup.
20:28:19  <trevnorris>e.g. the v8 stuff can't unconditionally happen if the user is not going to Dispose the Persistent.
20:28:28  <trevnorris>(since it can be reused)
20:28:29  <tjfontaine>including doing the v8 work? that's probably not ideal, since you did the v8 changes, you should undo them
20:29:11  <tjfontaine>or whatever
20:29:36  <tjfontaine>I'll pull up the code to know what I'm talking about
20:31:17  <trevnorris>tjfontaine: are you saying that the actuall data should be stripped of any js object and passed back to the callback, then cleanup all the js/v8 related stuff?
20:32:45  <tjfontaine>trevnorris: https://github.com/trevnorris/smbuffer/blob/master/src/smalloc.cc#L123-124 you did the initial adjustments and the making of persistent, I think that alloc should be responsible for undoing that and dispose, but if I supplied a callback you don't free instead and call me where I actually do the cleanup I want to do
20:33:17  <trevnorris>tjfontaine: ok. so just pass the data back. can do.
20:34:08  <tjfontaine>ya, if (free_cb) free_cb(data) else delete data; if that works
20:34:49  <trevnorris>theoretically do-able. just not sure of the cc syntax to call a callback in the future w/ specific args.
20:35:02  <trevnorris>(in js i'd just wrap it in a function for scope)
20:37:17  <tjfontaine>trevnorris: I can see a few options, 1) you can move alloc into smbuffer (since it's unclear if anyone would use it without a buffer), 2) set the cb as an internal field, or wrap the external data in a struct { char* data; void *fptr; }
20:38:37  <isaacs>trevnorris: re upgrading, bnoordhuis reflects the official node stance on the matter. upgrade all the things.
20:38:45  <trevnorris>lol
20:38:49  <isaacs>(unless there's a good reason not to)
20:39:22  <isaacs>trevnorris: i'd love to hear more about what crabdude is upset over.
20:39:31  <isaacs>or at least, what his needs are.
20:40:41  <trevnorris>isaacs: will do. just give me a few.
20:41:26  <trevnorris>my ability to
20:41:33  <trevnorris>... that was for somewhere else.
20:42:26  * c4miloquit (Remote host closed the connection)
20:46:27  * rendarquit
20:46:28  * c4milojoined
20:46:29  * stagasquit (Ping timeout: 256 seconds)
20:50:55  <trevnorris>TooTallNate: do you know what callback_hint_ is used for?
20:52:12  <TooTallNate>trevnorris: it's your "user object" i think
20:52:13  <TooTallNate>right?
20:52:23  * bnoordhuisjoined
20:52:46  <trevnorris>oh, so the user can pass a void* for whatever they want.
20:52:58  <TooTallNate>trevnorris: ya, it's just an arbitrary pointer for whatever the user wants
20:53:07  <trevnorris>hm. ok
20:56:39  * piscisaureus_joined
20:57:11  * bnoordhuisquit (Ping timeout: 260 seconds)
20:57:12  * kazuponjoined
20:59:05  * piscisaureus_quit (Client Quit)
20:59:42  * c4miloquit (Remote host closed the connection)
21:02:35  * kazuponquit (Ping timeout: 255 seconds)
21:09:18  * `3rdEdenquit (Remote host closed the connection)
21:13:02  * `3rdEdenjoined
21:21:58  <indutny>isaacs: wanna do 0.10.x release?
21:22:32  <indutny>isaacs: we already have 16 commits from previous release
21:22:39  <indutny>ah, even more
21:22:42  <indutny>one is v8 bug fix
21:22:54  <indutny>for JSON.parse
21:28:50  <tjfontaine>isaacs: did you see that you had one of the rare all-green on !win32? https://github.com/joyent/node/pull/5253
21:31:14  <isaacs>orly!?
21:31:31  <isaacs>WOOOOWWW!!!!!
21:31:40  <isaacs>indutny:
21:31:52  <indutny>?
21:31:58  <indutny>count it yourself :)
21:32:00  <isaacs>er, indutny can you lgtm this?
21:32:03  <indutny>what?
21:32:08  <isaacs>https://github.com/joyent/node/pull/5253
21:32:10  <isaacs>so i can land it?
21:32:20  <indutny>sure
21:32:24  <indutny>give me 5 minutes
21:32:25  <isaacs>it's basically me modifying gne's patch, but now i'm a coauthor on it
21:32:26  <isaacs>sure
21:32:26  <indutny>dinner
21:37:47  <isaacs>gotta run to an appointment. i'll be back online a little bit later.
21:49:51  <trevnorris>TooTallNate: do you know why Buffer::New(const char*..." has the "const"?
21:50:02  <trevnorris>the other that has the callback doesn't have const
21:50:34  <TooTallNate>trevnorris: not sure to be completely honest… i'm not familiar with the rules of const in C
21:50:44  <tjfontaine>even worse, this is const in C++ :)
21:51:09  <trevnorris>basically it forces the data to be copied, instead of being used directly (at least that's what the comments say)
21:51:58  <tjfontaine>anyway, const char* usually signifies we're not going to touch your stuff, and char* means we're free to do what we want
21:52:06  <tjfontaine>s/touch/change/
21:52:51  <trevnorris>ah, ok.
21:53:15  <tjfontaine>there's probably a SO answer that goes on at length wrt to const rules though
21:54:16  <trevnorris>yeah
21:54:41  <trevnorris>almost have the basic implementation done. you guys can point out where I went wrong in code review =)
21:54:48  <trevnorris>(i'm not sure anymore)
21:58:43  <trevnorris>TooTallNate: you use Buffer.slice() much in your modules?
21:58:58  * kazuponjoined
21:59:30  <TooTallNate>trevnorris: ya, kinda
21:59:38  <TooTallNate>trevnorris: it's useful for parsing
21:59:48  <TooTallNate>(if that wasn't obvious :p)
22:00:25  <trevnorris>TooTallNate: ok. it's just slow (was, and still will be)
22:00:43  * `3rdEdenquit (Quit: Zzzzzzzzzzz gnite)
22:00:56  <trevnorris>because you need to attach the Persistent to the js object via Set*Field
22:00:56  <TooTallNate>trevnorris: i'll keep that in mind for future parsers :)
22:01:01  <trevnorris>ok =)
22:01:43  <trevnorris>TooTallNate: was thinking the other day. not sure this would go in core, but parsing a buffer means pulling it into the v8 heap, parsing, then writing it back out to external memory
22:02:01  <trevnorris>if we could sorta replicate the string methods on external buffers, they'd be much much faster.
22:02:53  <TooTallNate>trevnorris: you mean cause you convert to String first?
22:03:05  <trevnorris>and because you need to copy the memory twice
22:03:14  <TooTallNate>trevnorris: personally, i do more binary parsing, so they remain Buffer instances
22:03:19  <trevnorris>ah, cool.
22:03:39  <TooTallNate>but ya, that's what the "binary" encoding advocates say :\
22:03:44  * kazuponquit (Ping timeout: 252 seconds)
22:03:59  <TooTallNate>i.e. they want RegExp.match() and friends
22:04:04  <TooTallNate>to work on Buffers
22:04:15  <trevnorris>oh, mother....
22:04:17  * aledbfquit (Ping timeout: 252 seconds)
22:04:24  <trevnorris>that's definitely user-land material
22:04:32  <trevnorris>cool idea, but not core (imho)
22:05:07  <trevnorris>i mean, buffers already have a mother load of methods (all the read/write's)
22:08:43  <dostoyevsky>What happens if I call uv_write multiple times? Will the server get one big buffer or will it be like: finish write/uv_read_start cb/finish next write/uv_read_start cb ?
22:10:03  <MI6>joyent/node: isaacs v0.10 * c93af86 : stream: call write cb before finish event Since 049903e, an end callback - http://git.io/C_1NQg
22:10:24  <indutny>dostoyevsky: latter one
22:14:15  <trevnorris>indutny: i know generally namespaces start w/ lowercase, but for backwards compatibility i'm thinking Buffer should remain capital.
22:14:17  <trevnorris>thoughts?
22:18:00  * loladiroquit (Quit: loladiro)
22:20:06  * paddybyersquit (Remote host closed the connection)
22:20:23  * paddybyersjoined
22:28:25  <MI6>nodejs-v0.10: #120 UNSTABLE linux-ia32 (1/575) windows-x64 (5/575) windows-ia32 (5/575) http://jenkins.nodejs.org/job/nodejs-v0.10/120/
22:28:58  <indutny>trevnorris: wait what?
22:29:08  <indutny>just create Buffer class with static methods
22:29:10  <indutny>that should work
22:29:23  <indutny>or don't think about compatibility
22:29:26  <indutny>that might work too
22:32:10  * dominictarrquit (Quit: dominictarr)
22:32:18  <trevnorris>indutny: ok. have to look back through the commit log, but was having problems w/ the class approach.
22:32:28  <trevnorris>almost done, and you guys can probably tell me where I went wrong.
22:32:36  <indutny>can you shouw me how does it look now?
22:33:06  <trevnorris>sure, here's the module w/ the same functionality: https://github.com/trevnorris/smbuffer
22:36:03  * qmxchanged nick to qmx|away
22:39:02  * aledbfjoined
22:40:41  * loladirojoined
22:41:46  <indutny>ok, I'll look tomorrow
22:42:04  <trevnorris>k thanks.
22:42:13  * wolfeidauquit (Ping timeout: 240 seconds)
23:00:00  * kazuponjoined
23:04:32  * kazuponquit (Ping timeout: 255 seconds)
23:08:35  <trevnorris>anyone mind slapping on PR 5226?
23:09:57  <trevnorris>isaacs: let me know when you're back and i'll catch you up on the conversation w/ crabdude.
23:16:06  <isaacs>I AM BACK
23:16:07  <LOUDBOT>DID YOU KNOW THAT KERMIT THE FROG IS FROM EASTERN EUROPE? WHEN HE WAS YOUNG, KERMIT WAS A TAD-POLISH!
23:18:19  <isaacs>tjfontaine: i notice we get a lot of dns and timeout errors.
23:18:43  <tjfontaine>isaacs: yes, and I'm not entirely sure why
23:19:01  <isaacs>tjfontaine: do you think that those test failures are actual bad tests, or would it make sense to make the timeouts less severe on the build slaves?
23:19:04  <isaacs>or something?
23:19:10  <tjfontaine>oh
23:19:11  <tjfontaine>well
23:19:13  <tjfontaine>wait
23:19:20  * mmaleckichanged nick to mmalecki[fly]
23:19:21  <tjfontaine>which test are we talking about, on master?
23:19:24  <isaacs>trevnorris: testing PR 5226 now
23:19:30  <isaacs>tjfontaine: https://github.com/joyent/node/pull/5226
23:19:51  <tjfontaine>yes, those I'm nearly positive are related to a libuv change
23:20:29  <tjfontaine>https://github.com/joyent/libuv/commit/76d831e4 and its fix https://github.com/joyent/libuv/commit/3a8c3987d6dcc291caef9455461d9f7d5a3443e8
23:20:47  <tjfontaine>but I haven't sat down to look into it, I can do that here shortly
23:21:57  <tjfontaine>they're only failing on master, so
23:22:11  <isaacs>oh, ok
23:22:13  <isaacs>i see
23:23:01  * wolfeidaujoined
23:23:31  <isaacs>it'd be nice if we could change the target without the user force-pushing or creating a new pr
23:23:42  <tjfontaine>amen.
23:23:44  <MI6>joyent/node: Łukasz Walukiewicz v0.10 * 2e28832 : buffer: fix offset checks Fixed offset checks in Buffer.readInt32LE() an - http://git.io/b4jKjw
23:23:49  <isaacs>trevnorris: ^ thanks for the review
23:24:25  <trevnorris>isaacs: np.
23:24:26  * sgallaghquit (Remote host closed the connection)
23:26:05  <MI6>joyent/node: isaacs v0.8 * b2587b2 : http: Avoid EE warning on ECONNREFUSED handling This is a back-port of t - http://git.io/-aO6pw
23:26:20  <isaacs>i'm gonna do a v0.8
23:26:23  <isaacs>release
23:29:26  <trevnorris>isaacs: after a long conversation, we came down to 3 main points I wanted feedback on. think you can multitask for an easy one?
23:30:11  <trevnorris>(forgot context; w/ crabdude)
23:30:47  <trevnorris>anyone else failing "test-https-drain"?
23:30:50  <trevnorris>tjfontaine: ^
23:31:57  <tjfontaine>trevnorris: depending on the case, it's probably related to an indutny bug
23:32:28  <trevnorris>yeah. the error msg looks all fubar: "Error: 139741002405696:error:1408F119:SSL routines:SSL3_GET_RECORD..."
23:32:47  * mraleph1changed nick to mraleph[zzz]
23:33:02  <tjfontaine>trevnorris: on master, and how fresh?
23:33:15  <trevnorris>just pulled and tested on master.
23:34:06  <tjfontaine>ya I think it's missing a few commits from v0.10 that have been fixed
23:34:16  <trevnorris>ah, ok. thx
23:34:30  * wolfeidauquit (Remote host closed the connection)
23:41:05  <MI6>nodejs-v0.10: #121 UNSTABLE windows-x64 (5/575) windows-ia32 (5/575) http://jenkins.nodejs.org/job/nodejs-v0.10/121/
23:48:14  <MI6>joyent/node: isaacs created branch v0.8.23-release - http://git.io/gAIv4Q
23:48:38  <isaacs>trevnorris: yes, that's fixed in 0.10
23:48:44  <trevnorris>coolio
23:51:55  <MI6>joyent/node: isaacs v0.8.23-release * c67f8d0 : 2013.04.09, Version 0.8.23 (maintenance) * npm: Upgrade to v1.2.18 * ht - http://git.io/V2avDA
23:52:56  * brsonquit (Quit: leaving)
23:53:12  * brsonjoined
23:54:37  * paddybyersquit (Ping timeout: 256 seconds)
23:55:23  <MI6>nodejs-v0.8: #36 FAILURE windows-ia32 (3/470) linux-x64 (1/470) smartos-ia32 (1/470) osx-x64 (1/470) smartos-x64 (1/470) linux-ia32 (2/470) osx-ia32 (1/470) http://jenkins.nodejs.org/job/nodejs-v0.8/36/
23:58:24  <isaacs>shut up, jenkins, you're out of your element.
23:58:38  <tjfontaine>we're not talking about people who built the railroad, dude
23:59:03  <tjfontaine>Command exited with non-zero: cmd /c call g:\jenkins\buildwrap.bat x64 release nosign
23:59:06  <tjfontaine>balh.
23:59:33  <isaacs>yeah, it fails on v0.8, then you have to just build it again
23:59:42  <isaacs>doing them in parallel, i mean
23:59:46  <isaacs>sblom fixed it on 0.10
23:59:56  <tjfontaine>ya, I didn't realize it was v0.8