Index

Show enters and exits. Hide enters and exits.

01:55:12boyscoutSpecs for pack M. - 0931a88 - Brian Ford
01:55:12boyscoutFixed some pack AaZ specs. - 208ebe7 - Brian Ford
01:55:12boyscoutAdded benchmark for pack M. - 1022970 - Brian Ford
01:55:12boyscoutArray#pack M. - b69ccfd - Brian Ford
01:55:12boyscoutSpecs for pack Hh. - 1de05bd - Brian Ford
02:04:56boyscoutCI: rubinius: 739fc5b successful: 3511 files, 15076 examples, 42901 expectations, 0 failures, 0 errors
02:29:55postmodernstill getting failing specs on "Process.wait2 returns the pid and status of child process FAILED"
02:30:06postmoderneven after doing a `rake distclean`
02:30:14postmodernthink those might be a platform related bug?
02:38:41postmodernhttp://pastebin.com/6zmEwF54
02:58:05brixenpostmodern_: what platform?
02:58:16brixenpostmodern_: and are you using rvm?
02:58:57brixenand are you on head?
03:07:00postmodernbrixen, i am using rvm with 1.9.2-rc2
03:07:02postmodernbrixen, but that's rubinius head
03:07:14postmodernbrixen, im on Fedora 13 x86-64 and x86
03:07:57postmodernbrixen, i compile and run rubinius outside of rvm
03:09:22brixenI have a fedora 8 32 bit, I'll try that
03:09:35brixendid you try with a fresh clone outside rvm?
03:10:03postmodernbrixen, yes, i only do rubinius outside of rvm
03:10:10postmodernbrixen, i only use rvm for MRI and JRuby
03:10:35postmodernbrixen, i would spin up Fedora 13 in a VM and try it
03:11:22brixento do so would require installing fedora 13
03:11:38brixenwhich I'm not going to do at this coffee shop ;)
03:14:40postmodernbrixen, well more like d/ling the livecd
14:27:42dbussinkbrixen: ping?
14:44:21dbussinkevan: ping?
15:58:11evandbussink: hyea
15:58:13evanhey
16:48:16krainboltgreeneI noticed there was a tag for "Webpage" on the issue list, is this for the main website?
16:48:55evanyep
16:48:58evankrainboltgreene: well hello.
16:49:10krainboltgreeneeven: Hello :D
16:49:37dbussinkevan: various people have reported a Process#kill spec error, but it seems that on some platforms it crashes when shutting down
16:49:43dbussinkin the FFIData destructor
16:50:03evandbussink: well, i need a backtrace
16:50:05evanof it crashing.
16:50:12dbussinkevan: coming up: https://gist.github.com/8978130bec0ee812fd55
16:50:15evanit's probably running finalizers.
16:50:21dbussinkthe spec error was really weird though
16:50:24dbussinkyeah, it's the finalizer
16:50:31evanah weird.
16:50:31dbussinkor wait
16:50:37evanin ffi_closure_free
16:50:50dbussinkthis only happens with forking
16:51:18evank.
16:51:25evani've seen this before
16:51:32evanuse rake distlean
16:51:34evandistclean
16:51:34dbussinkevan: this is the ruby script: https://gist.github.com/c1373c1f0d4911e3ac71
16:51:35evanand try again
16:51:40evanbasically, there was a libffi bug.
16:51:44evanthat I fixed.
16:52:09evanok
16:52:15evanare you getting it?
16:52:32dbussinkevan: it crashes with that script when the scripts end
16:52:39dbussinkevan: yeah
16:52:45evanok, could you run distclean and try again?
16:53:36dbussinkevan: ok, will do that, can take a while though :)
16:53:40dbussinknot the fastest system out there
16:54:25dbussinkevan: btw, what is the reason behind this code? http://github.com/evanphx/rubinius/blob/master/vm/builtin/system.cpp#L207-208
16:54:31dbussinkbecause that obscures this issue too
16:54:50dbussinkit gets a status 1006 back, because it got a sigabrt to which 1000 is added as the return value
16:55:59evanthats a feature.
16:56:16dbussinkevan: hmm, i looked in the mri source code but couldn't find it there
16:56:21dbussinkevan: or an rbx specific one?
16:56:23evani could change it to only do that if the signal was SIGBUS/SIGSEGV
16:56:27evanit's rbx specific
16:56:38dbussinkmri doesn't provide an api for it?
16:56:41dbussinkto get the signal?
16:56:41evannope.
16:56:47evanyou have no clue it exit'd due to signal in MRI
16:56:48krainboltgreenehmmms over the website.
16:56:57evanI wanted to know for this very reason.
16:56:59dbussinkevan: isn't adding a field a lot nicer?
16:57:09dbussinkto process status?
16:57:10evandbussink: perhaps :)
16:57:20evanfeel free to make it a field.
16:57:21dbussinki was confused quite a bit :P
16:57:26evanthis was a quick hack anyway
16:57:31evansorry :(
16:57:36dbussinknp, just curious :)
16:57:41evanbut it did tip you off taht sometihng was weird
16:57:42evandidn't it?
16:57:51evanotherwise, you'd have gotten 34 and said "oh, it was fine."
16:58:13evankrainboltgreene: what are you considering?
16:58:30dbussinkevan: hehe, yeah :)
16:58:41dbussinkevan: although the spec would have failed because it got nil back
16:59:23evansure.
16:59:25evango for it.
16:59:29evanmake it a field.
16:59:34krainboltgreeneevan: Not much, just procrastinating. I'm still learning how to navigate Git/hub.
17:00:03evankrainboltgreene: ah ah. by website, do you mean http://rubini.us or github.com/evanphx/rubinius ?
17:00:40krainboltgreeneevan: Looking at the former, right now.
17:01:11evank
17:04:20dbussinkevan: hmm, looks like it's available in the mri api: http://ruby-doc.org/core/classes/Process/Status.html#M003229
17:04:24dbussinktermsig
17:04:30dbussinkand there's exited?
17:04:51evanah ok!
17:04:53evani guess i missed it.
17:04:58evanhook that puppy up!
17:05:10krainboltgreeneNo not the puppy :(
17:05:45dbussinkevan: looks like it works ok now
17:06:06evanok
17:06:21dbussinkevan: if i see the one reporting it, i will ask him
17:06:47dbussinkevan: our Process::Status even has a termsig that always returns nil :P
17:07:12evanhehe
17:07:14evanoops!
17:33:29evandbussink: just fixed your bug
17:33:30boyscoutCleanup VM/ManagedThread organization - 4aef6dc - Evan Phoenix (hydra)
17:33:31boyscoutMinor refactoring - 8398c66 - Evan Phoenix (hydra)
17:33:31boyscoutTrack and verify threads stopping, allow running code when alone. - ea79b31 - Evan Phoenix (hydra)
17:33:36evandbussink: ^^
18:37:25dbussinkevan: cool :)
18:37:34dbussinkevan: was playing a game of sc2 :P
18:37:42evanhow is it?
18:37:43evanfun?
18:40:46slavayo evan
18:40:57evanhey slava
18:44:56dbussinkevan: yeah, i like it
18:45:02dbussinkevan: did you play sc1?
18:45:09evana few times
18:45:10evannot much.
18:45:33dbussinkah ok, well, it's basically one of the very few games that has my interest :)
18:47:29dbussinkevan: 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:56evanwell, the handle system will be thread safe
18:50:30evanso it will mostly using locking around manipulating shared C structures
18:51:33dbussinkah ok, so that would be pretty easy then actually
18:51:44dbussinkDO doesn't have those :)
18:52:09dbussinkevan: onto the next issue in hydra, seems like signals end up in the wrong place
18:52:38evanoh?
18:52:43dbussinkhmm, wait, nvm :)
18:52:50dbussinkme not setting the right ignore flags to gdb
18:52:56evani'm working on a wakeup condition problem atm.
18:53:23evandbussink: if the C library the C extension uses are thread-safe
18:53:28evanthen the C extension should be thread-safe
18:54:44krainboltgreeneevan: 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:23evankrainboltgreene: fun!
18:55:27evanlooks fierce!
18:55:44krainboltgreeneI can't believe the LLVM dragon is proprietary.
18:55:55evanit is?
18:55:56evanug.
18:55:59dbussinkevan: wow, it ran through ci run here with only 2 failures
18:56:00evanstupid apple.
18:56:02krainboltgreeneYep, owned dby Apple.
18:56:04evandbussink: yay!
18:56:16evankrainboltgreene: thats dumb.
18:56:25evankrainboltgreene: hey! that reminds me though
18:56:34evanI've been thinking about a new rubinius logo
18:56:42evanif you're design inclined, you could play with that.
18:57:03krainboltgreeneDonno if I have the tools.
18:57:13krainboltgreeneThis 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:29krainboltgreeneOk, so not exactly proprietary, but still not open if I read correctly.
18:57:40dbussinkevan: hmm, the vm tests are broken for you too?
18:58:21evandbussink: i haven't tried them
18:58:27evanwe removed some code, so probably.
18:59:31dbussinkevan: probably the ManagedThread stuff, looking at the error message
18:59:38evank
18:59:47evanfixem' up if ya like.
18:59:55krainboltgreeneevan: 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:28evanmmmmmm
19:00:30evana very nice idea.
19:01:00krainboltgreeneThrow a dart at Deviantart, especially the Trading Card game/Card Collecting Game artists.
19:02:32krainboltgreenehas actually thought about this a fair amount, that is.
19:03:20evan:)
19:07:17krainboltgreeneRuby 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:59krainboltgreeneOr coiled around the Ruby ruby.
19:29:06boyscoutWipe out the last saved call_frame to fix a GC crash - 49b8b67 - Evan Phoenix (hydra)
19:29:06boyscoutFix a couple of Thread specs - 77a1c63 - Evan Phoenix (hydra)
19:29:06boyscoutCheck CallFrames directly from their VM - e9ef991 - Evan Phoenix (hydra)
19:37:26evandbussink: thread specs are running pretty solid for me now.
19:37:37evanno segfaults
19:37:37dbussinkevan: ok, cool :)
19:37:48evani've seen a couple of spec failures that come and go
19:37:55dbussinki had some hangs in IO::sysread during ci
19:38:02evanok
19:38:08dbussinkbut didn't investigate further yet
19:38:12dbussinkevan: does this look ok? https://gist.github.com/8216bb735dd1522073ab
19:38:30dbussinkevan: or are there better ways to pass back multiple values from a prim than a tuple?
19:39:07evanlooks good
19:39:11evanno, Tuple is the best way
19:39:21evani'd rather you not use #to_bool
19:39:28evanbut thats a conversation for another day
19:39:42evani'm off to get some lunch
19:39:49brixenevan: can I commit this? http://gist.github.com/514453 or can you fix/commit, pls?
19:40:03evanbrixen: go ahead and commit it.
19:40:08brixenk, thanks
19:40:54evanok, off to lunch and a movie!
19:40:58brixenhave fun!
19:41:00dbussinkevan: ah ok, well, brixen suggested that last time :)
19:41:11dbussinki'm fine with any approach, just tell me which one ;)
19:41:13brixenwell, the alternative is !!value
19:41:24brixenwhich is what #to_bool is
19:41:47brixenor some multi-branch test
19:42:18brixendbussink: to_bool is easy to find/replace ;)
19:42:26brixenso you can use it for now
19:49:21brixendbussink: did your friend try his chunky_png app?
19:49:34brixendbussink: I think all the directives the lib needs are implemented
19:49:47dbussinkbrixen: i showed him the numbers yeah :)
19:49:58brixenok
19:50:07brixenthere's still some perf issue on one if his benches
19:50:19brixenbut when the jit kicks in, the bench is about 2.5x faster
19:50:30brixenwhich isn't represented in the original summary number
19:50:49brixenanyway, most of the stuff is running faster in rbx than 1.9
19:51:02brixenI don't even bench against 1.8 anymore :)
19:51:13brixenmost of the pack/unpack stuff that is
19:54:01dbussinkbrixen: hmm, i wonder, i want to add some specs for this process stuff, but how should they be organized?
19:54:24dbussinkbrixen: he really liked the numbers :)
19:54:35dbussinkbrixen: is pack / unpack nearing completion?
19:55:14brixenpack is getting clase
19:55:19brixener close
19:55:31brixenUumw to go
19:55:50brixenunpack needs the floats, HhBbMmUu
19:56:04brixenbut the hardest part is fixing the specs
19:56:18brixen5 hrs for specs, 30 min for the impl :/
19:56:28brixenor less if I'm just porting MRI :P
19:56:57brixendbussink: what's your Q about Process spec organization?
19:57:03brixenwhat method are you testing?
19:58:19dbussinkbrixen: want to add a spec for when a process is killed by a sigal
19:58:21dbussinksignal
20:00:51brixenso what method are you testing? :P
20:01:11brixenwhat will your expectation look like?
20:01:26brixenfoo.something.should == blah
20:01:28brixenwhat is something?
20:05:34dbussinkbrixen: this is following the current style: https://gist.github.com/9832507237137f23d014
20:07:32brixenbut why are those not tested in #stopsig, #exited?, #success? etc?
20:07:55brixenif you are making an expectation about #stopsig, you are not testing .kill directly
20:14:56dbussinkbrixen: hmm, didn't see specs for those
20:15:20brixendbussink: well, that's how rubyspec is organized
20:15:34brixenin this case, we probably need a helper like fork_and_kill or something
20:15:40brixenbut all that stuff is just setup
20:15:52brixenif you are calling #stopsig, that should be in the spec for #stopsig
20:16:12brixenotherwise, where do you look for it? :)
20:17:28dbussinkbrixen: ugh, they are all still empty :(
20:17:43brixen:(
20:30:01dbussinkbrixen: adding some first version: https://gist.github.com/3eafe5e9dfb881a49990
20:30:13dbussinkbrixen: not sure about the describe setup though, any advise?
20:49:45brixendbussink: the with_tty guard should go around the describe I think
20:49:52brixenno .should's in before/after actions
20:50:15brixenconsider making some sort of helper for the setup
20:50:28brixenfork_and_kill, fork_and_exit
20:50:43brixentest the method
20:50:53brixennot every related thing
20:51:24brixenwhat is a Process.kill.should doing in a "Process::Status#success?" spec? ;)
20:51:40brixenbbiab...
20:56:54dbussinkbrixen: any good examples of how i should write that helper?
20:57:44brixenI dunno, mspec/lib/mspec/helpers/ :P
20:57:58brixentake a stab at what you need it to do, we'll polish it later :)
20:58:24brixenmaybe start with mspec/spec/helpers/
21:01:53brixendbussink: I'm out for a bit, feel free to experiment
21:02:12dbussinkbrixen: not planning on making it too late, so probably a good night already :)
21:02:20brixenok, no worries
21:02:26brixentomorrow is another day :)
21:02:30brixenthanks for taking a look at them
21:06:45dbussinkbrixen: ok if i commit them first without a helper?
21:25:04boyscoutAdd initial specs for Process::Status - e955f4f - Dirkjan Bussink
21:25:04boyscoutFixes for Process::Status - 87722cb - Dirkjan Bussink
21:53:48boyscoutCI: rubinius: 87722cb successful: 3511 files, 15076 examples, 42901 expectations, 0 failures, 0 errors
22:44:18boyscoutFixes to build with gcc 4.0.1 on Leopard. - 0c38d07 - Brian Ford (hydra)
22:54:09Defilerif only Rubinius had finallyfast: http://www.finallyfastcommercials.com/movies/Finallyfast60_2.mov
23:00:59brixenindeed
23:01:49brixenwait, you mean "Rubinius"? I thought that project was dead...
23:02:51DefilerIt probably has a bunch of code now
23:02:55Defilerand it needs finallyfast to remove it
23:03:25Defilerprojects with a lot of code are complicated so people lose interest
23:04:04brixenI guess
23:04:42brixenboggles 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:55brixenI will fail to take such people seriously
23:05:41brixenmy stock response should perhaps be, Rubinius is python now :)
23:06:39brixenalso, perhaps this horrid music is just putting me in a bad mood
23:06:55DefilerWell, I happen to agree with you
23:07:27Defilersadly that's usually how things go
23:08:01DefilerI guess you could treat every release like a campaign announcement
23:08:11Defilerand gush all over the web and everywhere for days
23:08:20brixenI think it's the mtv generation
23:08:44DefilerThese people couldn't survive a night in the woods
23:08:45brixenif information didn't accost you like an Axe commercial, it didn't happen