00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:08  * ircretaryjoined
00:01:15  * indexzerojoined
00:03:01  * daviddiasjoined
00:05:25  * rnowak_quit (Ping timeout: 245 seconds)
00:06:21  * rnowakjoined
00:07:51  * daviddiasquit (Ping timeout: 252 seconds)
00:10:26  * c4miloquit (Remote host closed the connection)
00:12:46  * brsonjoined
00:13:17  * thlorenzquit (Remote host closed the connection)
00:18:03  * calvinfojoined
00:19:49  * brsonquit (Ping timeout: 272 seconds)
00:22:13  * calvinfoquit (Ping timeout: 245 seconds)
00:24:14  * st_lukejoined
00:30:58  * kazuponjoined
00:31:16  * zz_karupanerurachanged nick to karupanerura
00:35:29  * st_lukequit (Remote host closed the connection)
00:37:54  * st_lukejoined
00:37:59  * m76quit (Read error: Connection reset by peer)
00:39:51  * st_lukequit (Remote host closed the connection)
00:48:19  * kazuponquit (Remote host closed the connection)
00:48:25  * kazuponjoined
01:12:02  * st_lukejoined
01:18:50  * calvinfojoined
01:20:52  * kazuponquit (Remote host closed the connection)
01:23:23  * calvinfoquit (Ping timeout: 252 seconds)
01:28:17  * indexzeroquit (Quit: indexzero)
01:34:04  * thlorenzjoined
01:53:28  * dap_quit (Quit: Leaving.)
02:03:57  * daviddiasjoined
02:08:35  * daviddiasquit (Ping timeout: 260 seconds)
02:11:55  * daviddiasjoined
02:16:37  * daviddiasquit (Ping timeout: 272 seconds)
02:19:36  * calvinfojoined
02:24:13  * calvinfoquit (Ping timeout: 272 seconds)
02:27:37  * inolenquit (Quit: Leaving.)
02:31:49  * kazuponjoined
02:36:23  * kazuponquit (Ping timeout: 245 seconds)
02:41:21  * calvinfojoined
02:42:24  * M28quit (Read error: Connection reset by peer)
02:42:50  * mikealjoined
02:45:33  * calvinfoquit (Ping timeout: 245 seconds)
02:56:24  * M28joined
02:59:21  <M28>this is weird
02:59:40  <M28>the tcp connection is made, but immediately followed by "connection reset by peer"
02:59:43  <M28>what could cause that?
03:02:38  <M28>it's not even sending any data
03:11:59  * daviddiasjoined
03:14:18  <M28>the client writes a 12 bytes message to the server, the server allocates a 64 KB buffer, then calls the read callback with that buffer, but nread = -4077
03:14:38  <M28>(in the case, uv asked for that allocation)
03:15:00  <M28>and both the client and the server receive "connection reset by peer"
03:16:19  * daviddiasquit (Ping timeout: 252 seconds)
03:22:23  <M28>doing a telnet to the server, it doesn't drop the connection
03:42:02  * calvinfojoined
03:44:54  * st_lukequit (Remote host closed the connection)
03:46:15  * calvinfoquit (Ping timeout: 245 seconds)
03:46:19  * st_lukejoined
03:49:20  * mikealquit (Quit: Leaving.)
03:50:59  * mikealjoined
03:50:59  * st_lukequit (Ping timeout: 272 seconds)
03:58:57  * mikealquit (Quit: Leaving.)
04:02:47  * brsonjoined
04:06:06  * daviddiasjoined
04:06:13  * mikealjoined
04:06:58  * indexzerojoined
04:08:56  * kazuponjoined
04:10:35  * daviddiasquit (Ping timeout: 252 seconds)
04:12:38  * mikealquit (Quit: Leaving.)
04:17:54  * inolenjoined
04:19:35  * mikealjoined
04:24:41  * abraxasjoined
04:29:14  * abraxasquit (Ping timeout: 246 seconds)
04:29:30  * guilleiguaranquit (Ping timeout: 240 seconds)
04:29:50  * txdvquit (Ping timeout: 240 seconds)
04:30:38  * txdvjoined
04:31:24  * guilleiguaranjoined
04:42:50  * calvinfojoined
04:47:05  * calvinfoquit (Ping timeout: 246 seconds)
05:00:02  * inolenquit (Quit: Leaving.)
05:03:03  * mikealquit (Quit: Leaving.)
05:04:19  * calvinfojoined
05:05:14  * calvinfoquit (Read error: Connection reset by peer)
05:05:36  * calvinfojoined
05:08:55  * mikealjoined
05:11:53  * mikealquit (Client Quit)
05:12:24  * brsonquit (Quit: leaving)
05:12:39  * mikealjoined
05:20:45  * indexzeroquit (Quit: indexzero)
05:27:59  * dcrostaquit (Quit: Textual IRC Client: www.textualapp.com)
05:28:23  * mikealquit (Quit: Leaving.)
05:45:49  <M28>oh my god
05:45:55  <M28>the problem was having #pragma pack(1) in the project
05:46:15  * stagasquit (Ping timeout: 245 seconds)
05:50:15  * thlorenzquit (Remote host closed the connection)
05:55:47  * calvinfoquit (Quit: Leaving.)
05:59:37  * kenperkins_quit (Read error: Connection reset by peer)
06:00:19  * kenperkinsjoined
06:03:02  * wolfeidauquit (Read error: Connection reset by peer)
06:03:35  * wolfeidaujoined
06:09:03  * inolenjoined
06:24:54  * calvinfojoined
06:25:41  * abraxasjoined
06:29:50  * abraxasquit (Ping timeout: 240 seconds)
06:41:30  <MI6>nodejs-v0.10-windows: #402 UNSTABLE windows-ia32 (11/606) windows-x64 (11/606) http://jenkins.nodejs.org/job/nodejs-v0.10-windows/402/
06:57:22  * calvinfoquit (Quit: Leaving.)
06:59:00  * m76joined
07:00:01  * mikealjoined
07:00:56  * daviddiasjoined
07:04:10  * indexzerojoined
07:05:23  * daviddiasquit (Ping timeout: 260 seconds)
07:17:10  * dsantiagojoined
07:24:20  * defunctzombiechanged nick to defunctzombie_zz
07:36:40  * wolfeida_joined
07:37:56  * rnowak_joined
07:42:42  * wolfeidauquit (*.net *.split)
07:42:42  * guilleiguaranquit (*.net *.split)
07:42:42  * rnowakquit (*.net *.split)
07:42:42  * Raynosquit (*.net *.split)
07:47:34  * AvianFluquit (Remote host closed the connection)
07:51:33  * wolfeida_changed nick to wolfeidau
07:54:27  * bajtosjoined
08:02:20  * rendarjoined
08:04:13  * kazuponquit (Remote host closed the connection)
08:05:37  * guilleiguaranjoined
08:05:37  * Raynosjoined
08:20:47  * inolenquit (Quit: Leaving.)
08:23:22  * calvinfojoined
08:26:35  <indutny>felicity: sup?
08:26:36  <indutny>heya
08:26:37  * abraxasjoined
08:26:39  <indutny>ah
08:31:17  * abraxasquit (Ping timeout: 272 seconds)
08:34:52  * kazuponjoined
08:50:47  * calvinfoquit (Quit: Leaving.)
08:51:50  * AvianFlujoined
08:56:35  * AvianFluquit (Ping timeout: 252 seconds)
08:56:39  * hzjoined
09:04:47  <MI6>joyent/libuv: saghul created branch patch-2 - http://git.io/AlpSGQ
09:07:09  <MI6>joyent/libuv: Andrius Bentkus master * 2025341 : doc: add readme link to all projects that use libuv. - http://git.io/Ds17pg
09:08:20  * kazuponquit (Ping timeout: 245 seconds)
09:21:28  * calvinfojoined
09:23:08  * calvinfo1joined
09:25:51  * calvinfoquit (Ping timeout: 240 seconds)
09:27:10  <indutny>tjfontaine: yt?
09:27:11  <indutny>isaacs: yt?
09:27:30  * calvinfo1quit (Ping timeout: 245 seconds)
09:27:56  * rvagg2quit (Quit: Connection closed for inactivity)
09:29:07  <indutny>tjfontaine: https://github.com/joyent/node/pull/6766
09:49:43  * daviddiasjoined
09:53:50  * daviddiasquit (Ping timeout: 240 seconds)
10:00:22  * calvinfojoined
10:04:35  * calvinfoquit (Ping timeout: 245 seconds)
10:05:05  * kazuponjoined
10:38:19  * kazuponquit (Ping timeout: 246 seconds)
10:49:38  * daviddiasjoined
10:52:15  * bajtosquit (Quit: bajtos)
10:53:55  * daviddiasquit (Ping timeout: 252 seconds)
11:04:02  * kazuponjoined
11:04:58  * felixgejoined
11:04:58  * felixgequit (Changing host)
11:04:58  * felixgejoined
11:18:24  * daviddiasjoined
11:19:19  * kazuponquit (Remote host closed the connection)
11:34:01  * karupanerurachanged nick to zz_karupanerura
11:37:51  * bajtosjoined
11:50:06  * kazuponjoined
11:57:17  * saghuljoined
11:57:55  <saghul>mind if I add https://github.com/thlorenz/libuv-dox to the documentation section of the README?
12:09:08  * kazuponquit (Ping timeout: 246 seconds)
12:18:14  <MI6>joyent/libuv: Saúl Ibarra Corretgé master * 7d23c1d : doc: add libuv-dox to the documentation section - http://git.io/lf9ENQ
12:35:33  <txdv>README of libuv?
12:38:39  <txdv>saghul: how come you don't have an opinion about the caller/callback based allocation of the buffer in uv_pipe_getsockname
12:45:17  <saghul>txdv hi there
12:45:23  <saghul>i'm a bit undecided
12:45:43  <txdv>why?
12:45:58  <txdv>you sond like my girlfriend talking about shoes
12:46:10  <saghul>on one hand, I always thought it might be a good idea to be able to register a global "allocator" thing
12:46:22  <saghul>so we'd call that, instead of malloc
12:46:56  <txdv>you pass the 'allocator' thing just like you do in in the read callback
12:46:56  <saghul>but when it comes to reading data from the network, alloc_cb comes really handy, so it wouldn't play that nice with this custom allocator thing
12:47:16  <txdv>you mean like a global allocator for the entire lib?
12:47:22  <saghul>yep
12:47:25  <txdv>overkill
12:47:34  <saghul>it's justa thought that crossed my mind
12:47:38  <txdv>even libgit2 doesn't do that and they have more allocations
12:48:02  <txdv>ill think about the pros and cons
12:48:09  <saghul>so, every time a function needs to allocate something it gets an "alloc_func" argument?
12:48:16  <txdv>because pointing to libgit2 and saying it is nonsense because they dont do it is a cheap excuse
12:48:23  <txdv>saghul: yeah
12:48:33  <saghul>I see
12:48:48  <saghul>I'll also think about it
12:49:47  * m76quit (Read error: Connection reset by peer)
12:50:18  <txdv>the uv_alloc_cb is designed so that you can provide a buffer which has LESS space
12:50:28  <txdv>but I don't really think that this is necessary here
12:50:35  <saghul>indeed
12:50:59  <txdv>just use the signature char*(int size) as the signature
12:55:27  <txdv>and even the resulting C code when you use my proposed interface is ok
12:55:41  <txdv>no need for additional allocations or more lines of code
12:57:18  <saghul>I don't disagree
12:57:20  <saghul>:-)
12:58:33  <txdv>pisci and indutny not commenting
13:01:39  * bajtosquit (Quit: bajtos)
13:02:04  <saghul>gtg, ttyl
13:02:12  * saghulquit (Quit: Textual IRC Client: www.textualapp.com)
13:02:46  * zhengjoined
13:03:27  * felixgequit (Quit: felixge)
13:09:01  * indexzeroquit (Quit: indexzero)
13:13:13  * felixgejoined
13:14:29  * rendar_joined
13:14:31  * rendar_quit (Excess Flood)
13:14:43  * rendarquit (Ping timeout: 252 seconds)
13:15:48  * kazuponjoined
13:17:54  * rendarjoined
13:20:08  * kazuponquit (Ping timeout: 245 seconds)
13:20:24  * felixgequit (Quit: felixge)
13:34:49  * felixgejoined
13:34:49  * felixgequit (Changing host)
13:34:49  * felixgejoined
14:01:37  * zhengquit (Read error: Connection reset by peer)
14:13:15  * piscisaureusjoined
14:31:27  * felixgequit (Quit: felixge)
14:36:34  * AvianFlujoined
14:39:41  * felixgejoined
14:39:55  <indutny>txdv: wut?
14:49:29  * bajtosjoined
14:52:13  * thlorenzjoined
14:55:54  * bajtosquit (Quit: bajtos)
15:06:35  * kazuponjoined
15:08:40  * pachetjoined
15:15:19  * hzquit
15:19:25  * hzjoined
15:22:38  * piscisaureusquit (Ping timeout: 245 seconds)
15:24:30  * m76joined
15:27:34  * hzquit
15:35:40  * defunctzombie_zzchanged nick to defunctzombie
15:47:13  * kazuponquit
15:49:26  * kazuponjoined
15:55:05  * piscisaureusjoined
15:55:28  * piscisaureusquit (Client Quit)
15:56:19  * kazuponquit
15:57:17  * kazuponjoined
15:58:02  <MI6>joyent/libuv: Fedor Indutny master * 08cafd0 : stream: fix uv__stream_osx_select - http://git.io/N02gng
16:16:23  <MI6>joyent/node: Fedor Indutny master * 96dffb1 : deps: update gyp to 828ce09 - http://git.io/mKUdbQ
16:17:47  * c4milojoined
16:20:07  * pachetquit (Quit: leaving)
16:29:37  * inolenjoined
16:38:09  * stagasjoined
16:48:27  <felicity>txdv: bit late, but i removed my custom fixed-sized block allocator, modern malloc()s are so fast it's unnecessary
16:51:19  * mikealquit (Quit: Leaving.)
16:51:47  <felicity>(ircd used to do that and it made a big difference, but that was back in the early 90s, in the time of SunOS 4)
17:02:33  * inolenquit (Quit: Leaving.)
17:28:07  * dap_joined
17:43:55  * inolenjoined
17:57:35  * titoquit (Read error: Operation timed out)
17:58:53  * c4miloquit (Remote host closed the connection)
18:01:33  * mikealjoined
18:04:15  * mikealquit (Client Quit)
18:04:52  * titojoined
18:08:27  * mikealjoined
18:10:22  * mikealquit (Client Quit)
18:10:37  * mikealjoined
18:20:14  * kazuponquit (Remote host closed the connection)
18:21:38  * inolenquit (Quit: Leaving.)
18:48:15  * c4milojoined
18:50:59  * kazuponjoined
18:52:58  <felicity>would a select() backend for libuv be accepted, so it could at least function on otherwise unsupported platforms?
18:53:08  * kazuponquit (Read error: Connection reset by peer)
18:53:35  * kazuponjoined
18:58:20  * kazuponquit (Ping timeout: 245 seconds)
18:59:08  * thlorenzquit (Remote host closed the connection)
19:03:38  * c4miloquit (Remote host closed the connection)
19:08:13  <rendar>felicity: isn't better poll() for that?
19:11:52  * mikealquit (Quit: Leaving.)
19:12:35  * c4milojoined
19:19:11  * titoquit (Ping timeout: 272 seconds)
19:22:49  <indutny>felicity: erm?
19:22:55  <indutny>felicity: we have a lot of other functionality
19:23:00  <indutny>felicity: for supported platforms
19:23:20  <indutny>felicity: what platform are we talking about anyway?
19:23:27  * titojoined
19:32:40  * mikealjoined
19:34:28  * mikealquit (Client Quit)
19:39:12  * st_lukejoined
19:50:55  * thlorenzjoined
19:54:25  * kazuponjoined
20:00:33  * kazuponquit (Ping timeout: 245 seconds)
20:09:33  <txdv>felicity: I was born in 89
20:15:59  * mikealjoined
20:25:07  * brsonjoined
20:27:48  * hzjoined
20:43:47  * inolenjoined
20:43:55  * inolenquit (Client Quit)
20:56:14  <txdv>indutny: contiki-os
20:56:20  <indutny>oh god
20:57:01  * kazuponjoined
20:57:27  <txdv>i'm just kidding
20:59:16  <txdv>I wonder as well
21:01:02  * indexzerojoined
21:01:14  * c4miloquit (Remote host closed the connection)
21:05:59  <felicity>indutny: no particular platform, and it's not something i'm planning to do right now. just aware that since i switched from libev i can only support a fairly small number of (albeit popular) platforms
21:06:17  <felicity>(HP-UX is missing for example, but i doubt anyone will use my software on there ;)
21:06:36  <indutny>haha
21:06:41  <indutny>well, you can always bug us
21:06:45  <indutny>once they will
21:06:54  * brsonquit (Quit: leaving)
21:07:05  <felicity>(more likely is Solaris 9 perhaps, i wonder if /dev/poll support would be doable... HP-UX has that as well)
21:07:27  <felicity>kind of a horrible interface though, you have to add listeners by write()ing a struct to the /dev/poll fd
21:10:00  <txdv>solaris 9 does run on x86?
21:10:08  <txdv>who the fuck uses solaris?
21:10:28  <felicity>txdv: every release since 2.1 runs on x86 ;)
21:10:45  <felicity>and Solaris was always fairly popular with Usenet servers (which is what my software is), although i think FreeBSD and Linux are more common nowadays
21:11:44  * c4milojoined
21:16:18  <indutny>oh people :)
21:16:30  <indutny>why not use openindiana?
21:17:51  <felicity>actually i'd probably use OmniOS, but all my stuff is freebsd anyway ;)
21:18:43  <txdv>you use freebsd on your desktop?
21:19:03  <felicity>well no, i mean server stuff. although i have used it in the past. (OS X right now)
21:20:30  <txdv>linux ftw
21:20:45  <indutny>felicity: hm... I can understand your reasons
21:20:47  <indutny>but honestly saying
21:20:53  <indutny>freebsd is not a best os right now
21:21:08  <indutny>considering all efforts made in solaris and ubuntu divisions :)
21:21:11  <txdv>what is the best os right now?
21:21:16  * c4miloquit (Remote host closed the connection)
21:22:19  <felicity>indutny: i prefer Solaris from a technology perspective but i find FreeBSD easier to manage than Solaris 10. i might revisit one of the Illumos distributions at some point
21:23:45  <indutny>txdv: you must be kidding
21:23:48  <indutny>surely windows :D
21:23:49  <indutny>hahaha
21:24:07  <txdv>what technology?
21:24:11  <txdv>what does solaris have to offer?
21:24:26  * indexzeroquit (Quit: indexzero)
21:24:26  <felicity>txdv: zones, ZFS, DTrace, crossbow, scalability
21:24:47  <indutny>yeah, exactly
21:25:03  <indutny>low level virtualization
21:25:05  <felicity>SMF, FMA, various other stuff I forget...
21:25:06  <indutny>aka
21:25:10  <indutny>better linux containers
21:25:15  <indutny>SMF is super cool too
21:25:23  <indutny>and yeah, dtrace!
21:25:29  <indutny>it don't really works anywhere else
21:25:37  * felicitywonders if there's an open souce Solaris Cluster yet, that was pretty neat too (way better than the Linux-HA crap)
21:25:41  <indutny>though, many tried and trying
21:25:48  <indutny>felicity: have no idea
21:25:56  <felicity>indutny: not tried DTrace on OS X but I was quite impressed with the XCode instrumentation tools
21:25:59  <indutny>https://blogs.oracle.com/pfuetz/entry/solaris_cluster_is_no_opensource
21:26:02  <indutny>felicity: meh
21:26:05  <felicity>although obviously they're nowhere near as flexible as dtrace
21:26:10  <indutny>felicity: the visuals are most impressing
21:26:19  <indutny>underlying data is boring :)
21:26:31  <felicity>well, the graph was kind of silly but it's easy to drill down
21:26:46  <felicity>(compared to, like, gprof, which is what i usually use... or VTune which is way overcomplicated for simple profiling)
21:27:52  <indutny>well
21:27:58  <indutny>gprof is quite fucked
21:28:04  <indutny>I don't really enjoy instrumenting my code
21:28:13  <indutny>that never works well in production :)
21:30:14  * kazuponquit (Ping timeout: 240 seconds)
21:31:11  <txdv>don't make me install solaris
21:31:50  <felicity>hmm, since libuv does IOCP, i bet OpenVMS could be supported easily. its AST I/O system is what IOCP was based on
21:32:03  <felicity>(not that i have any interest in actually doing that...)
21:35:17  <txdv>does libev support them all?
21:36:13  <felicity>no, libev is polling only so it can't do either efficiently. they work by having the kernel asynchronously read into a pre-allocated buffer
21:36:19  * felixgequit (Ping timeout: 246 seconds)
21:37:22  <felicity>which, actually is a much more sensible way to do it as the kernel can copy data while the program handles other things
21:39:28  * daviddiasquit (Ping timeout: 240 seconds)
21:46:19  * indexzerojoined
21:49:52  * c4milojoined
21:51:35  * indexzeroquit (Quit: indexzero)
21:53:41  * c4miloquit (Remote host closed the connection)
21:56:59  * inolenjoined
21:59:17  * c4milojoined
21:59:28  * m76quit (Read error: Connection reset by peer)
22:03:04  * st_lukequit (Remote host closed the connection)
22:16:58  <txdv>today is a great day to code
22:22:09  <felicity>i write all my code over christmas
22:22:38  * felixgejoined
22:22:38  * felixgequit (Changing host)
22:22:38  * felixgejoined
22:24:52  * rendarquit
22:26:56  * kazuponjoined
22:27:03  * stagasquit (Ping timeout: 260 seconds)
22:28:03  * felixgequit (Ping timeout: 245 seconds)
22:31:51  * kazuponquit (Ping timeout: 240 seconds)
22:34:51  * felixgejoined
22:34:51  * felixgequit (Changing host)
22:34:51  * felixgejoined
22:42:16  * felixgequit (Quit: http://www.debuggable.com/)
22:48:59  <felicity>is there a way to call a function at the next i/o loop iteration once (without having to do it myself with a prepare or idle watcher)?
22:51:27  <felicity>(sometimes i uv_read_stop a client, and when i uv_start it again i want to process any pending data in its buffer)
22:54:18  <txdv>maybe async_t?
22:55:08  <txdv>uv_async_send
22:56:47  <txdv>without having to do it yourself?
22:56:59  <felicity>hmm, i suppose, async seems a bit heavyweight for this
22:56:59  <txdv>You want me to code that part for you? :>
22:57:12  <felicity>txdv: well, it's easy enough to do with a prepare watch but iirc libev had a function for this
23:01:11  <txdv>next i/o loop iteration
23:01:18  <txdv>like you poll one event and then do something?
23:02:26  <felicity>well, the client sent a command so now i ignore it (uv_read_stop) while i process the command. then i reply to the command and unignore it (uv_read_start), but what if i ready 2 commands from it in the previous read callback?
23:02:50  <felicity>the second command will never get processed until another i/o event occurs, because libuv doesn't know there's data remaining in my buffer
23:04:15  <txdv>you mean 2 commands are in the buffer?
23:04:22  <felicity>yes
23:04:46  <txdv>before you do uv_read_start you check if the entire buffer has been processed?
23:05:36  <felicity>that's what i'm doing for now, but now i have to call my read handler from the work queue handler
23:05:50  <felicity>which requires being very careful that when the read handle returns, perhaps the client had been destroyed or is otherwise in some odd state
23:07:14  <txdv>I don't know
23:12:43  <txdv>sry too tired to think about it
23:12:58  <txdv>im going to sleep, ill take a look tommorow, maybe ill come up with something
23:16:40  * c4miloquit (Remote host closed the connection)
23:27:59  * kazuponjoined
23:32:41  * kazuponquit (Ping timeout: 246 seconds)
23:34:33  * AvianFluquit (Remote host closed the connection)