Show enters and exits. Hide enters and exits.
| 01:55:12 | boyscout | Specs for pack M. - 0931a88 - Brian Ford |
| 01:55:12 | boyscout | Fixed some pack AaZ specs. - 208ebe7 - Brian Ford |
| 01:55:12 | boyscout | Added benchmark for pack M. - 1022970 - Brian Ford |
| 01:55:12 | boyscout | Array#pack M. - b69ccfd - Brian Ford |
| 01:55:12 | boyscout | Specs for pack Hh. - 1de05bd - Brian Ford |
| 02:04:56 | boyscout | CI: rubinius: 739fc5b successful: 3511 files, 15076 examples, 42901 expectations, 0 failures, 0 errors |
| 02:29:55 | postmodern | still getting failing specs on "Process.wait2 returns the pid and status of child process FAILED" |
| 02:30:06 | postmodern | even after doing a `rake distclean` |
| 02:30:14 | postmodern | think those might be a platform related bug? |
| 02:38:41 | postmodern | http://pastebin.com/6zmEwF54 |
| 02:58:05 | brixen | postmodern_: what platform? |
| 02:58:16 | brixen | postmodern_: and are you using rvm? |
| 02:58:57 | brixen | and are you on head? |
| 03:07:00 | postmodern | brixen, i am using rvm with 1.9.2-rc2 |
| 03:07:02 | postmodern | brixen, but that's rubinius head |
| 03:07:14 | postmodern | brixen, im on Fedora 13 x86-64 and x86 |
| 03:07:57 | postmodern | brixen, i compile and run rubinius outside of rvm |
| 03:09:22 | brixen | I have a fedora 8 32 bit, I'll try that |
| 03:09:35 | brixen | did you try with a fresh clone outside rvm? |
| 03:10:03 | postmodern | brixen, yes, i only do rubinius outside of rvm |
| 03:10:10 | postmodern | brixen, i only use rvm for MRI and JRuby |
| 03:10:35 | postmodern | brixen, i would spin up Fedora 13 in a VM and try it |
| 03:11:22 | brixen | to do so would require installing fedora 13 |
| 03:11:38 | brixen | which I'm not going to do at this coffee shop ;) |
| 03:14:40 | postmodern | brixen, well more like d/ling the livecd |
| 14:27:42 | dbussink | brixen: ping? |
| 14:44:21 | dbussink | evan: ping? |
| 15:58:11 | evan | dbussink: hyea |
| 15:58:13 | evan | hey |
| 16:48:16 | krainboltgreene | I noticed there was a tag for "Webpage" on the issue list, is this for the main website? |
| 16:48:55 | evan | yep |
| 16:48:58 | evan | krainboltgreene: well hello. |
| 16:49:10 | krainboltgreene | even: Hello :D |
| 16:49:37 | dbussink | evan: various people have reported a Process#kill spec error, but it seems that on some platforms it crashes when shutting down |
| 16:49:43 | dbussink | in the FFIData destructor |
| 16:50:03 | evan | dbussink: well, i need a backtrace |
| 16:50:05 | evan | of it crashing. |
| 16:50:12 | dbussink | evan: coming up: https://gist.github.com/8978130bec0ee812fd55 |
| 16:50:15 | evan | it's probably running finalizers. |
| 16:50:21 | dbussink | the spec error was really weird though |
| 16:50:24 | dbussink | yeah, it's the finalizer |
| 16:50:31 | evan | ah weird. |
| 16:50:31 | dbussink | or wait |
| 16:50:37 | evan | in ffi_closure_free |
| 16:50:50 | dbussink | this only happens with forking |
| 16:51:18 | evan | k. |
| 16:51:25 | evan | i've seen this before |
| 16:51:32 | evan | use rake distlean |
| 16:51:34 | evan | distclean |
| 16:51:34 | dbussink | evan: this is the ruby script: https://gist.github.com/c1373c1f0d4911e3ac71 |
| 16:51:35 | evan | and try again |
| 16:51:40 | evan | basically, there was a libffi bug. |
| 16:51:44 | evan | that I fixed. |
| 16:52:09 | evan | ok |
| 16:52:15 | evan | are you getting it? |
| 16:52:32 | dbussink | evan: it crashes with that script when the scripts end |
| 16:52:39 | dbussink | evan: yeah |
| 16:52:45 | evan | ok, could you run distclean and try again? |
| 16:53:36 | dbussink | evan: ok, will do that, can take a while though :) |
| 16:53:40 | dbussink | not the fastest system out there |
| 16:54:25 | dbussink | evan: btw, what is the reason behind this code? http://github.com/evanphx/rubinius/blob/master/vm/builtin/system.cpp#L207-208 |
| 16:54:31 | dbussink | because that obscures this issue too |
| 16:54:50 | dbussink | it gets a status 1006 back, because it got a sigabrt to which 1000 is added as the return value |
| 16:55:59 | evan | thats a feature. |
| 16:56:16 | dbussink | evan: hmm, i looked in the mri source code but couldn't find it there |
| 16:56:21 | dbussink | evan: or an rbx specific one? |
| 16:56:23 | evan | i could change it to only do that if the signal was SIGBUS/SIGSEGV |
| 16:56:27 | evan | it's rbx specific |
| 16:56:38 | dbussink | mri doesn't provide an api for it? |
| 16:56:41 | dbussink | to get the signal? |
| 16:56:41 | evan | nope. |
| 16:56:47 | evan | you have no clue it exit'd due to signal in MRI |
| 16:56:48 | krainboltgreene | hmmms over the website. |
| 16:56:57 | evan | I wanted to know for this very reason. |
| 16:56:59 | dbussink | evan: isn't adding a field a lot nicer? |
| 16:57:09 | dbussink | to process status? |
| 16:57:10 | evan | dbussink: perhaps :) |
| 16:57:20 | evan | feel free to make it a field. |
| 16:57:21 | dbussink | i was confused quite a bit :P |
| 16:57:26 | evan | this was a quick hack anyway |
| 16:57:31 | evan | sorry :( |
| 16:57:36 | dbussink | np, just curious :) |
| 16:57:41 | evan | but it did tip you off taht sometihng was weird |
| 16:57:42 | evan | didn't it? |
| 16:57:51 | evan | otherwise, you'd have gotten 34 and said "oh, it was fine." |
| 16:58:13 | evan | krainboltgreene: what are you considering? |
| 16:58:30 | dbussink | evan: hehe, yeah :) |
| 16:58:41 | dbussink | evan: although the spec would have failed because it got nil back |
| 16:59:23 | evan | sure. |
| 16:59:25 | evan | go for it. |
| 16:59:29 | evan | make it a field. |
| 16:59:34 | krainboltgreene | evan: Not much, just procrastinating. I'm still learning how to navigate Git/hub. |
| 17:00:03 | evan | krainboltgreene: ah ah. by website, do you mean http://rubini.us or github.com/evanphx/rubinius ? |
| 17:00:40 | krainboltgreene | evan: Looking at the former, right now. |
| 17:01:11 | evan | k |
| 17:04:20 | dbussink | evan: hmm, looks like it's available in the mri api: http://ruby-doc.org/core/classes/Process/Status.html#M003229 |
| 17:04:24 | dbussink | termsig |
| 17:04:30 | dbussink | and there's exited? |
| 17:04:51 | evan | ah ok! |
| 17:04:53 | evan | i guess i missed it. |
| 17:04:58 | evan | hook that puppy up! |
| 17:05:10 | krainboltgreene | No not the puppy :( |
| 17:05:45 | dbussink | evan: looks like it works ok now |
| 17:06:06 | evan | ok |
| 17:06:21 | dbussink | evan: if i see the one reporting it, i will ask him |
| 17:06:47 | dbussink | evan: our Process::Status even has a termsig that always returns nil :P |
| 17:07:12 | evan | hehe |
| 17:07:14 | evan | oops! |
| 17:33:29 | evan | dbussink: just fixed your bug |
| 17:33:30 | boyscout | Cleanup VM/ManagedThread organization - 4aef6dc - Evan Phoenix (hydra) |
| 17:33:31 | boyscout | Minor refactoring - 8398c66 - Evan Phoenix (hydra) |
| 17:33:31 | boyscout | Track and verify threads stopping, allow running code when alone. - ea79b31 - Evan Phoenix (hydra) |
| 17:33:36 | evan | dbussink: ^^ |
| 18:37:25 | dbussink | evan: cool :) |
| 18:37:34 | dbussink | evan: was playing a game of sc2 :P |
| 18:37:42 | evan | how is it? |
| 18:37:43 | evan | fun? |
| 18:40:46 | slava | yo evan |
| 18:40:57 | evan | hey slava |
| 18:44:56 | dbussink | evan: yeah, i like it |
| 18:45:02 | dbussink | evan: did you play sc1? |
| 18:45:09 | evan | a few times |
| 18:45:10 | evan | not much. |
| 18:45:33 | dbussink | ah ok, well, it's basically one of the very few games that has my interest :) |
| 18:47:29 | dbussink | evan: how easy would it be to have a thread safe c ext contract? like following certain rules and being able to run that concurrently? |
| 18:49:56 | evan | well, the handle system will be thread safe |
| 18:50:30 | evan | so it will mostly using locking around manipulating shared C structures |
| 18:51:33 | dbussink | ah ok, so that would be pretty easy then actually |
| 18:51:44 | dbussink | DO doesn't have those :) |
| 18:52:09 | dbussink | evan: onto the next issue in hydra, seems like signals end up in the wrong place |
| 18:52:38 | evan | oh? |
| 18:52:43 | dbussink | hmm, wait, nvm :) |
| 18:52:50 | dbussink | me not setting the right ignore flags to gdb |
| 18:52:56 | evan | i'm working on a wakeup condition problem atm. |
| 18:53:23 | evan | dbussink: if the C library the C extension uses are thread-safe |
| 18:53:28 | evan | then the C extension should be thread-safe |
| 18:54:44 | krainboltgreene | evan: http://209.59.221.169:8001/ << what I do when I'm bored and looking through the issue list to find something I can do. |
| 18:55:23 | evan | krainboltgreene: fun! |
| 18:55:27 | evan | looks fierce! |
| 18:55:44 | krainboltgreene | I can't believe the LLVM dragon is proprietary. |
| 18:55:55 | evan | it is? |
| 18:55:56 | evan | ug. |
| 18:55:59 | dbussink | evan: wow, it ran through ci run here with only 2 failures |
| 18:56:00 | evan | stupid apple. |
| 18:56:02 | krainboltgreene | Yep, owned dby Apple. |
| 18:56:04 | evan | dbussink: yay! |
| 18:56:16 | evan | krainboltgreene: thats dumb. |
| 18:56:25 | evan | krainboltgreene: hey! that reminds me though |
| 18:56:34 | evan | I've been thinking about a new rubinius logo |
| 18:56:42 | evan | if you're design inclined, you could play with that. |
| 18:57:03 | krainboltgreene | Donno if I have the tools. |
| 18:57:13 | krainboltgreene | This dragon image is owned by Apple Inc. and is available for your download and use royalty-free. By downloading this image, Apple grants you, and you accept, a non-exclusive license to use this image. All right, title and interest in the image, including the copyright therein, is retained by Apple. |
| 18:57:29 | krainboltgreene | Ok, so not exactly proprietary, but still not open if I read correctly. |
| 18:57:40 | dbussink | evan: hmm, the vm tests are broken for you too? |
| 18:58:21 | evan | dbussink: i haven't tried them |
| 18:58:27 | evan | we removed some code, so probably. |
| 18:59:31 | dbussink | evan: probably the ManagedThread stuff, looking at the error message |
| 18:59:38 | evan | k |
| 18:59:47 | evan | fixem' up if ya like. |
| 18:59:55 | krainboltgreene | evan: Honestly you could get some seriously cool commission for less than $50. Fantasy artists (if you go with the dragon route) are numerous and cheap as hell. |
| 19:00:28 | evan | mmmmmm |
| 19:00:30 | evan | a very nice idea. |
| 19:01:00 | krainboltgreene | Throw a dart at Deviantart, especially the Trading Card game/Card Collecting Game artists. |
| 19:02:32 | krainboltgreene | has actually thought about this a fair amount, that is. |
| 19:03:20 | evan | :) |
| 19:07:17 | krainboltgreene | Ruby is Japanese in origin, and Rubinius is built on C++ and LLVM, which uses a chrome dragon for a logo. So I'd pick a picture of a ruby-encrusted Yamata no Orochi. |
| 19:07:59 | krainboltgreene | Or coiled around the Ruby ruby. |
| 19:29:06 | boyscout | Wipe out the last saved call_frame to fix a GC crash - 49b8b67 - Evan Phoenix (hydra) |
| 19:29:06 | boyscout | Fix a couple of Thread specs - 77a1c63 - Evan Phoenix (hydra) |
| 19:29:06 | boyscout | Check CallFrames directly from their VM - e9ef991 - Evan Phoenix (hydra) |
| 19:37:26 | evan | dbussink: thread specs are running pretty solid for me now. |
| 19:37:37 | evan | no segfaults |
| 19:37:37 | dbussink | evan: ok, cool :) |
| 19:37:48 | evan | i've seen a couple of spec failures that come and go |
| 19:37:55 | dbussink | i had some hangs in IO::sysread during ci |
| 19:38:02 | evan | ok |
| 19:38:08 | dbussink | but didn't investigate further yet |
| 19:38:12 | dbussink | evan: does this look ok? https://gist.github.com/8216bb735dd1522073ab |
| 19:38:30 | dbussink | evan: or are there better ways to pass back multiple values from a prim than a tuple? |
| 19:39:07 | evan | looks good |
| 19:39:11 | evan | no, Tuple is the best way |
| 19:39:21 | evan | i'd rather you not use #to_bool |
| 19:39:28 | evan | but thats a conversation for another day |
| 19:39:42 | evan | i'm off to get some lunch |
| 19:39:49 | brixen | evan: can I commit this? http://gist.github.com/514453 or can you fix/commit, pls? |
| 19:40:03 | evan | brixen: go ahead and commit it. |
| 19:40:08 | brixen | k, thanks |
| 19:40:54 | evan | ok, off to lunch and a movie! |
| 19:40:58 | brixen | have fun! |
| 19:41:00 | dbussink | evan: ah ok, well, brixen suggested that last time :) |
| 19:41:11 | dbussink | i'm fine with any approach, just tell me which one ;) |
| 19:41:13 | brixen | well, the alternative is !!value |
| 19:41:24 | brixen | which is what #to_bool is |
| 19:41:47 | brixen | or some multi-branch test |
| 19:42:18 | brixen | dbussink: to_bool is easy to find/replace ;) |
| 19:42:26 | brixen | so you can use it for now |
| 19:49:21 | brixen | dbussink: did your friend try his chunky_png app? |
| 19:49:34 | brixen | dbussink: I think all the directives the lib needs are implemented |
| 19:49:47 | dbussink | brixen: i showed him the numbers yeah :) |
| 19:49:58 | brixen | ok |
| 19:50:07 | brixen | there's still some perf issue on one if his benches |
| 19:50:19 | brixen | but when the jit kicks in, the bench is about 2.5x faster |
| 19:50:30 | brixen | which isn't represented in the original summary number |
| 19:50:49 | brixen | anyway, most of the stuff is running faster in rbx than 1.9 |
| 19:51:02 | brixen | I don't even bench against 1.8 anymore :) |
| 19:51:13 | brixen | most of the pack/unpack stuff that is |
| 19:54:01 | dbussink | brixen: hmm, i wonder, i want to add some specs for this process stuff, but how should they be organized? |
| 19:54:24 | dbussink | brixen: he really liked the numbers :) |
| 19:54:35 | dbussink | brixen: is pack / unpack nearing completion? |
| 19:55:14 | brixen | pack is getting clase |
| 19:55:19 | brixen | er close |
| 19:55:31 | brixen | Uumw to go |
| 19:55:50 | brixen | unpack needs the floats, HhBbMmUu |
| 19:56:04 | brixen | but the hardest part is fixing the specs |
| 19:56:18 | brixen | 5 hrs for specs, 30 min for the impl :/ |
| 19:56:28 | brixen | or less if I'm just porting MRI :P |
| 19:56:57 | brixen | dbussink: what's your Q about Process spec organization? |
| 19:57:03 | brixen | what method are you testing? |
| 19:58:19 | dbussink | brixen: want to add a spec for when a process is killed by a sigal |
| 19:58:21 | dbussink | signal |
| 20:00:51 | brixen | so what method are you testing? :P |
| 20:01:11 | brixen | what will your expectation look like? |
| 20:01:26 | brixen | foo.something.should == blah |
| 20:01:28 | brixen | what is something? |
| 20:05:34 | dbussink | brixen: this is following the current style: https://gist.github.com/9832507237137f23d014 |
| 20:07:32 | brixen | but why are those not tested in #stopsig, #exited?, #success? etc? |
| 20:07:55 | brixen | if you are making an expectation about #stopsig, you are not testing .kill directly |
| 20:14:56 | dbussink | brixen: hmm, didn't see specs for those |
| 20:15:20 | brixen | dbussink: well, that's how rubyspec is organized |
| 20:15:34 | brixen | in this case, we probably need a helper like fork_and_kill or something |
| 20:15:40 | brixen | but all that stuff is just setup |
| 20:15:52 | brixen | if you are calling #stopsig, that should be in the spec for #stopsig |
| 20:16:12 | brixen | otherwise, where do you look for it? :) |
| 20:17:28 | dbussink | brixen: ugh, they are all still empty :( |
| 20:17:43 | brixen | :( |
| 20:30:01 | dbussink | brixen: adding some first version: https://gist.github.com/3eafe5e9dfb881a49990 |
| 20:30:13 | dbussink | brixen: not sure about the describe setup though, any advise? |
| 20:49:45 | brixen | dbussink: the with_tty guard should go around the describe I think |
| 20:49:52 | brixen | no .should's in before/after actions |
| 20:50:15 | brixen | consider making some sort of helper for the setup |
| 20:50:28 | brixen | fork_and_kill, fork_and_exit |
| 20:50:43 | brixen | test the method |
| 20:50:53 | brixen | not every related thing |
| 20:51:24 | brixen | what is a Process.kill.should doing in a "Process::Status#success?" spec? ;) |
| 20:51:40 | brixen | bbiab... |
| 20:56:54 | dbussink | brixen: any good examples of how i should write that helper? |
| 20:57:44 | brixen | I dunno, mspec/lib/mspec/helpers/ :P |
| 20:57:58 | brixen | take a stab at what you need it to do, we'll polish it later :) |
| 20:58:24 | brixen | maybe start with mspec/spec/helpers/ |
| 21:01:53 | brixen | dbussink: I'm out for a bit, feel free to experiment |
| 21:02:12 | dbussink | brixen: not planning on making it too late, so probably a good night already :) |
| 21:02:20 | brixen | ok, no worries |
| 21:02:26 | brixen | tomorrow is another day :) |
| 21:02:30 | brixen | thanks for taking a look at them |
| 21:06:45 | dbussink | brixen: ok if i commit them first without a helper? |
| 21:25:04 | boyscout | Add initial specs for Process::Status - e955f4f - Dirkjan Bussink |
| 21:25:04 | boyscout | Fixes for Process::Status - 87722cb - Dirkjan Bussink |
| 21:53:48 | boyscout | CI: rubinius: 87722cb successful: 3511 files, 15076 examples, 42901 expectations, 0 failures, 0 errors |
| 22:44:18 | boyscout | Fixes to build with gcc 4.0.1 on Leopard. - 0c38d07 - Brian Ford (hydra) |
| 22:54:09 | Defiler | if only Rubinius had finallyfast: http://www.finallyfastcommercials.com/movies/Finallyfast60_2.mov |
| 23:00:59 | brixen | indeed |
| 23:01:49 | brixen | wait, you mean "Rubinius"? I thought that project was dead... |
| 23:02:51 | Defiler | It probably has a bunch of code now |
| 23:02:55 | Defiler | and it needs finallyfast to remove it |
| 23:03:25 | Defiler | projects with a lot of code are complicated so people lose interest |
| 23:04:04 | brixen | I guess |
| 23:04:42 | brixen | boggles my mind that there is an atom feed of commits and people can say "I haven't heard anything about Rubinius in ages" |
| 23:04:55 | brixen | I will fail to take such people seriously |
| 23:05:41 | brixen | my stock response should perhaps be, Rubinius is python now :) |
| 23:06:39 | brixen | also, perhaps this horrid music is just putting me in a bad mood |
| 23:06:55 | Defiler | Well, I happen to agree with you |
| 23:07:27 | Defiler | sadly that's usually how things go |
| 23:08:01 | Defiler | I guess you could treat every release like a campaign announcement |
| 23:08:11 | Defiler | and gush all over the web and everywhere for days |
| 23:08:20 | brixen | I think it's the mtv generation |
| 23:08:44 | Defiler | These people couldn't survive a night in the woods |
| 23:08:45 | brixen | if information didn't accost you like an Axe commercial, it didn't happen |