00:00:55  <bnoordhuis>igorzi: https://github.com/joyent/libuv/commit/cfa1423 <- that's breaking fs_file_noent on unix
00:02:06  <igorzi>bnoordhuis: are you returning -1 for sync failure?
00:02:31  <bnoordhuis>igorzi: probably not
00:02:42  <bnoordhuis>er, i mean yes
00:03:17  <bnoordhuis>that's what the other functions in src/unix/fs.c do too
00:04:26  <igorzi>ok, so you're already doing what ryah wanted in the api, but windows impl isn't there yet (we decided to do this after 0.5.6)
00:06:00  <igorzi>i'll update the windows impl to also do this (probably on monday), and i'll update the test
00:06:17  <bnoordhuis>cool
00:07:06  <DrPizza>fyi
00:07:12  <DrPizza>I am going to be out of the country for the next 3 weeks
00:07:16  <DrPizza>so I will be able to IRC
00:07:18  <DrPizza>but not do any programming
00:07:25  <DrPizza>I realize I don't do much anyway
00:08:49  <bnoordhuis>DrPizza: where are you going to?
00:08:57  <piscisaureus>DrPizza: no gcc on ur laptop?
00:08:57  <piscisaureus>DrPizza: but where are you going?
00:08:59  <DrPizza>US, for BUILD.
00:09:13  <DrPizza>piscisaureus: dude my laptop has a 1.2 GHz core 2 duo with a 64 GB SSD
00:09:15  <piscisaureus>DrPizza: oh, say hi to felix :-)
00:09:21  <DrPizza>no way in hell I have room for visual studio on that thing
00:09:26  <piscisaureus>heh
00:09:35  <piscisaureus>saying hi to felix ftw!
00:10:05  <DrPizza>well I will probably be in the press room for the most part
00:10:31  <bnoordhuis>it's a three week event?
00:10:56  <DrPizza>no
00:11:26  <DrPizza>I will then be in texas for a couple of weeks
00:11:33  <DrPizza>before finishing up with some meetings in chicago
00:17:17  <piscisaureus>all my hard drives are full :-(
00:25:49  * ericktquit (Quit: erickt)
00:26:23  * graydonquit (Quit: Leaving.)
00:37:36  <bnoordhuis>piscisaureus: i don't understand why sigaction(signal, &sa, NULL) where sa.sa_handler == SIG_IGN doesn't actually block the signal...
00:38:00  <piscisaureus>bnoordhuis: the signal gets blocked
00:38:06  <bnoordhuis>or rather, i suspect something/somewhere is un-ignoring it again
00:38:08  <piscisaureus>bnoordhuis: it doesn't kill the process right
00:38:24  <bnoordhuis>right
00:38:33  <bnoordhuis>so it's just gdb reporting it?
00:38:37  <piscisaureus>bnoordhuis: at least on my box the process never got killed by sigpipe
00:38:38  <piscisaureus>yes
00:38:41  <piscisaureus>gdb sees it
00:38:51  <piscisaureus>we were all confused, because the process did crash
00:38:56  <piscisaureus>but that was due to sigsegv
00:39:32  <bnoordhuis>right
00:39:33  <bnoordhuis>Signal Stop Print Pass to program Description
00:39:34  <bnoordhuis>SIGPIPE Yes Yes Yes Broken pipe
00:40:07  <piscisaureus>bnoordhuis: what's that?
00:40:21  <bnoordhuis>the output of `info signals SIGPIPE` (in gdb)
00:40:22  <indutny>congrats on 0.5.6! :)
00:40:28  <piscisaureus>thanks indutny
00:40:38  <piscisaureus>now we have time for you again
00:40:45  <piscisaureus>:-)
00:40:51  <bnoordhuis>`handle SIGPIPE nostop` makes it not stop
00:40:52  <indutny>:) neat!
00:41:23  <bnoordhuis>i think that was the default in gdb 6, that's probably what tripped me up
00:41:35  <DrPizza>signals suckkkkk
00:42:02  <bnoordhuis>one of the lesser executed ideas in POSIX, yes
00:42:47  <bnoordhuis>or rather, they were probably a good idea at the time
00:42:53  <bnoordhuis>but then threads came along
01:00:19  <bnoordhuis>piscisaureus: links in the docs are broken
01:00:31  <bnoordhuis>http://nodejs.org/docs/v0.5.6/api/buffers.html <- click on e.g. 'new Buffer(size)'
01:00:44  <bnoordhuis>there's an extra underscore
01:00:52  <piscisaureus>meh
01:00:56  <piscisaureus>fuckup
01:01:09  <piscisaureus>I wonder where that comes from
01:01:29  <bnoordhuis>it's odd because it doesn't happen when i run `make doc`
01:01:42  <piscisaureus>bnoordhuis: can you update the docs then
01:01:45  <piscisaureus>just overwrite
01:01:54  <bnoordhuis>sure
01:02:08  <piscisaureus>bnoordhuis: maybe it's because I used mingw
01:03:09  <piscisaureus>bnoordhuis: or do you want me to do it?
01:03:21  <bnoordhuis>piscisaureus: no, i'll fix it
01:03:34  <piscisaureus>bnoordhuis: also run make website-upload hten
01:03:46  * piscisaureusdemanding
01:03:59  <bnoordhuis>aww, i was just going to rsync the changes :/
01:04:16  <piscisaureus>bnoordhuis: i can do that, then
01:04:46  <piscisaureus>good to know :-)
01:05:27  <bnoordhuis>ls -l web/nodejs.org/docs/latest
01:05:27  <bnoordhuis>lrwxrwxrwx 1 node other 6 Aug 26 23:26 web/nodejs.org/docs/latest -> v0.5.5
01:05:41  <bnoordhuis>^ i'll fix that too but for next time
01:05:43  <piscisaureus>oh ryah didn't tell me that
01:07:10  <bnoordhuis>i've rsync'ed the docs, updated the symlink
01:11:34  <bnoordhuis>kind of wonky that that docs live in three different places
01:16:15  <piscisaureus>yes
01:16:27  <piscisaureus>bnoordhuis: you did also the website-upload thing?
01:16:29  <piscisaureus>I can do that too
01:16:45  <bnoordhuis>haven't done that
01:17:05  <bnoordhuis>takes forever on my adsl connection :/
01:17:41  <piscisaureus>here too
01:17:53  <piscisaureus>it's mainly the x-atlantic latency that does it
01:18:08  <bnoordhuis>the ~115K/s doesn't help either though
01:18:38  <piscisaureus>did it. ok
01:19:34  <piscisaureus>yes it is really wonky
01:20:48  <piscisaureus>it's also much more convenient to put the entire website in a git repo and have a push hook on the other side
01:22:19  <bnoordhuis>^ that
01:22:48  <piscisaureus>bnoordhuis: ?
01:23:07  <bnoordhuis>piscisaureus: as in "that's a good idea"
01:23:16  <piscisaureus>:-)
01:26:51  <piscisaureus>bnoordhuis: can I remount my root fs readonly?
01:26:59  <piscisaureus>like, force that to happen
01:27:05  <bnoordhuis>yes
01:27:15  <piscisaureus>how?
01:27:19  <piscisaureus>I never manage to
01:27:28  <bnoordhuis>mount -o ro /dev/sda1 /
01:27:44  <bnoordhuis>but you need to switch to single-user mode first
01:28:21  <bnoordhuis>`mount -o remount,ro /dev/sda1 /` <- sorry, that
01:28:53  <piscisaureus>bnoordhuis: also, is there a way to reinit my display mode
01:28:59  <bnoordhuis>`reset`?
01:29:04  <piscisaureus>yes
01:29:24  <bnoordhuis>that's the command :)
01:30:18  <piscisaureus>hmm
01:30:20  <piscisaureus>doesn't work :-(
01:30:27  <piscisaureus>the problem is
01:30:39  <piscisaureus>my screen looks really wonky if it has been in graphics mode before
01:30:48  <piscisaureus>the only way to get a proper text terminal is rebooting the computer
01:30:59  <bnoordhuis>oh, i thought you meant how to reset the console
01:31:07  <bnoordhuis>ehm... define 'wonky'
01:32:47  <piscisaureus>hmm, can't make a screenshot
01:32:51  <piscisaureus>but basically blue
01:32:54  <piscisaureus>with bars
01:33:06  <piscisaureus>and all characters the size of house
01:33:34  <piscisaureus>and all characters wrapping without going to the next line
01:33:37  <piscisaureus>but overlapping each other
01:33:54  <bnoordhuis>like 320x200 mode?
01:34:00  <bnoordhuis>or?
01:34:32  <piscisaureus>bnoordhuis: http://twitpic.com/6ijl5k/full
01:34:34  <piscisaureus>left half
01:35:23  <bnoordhuis>that's... interesting
01:35:38  <bnoordhuis>but that's windows
01:35:46  <piscisaureus>bnoordhuis: the left half is linux
01:35:57  <bnoordhuis>are you running colinux?
01:36:19  <piscisaureus>no wilux
01:36:47  <piscisaureus>bnoordhuis: no, sorry, that's virtualbox
01:37:02  <piscisaureus>It has a nice integration mode thoug
01:37:08  <bnoordhuis>1 sec, mees is wakker
01:37:43  <DrPizza>is colinux still around?
01:37:55  <DrPizza>wow it is
01:37:59  <DrPizza>still updated too
01:41:12  <piscisaureus>what is that ?
01:42:51  <bnoordhuis>a gateway drug
01:43:47  <ryah>bnoordhuis: happy birthday!!!
01:43:51  <DrPizza>piscisaureus: runs linux as a process under windows
01:44:09  <bnoordhuis>thanks, ryah :)
01:44:20  <piscisaureus>DrPizza: sounds like what I need
01:44:51  <DrPizza>but non-virtualized
01:44:59  <DrPizza>it carves a chunk of memory off for linux
01:45:12  <DrPizza>and when the linux process is running, it has full ring 0 control of the CPU
01:45:36  <piscisaureus>huh but it doesn't fuck up memory mapping tables etc
01:45:40  <piscisaureus>and interrupt handlers
01:46:13  <DrPizza>I think interrupts get routed to windows, not sure
01:46:55  <DrPizza>but it works by magic
01:47:59  <piscisaureus>vbox desktop integration is magic too
01:49:45  <piscisaureus>but anyway
01:56:03  <piscisaureus>DrPizza: I am even more surprised that reactor is still under development
01:56:15  <piscisaureus>that is like the most pointless project ever
01:56:17  <DrPizza>reactor?
01:56:19  <DrPizza>reactos?
01:56:20  <piscisaureus>and such a huge undertaking
01:56:22  <piscisaureus>reactos
01:56:27  <DrPizza>yeah
01:56:29  <piscisaureus>sorry typo
01:56:31  <DrPizza>it's stupid as hell
01:56:33  <DrPizza>what's worse
01:56:36  <DrPizza>they're reimplementing NT
01:56:45  <piscisaureus>yes, that's the weird thing
01:56:49  <DrPizza>with apparently not even changing the design
01:56:54  <DrPizza>so all of NT's mistakes?
01:56:55  <DrPizza>replicated!
01:56:58  <piscisaureus>heh
01:57:23  <piscisaureus>the point seems to be to exactly clone everything
01:57:28  <piscisaureus>even all internal structures etc
01:57:28  <DrPizza>yep
01:57:45  <DrPizza>now if they were like 99% there and said "right, now we're going ot make it better" I could almost see the point
01:57:49  <DrPizza>but it's still demented
01:58:12  <piscisaureus>I feel like submitting a patch to it
01:58:30  <DrPizza>me too: rm -rf
01:58:38  <piscisaureus>rd /s/q that is
01:59:08  <piscisaureus>ghe ghe
01:59:12  <piscisaureus>that's fun
01:59:52  <DrPizza>but still
01:59:57  <DrPizza>at least NT hsa apps
02:00:02  <DrPizza>what about haiku!
02:00:15  <DrPizza>working to resurrect an oeprating system that was never alive
02:01:58  <piscisaureus>at least that gives you the freedom to make your own mistakes
02:02:15  <DrPizza>you would think
02:02:16  <DrPizza>but no
02:02:22  <DrPizza>they're making BeOS's mistakes instead!
02:03:00  <piscisaureus>I don't really know what beos did wrong
02:03:14  <DrPizza>"pervasive multithreading"
02:03:38  <DrPizza>issues with the message server dropping messages on the floor, hanging applications
02:03:43  <DrPizza>total disregard for security
02:04:52  <piscisaureus>meh
02:05:03  <piscisaureus>I think I'd hate os design
02:05:07  <piscisaureus>I'd do a gui layer
02:05:36  <piscisaureus>I mean, X + gnome/kde
02:05:38  <piscisaureus>that just sucks
02:05:43  * brsonquit (Ping timeout: 252 seconds)
02:05:45  <piscisaureus>ubuntu unity *puke*
02:05:45  <DrPizza>lol
02:06:01  <piscisaureus>how come these oss developers can create great kernels but only sucky guis
02:09:34  <DrPizza>I think the didfference is that a kernel has lots of nice small bits
02:10:25  <DrPizza>so one person can write a fancy new scheduler
02:10:57  <piscisaureus>sure
02:11:04  <piscisaureus>but the kernel needs "vision" too
02:11:06  <DrPizza>whereas one person can't write a whole GUI with a load of GUI apps
02:11:08  <DrPizza>do you think?
02:11:12  <DrPizza>I'm not sure linux has vision
02:11:25  <piscisaureus>no, but what they should do is write a style book
02:11:42  <piscisaureus>DrPizza: maybe linux has no vision but
02:11:54  <piscisaureus>they would never even consider landing a c++ patch :-)
02:12:02  <DrPizza>lol
02:12:02  <DrPizza>true
02:12:09  <DrPizza>but they'r ehappy to reimplement v-tables in c
02:12:46  <piscisaureus>I wonder if it was possible to create an oss style book
02:12:49  <piscisaureus>that really rocks
02:13:37  <piscisaureus>I mean there's common wisdom that you can't crowd-source design, so node still has this godawful website
02:13:48  <DrPizza>node's website is growing on me
02:13:53  <piscisaureus>but I think that's just bullshit
02:14:04  <piscisaureus>it's a matter of attracting the right people
02:14:18  <DrPizza>I wish ryah would allow C++ patches to libuv
02:14:25  <DrPizza>or MS would allow C99 patches to MSVS
02:14:33  <DrPizza>so we could mix declarations and use
02:14:53  <piscisaureus>we say no because our vision is that that's not good
02:15:11  <piscisaureus>so if you crowdsource design, don't take fancy fonts, or purple
02:15:15  <piscisaureus>of animations
02:15:28  <piscisaureus>or autoscrolling sidebars
02:15:34  <piscisaureus>I am not a good designer
02:15:40  <piscisaureus>but it shouldn't be so hard
02:16:31  <piscisaureus>Instead of having everyone pick it's own colors, use a color scheme
02:16:52  <bnoordhuis>piscisaureus: i'm not convinced, design is one of those devil-in-the-details things
02:17:05  <piscisaureus>bnoordhuis: code is also devil in details
02:17:28  <bnoordhuis>yes, and there's a big difference between the budding amateur and the professional developer
02:17:40  <piscisaureus>yes, so
02:17:43  <piscisaureus>I am an amateur
02:18:24  <piscisaureus>my patches land and nobody compains (except for DrPizza)
02:18:48  <bnoordhuis>you've been programming for a couple of years
02:18:56  <bnoordhuis>how many years design experience do you have?
02:19:08  <piscisaureus>3 or so
02:19:11  <DrPizza>design is hard
02:20:03  <bnoordhuis>it's not a big deal for the node website, we could grab an off-the-shelf theme and chop it up
02:20:14  <piscisaureus>of course not
02:20:20  <piscisaureus>that's no fun
02:20:27  <piscisaureus>i should add it to my bucket list
02:20:42  <piscisaureus>after finishing phode, attempt oss design
02:20:51  <bnoordhuis>start with blog.nodejs.org, it's hideous :)
02:22:01  <piscisaureus>well that node.js org background color ...
02:22:05  <piscisaureus>that's terrible
02:22:20  <piscisaureus>it's like the goo I grap after eating too much spinach
02:22:23  <piscisaureus>*crap
02:22:43  <piscisaureus>with small green leaves in it
02:23:04  <piscisaureus>but ok, colors are a matter of taste
02:26:43  <DrPizza>I like the blog.nodejs.org scheme
02:26:46  <DrPizza>it's gentle on my eyes
02:27:39  <piscisaureus>I like light better than dark
02:27:45  <piscisaureus>but maybe that's because I am a windows user
02:28:20  <piscisaureus>nodejs.org also stands out because of the total lack of imagery
02:28:41  <piscisaureus>I wonder if that is because ryah doesn't like pictures or because he just didn't feel like adding them
02:29:24  <DrPizza>I think the big thing the site needs is an intro to node that isn't watching ryah on youtube
02:31:34  <piscisaureus>DrPizza: it's there: http://nodejs.org/#about
02:33:04  <DrPizza>yeah I had in mind something more code-y and less word-y
02:39:18  * ericktjoined
02:41:09  <erickt>So I'm adding pointer checking to the user facing functions. How should I handle the loop being NULL? just return -1? Or should I set the system errno to EINVAL?
02:41:35  <piscisaureus>erickt: you should just assert imo
02:41:47  <piscisaureus>I mean null pointer == bug right?
02:42:21  <piscisaureus>bnoordhuis DrPizza - ?
02:42:33  <DrPizza>agreed
02:42:38  <DrPizza>offensive programming
02:42:40  <DrPizza>fail fast
02:42:41  <DrPizza>fail hard
02:42:47  <bnoordhuis>piscisaureus: yes, bug
02:42:48  <DrPizza>don't coddle bugs
02:43:09  <piscisaureus>although the interesting thing is
02:43:17  <piscisaureus>what's the point of assert(loop == null)
02:43:24  <piscisaureus>you will fail hard anyway then
02:43:54  <DrPizza>I'd rather fail with an assert than a randomnull pointer error
02:43:59  <DrPizza>or protection fault
02:44:29  <piscisaureus>erickt: what's the motivation of doing this?
02:44:55  <piscisaureus>*for
02:46:35  <erickt>I just saw extra error handling done on uv_getaddrinfo that wasn't done on other functions
02:47:24  <piscisaureus>erickt: it's okay, but it's not terribly important I think
02:47:54  <erickt>I was there, it's a quick fix :)
02:47:55  <piscisaureus>erickt: if you like doing stuff, go add stdio :-)
02:48:26  <erickt>no! don't tempt me! I got to pop my stack!
02:48:31  <erickt>:)
02:49:26  <piscisaureus>erickt: are you a libuv user btw?
02:49:57  <erickt>the rust language is using it, I was just trying to get uv_getaddrinfo to work for and I haven't gotten away yet :)
02:50:12  <piscisaureus>oh you are also a rust guy
02:50:18  <piscisaureus>there are so many of them :-/
02:52:01  <ryah>https://github.com/joyent/node/commit/b49bec55806574a47403771bce1ee379c2b09ca2#commitcomment-580745
02:53:31  <bnoordhuis>hah
02:54:32  <piscisaureus>heh
02:54:38  <piscisaureus>koichik++
02:54:43  <piscisaureus>he should be the next release manager
03:01:20  <piscisaureus>I am going
03:01:34  <piscisaureus>I didn't do anything useful after the release
03:01:40  <piscisaureus>bnoordhuis: you should sleep too
03:01:55  <piscisaureus>bnoordhuis: I need you to be fresh tomorrow to get the hashmaps done
03:02:03  <bnoordhuis>haha, phode ftw
03:02:14  <bnoordhuis>sleep tight, piscisaureus
03:02:17  <piscisaureus>For The Weekend
03:02:21  <piscisaureus>yes
03:07:13  * bnoordhuisquit (Ping timeout: 260 seconds)
03:19:16  <CIA-52>node: Ryan Dahl master * r8821eb2 / doc/index.html : Correct date - http://git.io/ajebjA
04:34:51  * brsonjoined
04:38:44  <dmkbot>joyent/node: brighthas: A module and B module depend, then have bug. - https://github.com/joyent/node/issues/1677
04:45:52  * piscisaureusquit (Read error: Connection reset by peer)
05:16:30  <indutny>ryah: ping
05:21:47  <indutny>I'm going to implement breakpoints insertion and management, how do you think it looks better - breakpoints.add, breakpoints.list, ... or as separate commands?
08:24:33  <ryah>indutny: oh - im not sure
08:24:45  * mralephjoined
08:24:45  <ryah>shorter commands are better though
08:47:22  <CIA-52>libuv: Erick Tryzelaar master * refa1b54 / (4 files in 4 dirs):
08:47:22  <CIA-52>libuv: Subclass uv_getaddrinfo_t from uv_req_t.
08:47:22  <CIA-52>libuv: This patch also fixes #155. Since we no longer
08:47:22  <CIA-52>libuv: memset clear the uv_getaddrinfo_t, the user can
08:47:22  <CIA-52>libuv: now set the `uv_getaddrinfo_t->data` field without
08:47:22  <CIA-52>libuv: problems. - http://git.io/5jEkMw
08:57:11  * mralephquit (Quit: Leaving.)
09:25:09  * mralephjoined
10:33:24  <indutny>ryah: hey! are you still there?
10:33:37  <indutny>can you please merge my vm's fix
10:34:03  <indutny>it's very uncomfortable to do development of debugger feature and having branch w/o those commits
10:34:11  <indutny>s/having/have
10:34:20  <indutny>oh 3:34 am in SF
10:35:05  <indutny>mraleph: hi! are you familiar with v8 debugger? can I ask you about one strange + unexpected behavior?
11:00:40  <mraleph>indutny: you can try ;-)
11:02:08  <indutny>mraleph: cool :) I'm working on nodejs debugger and when trying to debug this script https://gist.github.com/1202987 , after catching `debugger` break event - everything that I'm trying to evaluate on script's host running with BIG delay and 100 % cpu. What can cause this?
11:02:17  <indutny>am I doing something wrong?
11:03:50  <indutny>and next question, don't know why, when calling stepaction=next debugger sometimes goes 'inside' require() statement (Module._load, actually)
11:04:03  <indutny>s/sometimes/everytime
11:04:12  <indutny>any ideas?
11:04:15  <mraleph>hmm
11:04:30  <mraleph>sounds wrong
11:04:39  <mraleph>try filing bug against debugger if it reproable
11:05:09  <mraleph>it was about the second question ;-)
11:05:16  <indutny>ok :)
11:05:50  <mraleph>regarding the first question: well try attaching gdb and take a look wtf is going on
11:05:56  <indutny>I'll fill it when ryah merge one vm fix on which my branch is relying now
11:07:00  <mraleph>if cpu is consumed somewhere in v8 -> file a bug against v8, if it is in the node -> file a bug against node
11:07:06  <mraleph>simple as that :-)
11:07:12  * brsonquit (Quit: leaving)
11:07:26  <indutny>haha :)
11:07:29  <indutny>ok
11:07:39  <indutny>I'll try to find out how that gdb thing works :)
11:07:44  <indutny>haven't tried it yet
11:08:49  <mraleph>для всего есть первый раз
11:09:41  <indutny>mraleph: ага. looks like cpu load starts on backtrace call
11:11:10  <indutny>mraleph: what is `frame` ?
11:12:43  <mraleph>frame… how should I put it… it is execution context of one function… aka stack frame…
11:13:44  <indutny>ok
11:18:07  <indutny>ok, so I figured out that I actually don't need to request this backtrace :)
12:01:33  * mralephquit (Ping timeout: 252 seconds)
12:08:32  * mralephjoined
12:28:44  <dmkbot>joyent/node: pimvdb: Feature request: passing an object to emitter.on - https://github.com/joyent/node/issues/1678
13:03:44  <dmkbot>joyent/node: rootslab: UDP datagram size. - https://github.com/joyent/node/issues/1679
13:08:14  * dmkbotquit (Remote host closed the connection)
13:08:28  * dmkbotjoined
13:55:19  * dmkbot1joined
13:57:38  * dmkbotquit (Ping timeout: 260 seconds)
14:45:16  <dmkbot1>joyent/libuv: erickt: Fixed a typo that breaks windows build - https://github.com/joyent/libuv/issues/183
14:49:18  <CIA-52>libuv: Erick Tryzelaar master * raf936a9 / src/win/getaddrinfo.c : Fix a typo that broke windows compilation. - http://git.io/XbVK7w
14:55:16  <dmkbot1>joyent/node: ry: test-child-process-ipc broken on unix - https://github.com/joyent/node/issues/1655
14:55:17  <dmkbot1>joyent/node: piscisaureus: windows/spawn asserts w/ invalid argument - https://github.com/joyent/node/issues/1659
14:55:18  <dmkbot1>joyent/node: mranney: https server emits uncatchable errors - https://github.com/joyent/node/issues/1577
14:59:38  * piscisaureusjoined
15:00:16  <dmkbot1>joyent/libuv: erickt: Fix compiling windows - https://github.com/joyent/libuv/issues/184
15:00:17  <dmkbot1>joyent/libuv: erickt: Fix compiling on windows - https://github.com/joyent/libuv/issues/184
15:02:44  <piscisaureus>erickt: I landed that typo fix already
15:16:38  <indutny>morning!
15:16:44  <erickt>piscisaureus: :)
15:17:12  <piscisaureus>indutny: afternoon is more like it :-)
15:18:19  <erickt>sorry about that
15:18:28  <piscisaureus>erickt: never mind
15:21:06  <indutny>piscisaureus: anyway :)
15:24:45  <indutny>http://code.google.com/p/v8/issues/detail?id=1639&q=debug&sort=-stars&colspec=ID%20Type%20Status%20Priority%20Owner%20Summary%20HW%20OS%20Area%20Stars
15:24:55  <indutny>actually, http://code.google.com/p/v8/issues/detail?id=1639
15:24:58  <indutny>very nice
15:25:23  <indutny>and nobody cares
15:26:07  <piscisaureus>indutny: who doesn't care?
15:26:10  <indutny>piscisaureus: any plans to pull my stuff in master
15:26:13  <indutny>piscisaureus: v8 guys :P
15:26:24  <indutny>hehe
15:26:29  <indutny>just a joke
15:26:31  <indutny>mostly
15:27:54  <piscisaureus>indutny: well... this is a problem at times. Unless mraleph solves your problem rightaway there is no way of telling whether the v8 bug will even be fixed, let alone when
15:28:07  <piscisaureus>indutny: but, do you have a .js program that triggers this bug
15:28:16  <indutny>piscisaureus: node debugger
15:28:16  <indutny>:D
15:28:17  <indutny>haha
15:29:18  <indutny>brb
15:29:20  <piscisaureus>indutny: is it not possible to create a .js file that just triggers this
15:29:32  <piscisaureus>without having to enter stuff in the repl
15:29:40  <piscisaureus>because I can't debug that :-/
15:30:16  <dmkbot1>joyent/node: indutny: High-level debugger API - https://github.com/joyent/node/issues/1667
15:35:08  <mraleph>I should be even possible to repro it with pure d8 build if there is a bug… with no C++ code involved
15:35:12  <mraleph>*it should be
15:39:26  <mraleph>indutny: does it happen if you run node with --noopt?
15:46:38  <piscisaureus>mraleph: indutny doesn't seem to be here. I am going to build his stuff and try
15:46:59  <indutny>back
15:47:06  <piscisaureus>oh nice :-)
15:47:11  <indutny>just back :)
15:47:19  <indutny>mraleph: one second
15:48:00  <indutny>mraleph: still going into module.js on require() call
15:48:15  <indutny>no changes
15:48:46  <mraleph>ok i'll try to repro with pure v8 test
15:49:33  <indutny>mraleph: cool!
15:50:24  <indutny>piscisaureus: if you'll try to build - please start with vm thing
15:50:35  <indutny>piscisaureus: it's essential for new debugger
15:50:36  <piscisaureus>indutny: vm thing?
15:50:50  <indutny>https://github.com/joyent/node/pull/1673
15:51:14  <indutny>it was reverted before release, because of segfaulting test
15:51:15  <piscisaureus>indutny: oh yeah
15:51:25  <indutny>sorry for bad english
15:52:17  <indutny>mraleph: interesting
15:52:46  <piscisaureus>indutny: yes, I can confirm the problem
15:53:01  <indutny>mraleph: I tried to wrap this return statement with (function(){return ...})()
15:53:13  <indutny>and it still break in `if (parent) ` statement in Module._load
15:53:17  <indutny>piscisaureus: what problem?
15:53:19  <indutny>failing test?
15:53:54  <piscisaureus>indutny: no, that next breaks inside module.js
15:53:57  <indutny>ah
15:53:58  <indutny>yeah
15:54:07  <indutny>you don't even need to build my branches
15:54:17  <indutny>it works with current debugger too
16:05:20  * felixgejoined
16:11:11  <indutny>piscisaureus: can we pull vm accessors feature?
16:11:59  <piscisaureus>indutny: hmm. It was reverted because it caused segfaults - did those get sorted out?
16:12:05  <indutny>yes
16:12:22  <indutny>piscisaureus: that's because Persistent handle was initialized on require('vm')
16:12:34  <indutny>and when used process.binding('script') it was uninitialized
16:12:52  <indutny>now it's here https://github.com/joyent/node/pull/1673/files#L0R112
16:13:07  <indutny>test passing
16:14:47  <piscisaureus>indutny: okay, will do. I am in a debugging session now, so I am going to do it after I finish that :-)
16:14:58  <indutny>piscisaureus: cool :)
16:17:00  <indutny>I'm debugging too... can't correlate this _load issue with anything
16:17:14  <indutny>very strange
16:18:22  <mraleph>indutny: ok so how do I repro your stepping issue? what should I checkout
16:18:35  <indutny>mraleph: just use 0.5.x node
16:18:40  <piscisaureus>indutny: did you verify that the debuggee was also invoked with --noopt
16:18:46  <indutny>mraleph: run ./node debug lib/fs.js
16:18:51  <indutny>piscisaureus: yeah
16:19:03  <indutny>piscisaureus: I added second args.unshift expression in _debugger.js
16:19:06  <piscisaureus>indutny: for me node debug doesn't pass it on
16:19:18  <indutny>piscisaureus: ^^
16:19:23  <indutny>mraleph: then `run`
16:19:27  <indutny>and `next`
16:19:44  <indutny>mraleph: have you found something?
16:20:22  <indutny>piscisaureus: indutny 5299 1.0 0.2 645228 10556 pts/1 Sl+ 23:20 0:00 /home/indutny/Code/git/indutny/node/out/Release/node --noopt --debug-brk ../test.js
16:20:36  <piscisaureus>ah, ok
16:22:13  <mraleph>indutny: no I failed to repro it with some simple tests. I'll try node now. stay tuned
16:22:21  <indutny>k
16:24:50  <mraleph>building node
16:28:21  <mraleph>argh piscisaureus y u no make uv respect dest-cpu I passed to configure
16:29:34  <mraleph>now I need to rebuild everything for x64
16:32:34  <indutny>hhaha
16:32:37  <indutny>wtf
16:33:41  <mraleph>ok indeed it breaks in some other function
16:33:50  <mraleph>are you sure you have no break there?
16:33:50  <indutny>haha
16:33:51  <indutny>yeah
16:33:55  <indutny>em...
16:34:04  <indutny>if you run continue
16:34:07  <indutny>it won't break hre
16:34:11  <indutny>s/hre/here
16:56:23  <indutny>oh
16:56:26  <indutny>that's very odd
16:57:12  <indutny>looks like debugger hates this function
17:13:00  <indutny>mraleph: man
17:13:10  <indutny>mraleph: I just created one-to-one copy of Module._load function
17:13:16  <indutny>and replaced ._load call by it's call
17:13:18  <indutny>and it works
17:14:45  <indutny>but if I'll replace https://github.com/joyent/node/blob/master/lib/module.js#L454 Module._load with Module._test here - everything won't work again
17:14:59  <indutny>probably, this function gets marked somehow on node start
17:15:17  <indutny>to break execution inside module
17:16:35  <indutny>how "debugger" statement works?
17:16:38  <indutny>is that a v8 feature?
17:17:39  <indutny>ah, nevermind
17:20:00  <indutny>mraleph: probably that may help https://gist.github.com/9791e8d96f00e448f1f2
17:20:14  <indutny>backtraces' roots are different
17:44:19  <mraleph>indutny: I kinda found the bug but it still requires some digging. For some reason debugger thinks that _load has try catch handler and it has to be "flooded with one shot break points"
17:44:19  <mraleph>I am still digging
17:44:34  <indutny>ah
17:44:37  <indutny>interesting
17:47:46  <ryah>indutny: you there?
17:48:42  <ryah>indutny: our timezones are about exact opposite :)
17:48:58  <mraleph>ah I was blind there is a try catch there! I can now see everything clearly
17:49:08  <indutny>ryah: yep
17:49:22  <indutny>haha, mostly
17:49:33  <ryah>indutny: https://github.com/joyent/node/pull/1673 <-- good for merging?
17:49:49  <indutny>+1 definitely :)
17:49:50  <indutny>yes
17:50:10  <indutny>test passing
17:50:54  <indutny>mraleph: so everything is because of tryCatch ?
17:51:05  <mraleph>kinda
17:51:17  <indutny>k
17:51:20  <mraleph>debugger does not treat well mutual recursion
17:51:29  * felixgequit (Quit: felixge)
17:51:36  <mraleph>i'll post a repro into V8 issue
17:51:44  <indutny>cool
17:51:50  <indutny>do you think it's hard to fix?
17:52:41  <mraleph>well hard to say. current approach is kinda spooky
17:53:16  <mraleph>instead of patching handler we patch function code
17:53:17  <mraleph>that's not going to fly
17:54:23  <CIA-52>node: Fedor Indutny master * r8c2c7bb / (2 files in 2 dirs):
17:54:24  <CIA-52>node: vm context with accessors
17:54:24  <CIA-52>node: fixes #1673 - http://git.io/GdIChg
17:54:37  <ryah>ok im AFK
17:54:42  <indutny>ryah: thanks
17:54:48  <indutny>ryah: hope next will be debugger ;)
17:56:24  <indutny>mraleph: probably some hotfix possible?
17:56:40  <indutny>mraleph: function code?!
17:56:43  <indutny>:)
17:56:47  <indutny>interesting
18:01:27  <indutny>mraleph: so BreakLocationIterator is broken, right?
18:01:34  <mraleph>no
18:02:26  <mraleph>FloodHandlerWithOneShot does not account for mutual recursion
18:06:08  <indutny>omg
18:06:25  <indutny>worst thing is that I actually understand it
18:06:38  <indutny>some common parts
18:06:59  <mraleph>that is great
18:11:14  <indutny>so am I right if I'll say that Module._load is marked as exit point from execution stack?
18:11:25  <indutny>and actually this mark causing debugger to do break here
18:11:47  <indutny>mraleph: sorry, forgot to mention
18:11:49  <mraleph>well
18:12:16  <mraleph>that depends on how you define 'exit point'
18:12:19  <mraleph>kinda right
18:12:37  <mraleph>debugger thinks that execution can just there through exception
18:12:56  <mraleph>of course it can
18:13:04  <indutny>ah
18:13:12  <indutny>got it
18:13:14  <indutny>nice
18:13:21  <mraleph>but installing breakpoints there is not the best way to catch this fact
18:13:29  <mraleph>because it's recursive
18:13:34  <indutny>yeah
18:23:24  <indutny>quite spooky, right
18:30:35  <mraleph>I have updated the issue with repo
18:30:38  <mraleph>*repro
18:31:02  <indutny>great
18:31:04  <indutny>thank you!
18:31:15  <mraleph>you are welcome
18:32:59  <indutny>mraleph: btw, https://github.com/joyent/node/blob/master/deps/v8/src/debug.cc#L355-358
18:33:03  <indutny>someone thought about that
18:34:56  <mraleph>no this is slightly different
18:35:14  <mraleph>It's when you step through code in try catch
18:35:34  <mraleph>try { /*step*/ a(); /*step */ b(); } ....
18:42:30  <indutny>ah
18:42:34  <indutny>kh
18:42:35  <indutny>k
18:42:45  <indutny>sorry, I was afk for awhile
18:51:12  <indutny>gtg
18:51:17  <indutny>going to sleep, it's 1:51 am
18:51:20  <indutny>in my place
18:51:23  <indutny>ttyl
19:20:16  <dmkbot1>joyent/node: indutny: [script] remove obsolete 'using v8::Null' - https://github.com/joyent/node/issues/1680
19:20:18  <indutny>ryah: piscisaureus: could someone please pull this? https://github.com/joyent/node/pull/1680
19:20:22  <indutny>it's very peaceful
19:20:34  <indutny>just removes obsolete "using v8::Null" statement
19:20:47  <indutny>that was used in previous version of node_script.cc
19:21:06  <indutny>just a matter of style, but anyway
19:22:15  <indutny>returning back to sleeping :P
19:56:09  * piscisaureusquit (Quit: ~ Trillian Astra - www.trillian.im ~)
20:00:31  * piscisaureusjoined
20:40:16  <dmkbot1>joyent/node: laverdet: node --vars broken in 0.5.4 - https://github.com/joyent/node/issues/1536
22:07:12  * mralephquit (Quit: Leaving.)
22:16:48  * felixgejoined
22:20:16  <dmkbot1>joyent/node: mikeal: streams2 - https://github.com/joyent/node/issues/1681
22:20:17  <dmkbot1>joyent/node: mikeal: streams2 - https://github.com/joyent/node/issues/1681
22:25:16  <dmkbot1>joyent/node: tshinnic: add positioned writing feature to fs.WriteStream - https://github.com/joyent/node/issues/1645
22:29:08  * piscisaureusquit (Ping timeout: 276 seconds)
22:33:28  * isaacsjoined
22:45:16  <dmkbot1>joyent/node: mikeal: streams2 - https://github.com/joyent/node/issues/1681
22:45:17  <dmkbot1>joyent/node: virmundi: Windows 7 exec process leak - https://github.com/joyent/node/issues/1682
22:51:16  * piscisaureusjoined
23:05:25  * felixgequit (Quit: felixge)
23:25:16  <dmkbot1>joyent/node: tshinnic: unguarded fs.watchFile cache statWatchers checking fixed - https://github.com/joyent/node/issues/1637