Show enters and exits. Hide enters and exits.
| 00:28:45 | jarib | wow, just typed 'exit if fork' in irb and my machine started making sounds |
| 00:28:47 | jarib | weird |
| 00:28:59 | jarib | ditto for MRI |
| 00:37:15 | brixen | ok, now that I have decent specs, I can fix this... |
| 00:39:42 | kronos_vano | problems with rb_const_get_from? |
| 00:40:30 | brixen | drunk_a_lot_kron: yes |
| 00:41:13 | brixen | drunk_a_lot_kron: the specs did not pass |
| 00:41:20 | drunk_a_lot_kron | arr |
| 00:41:27 | brixen | I've fixed them |
| 00:41:36 | drunk_a_lot_kron | ok |
| 00:41:42 | drunk_a_lot_kron | tnx |
| 00:41:46 | brixen | rb_const_get_from looks like it's working ok except for calling const_missing |
| 00:43:03 | drunk_a_lot_kron | calling *_missing is common problem |
| 00:44:32 | drunk_a_lot_kron | ok. I get some sleep. See ya |
| 00:44:40 | brixen | drunk_a_lot_kron: haha, ok! |
| 00:45:12 | brixen | toulmean: getting closer! |
| 00:45:56 | toulmean | brixen: cool. Installing my new TV here |
| 00:46:05 | brixen | nice |
| 01:03:58 | toulmean | brixen: need to buy HDMI cable |
| 01:04:06 | toulmean | anything I can help with for you ? |
| 01:05:13 | brixen | not yet |
| 01:05:26 | brixen | once I get these specs passing, I'll see why I'm segfaulting |
| 01:05:48 | brixen | or maybe, I'll just push this and *you* can see why it's segfaulting :) |
| 01:06:13 | toulmean | I would love to learn how to diagnose a segfault |
| 01:06:29 | toulmean | brixen: ^^ |
| 01:07:49 | brixen | :) |
| 01:10:33 | brixen | toulmean: well, it's a long process... I usually start with a couple young, spry chickens, with mostly white feathers... |
| 01:11:24 | toulmean | brixen: you mean you use voodoo ? |
| 01:12:28 | toulmean | ok let me google for seg faults... I never did C dev so. |
| 01:15:19 | brixen | heh, just kidding |
| 01:15:29 | brixen | yes, sometimes it seems like you need voodoo |
| 01:16:17 | brixen | I'm running specs and then I'll push this |
| 01:21:00 | toulmean | ok thx |
| 01:26:14 | boyscout | Added specs for more C-API functions. - de72c57 - Brian Ford |
| 01:26:14 | boyscout | Added more C-API functions to get rjb to load. - 3987fa2 - Brian Ford |
| 01:26:14 | boyscout | Ignore some app dirs. - 6f4a6d5 - Brian Ford |
| 01:26:59 | brixen | toulmean: so, what I'm doing first is: rake clean; rake build:debug |
| 01:27:30 | toulmean | ok |
| 01:29:13 | brixen | then I'm going to rebuild and reinstall rjb |
| 01:29:48 | toulmean | brixen: need to rebuild and reinstall it every time ? |
| 01:30:07 | brixen | shouldn't no, but I want to make sure stuff didn't compile incorrectly |
| 01:30:17 | toulmean | k |
| 01:30:27 | brixen | since I added protos for the functions that were unresolved before |
| 01:33:54 | brixen | toulmean: then I did: gdb --args vm/vm -r rjb |
| 01:34:06 | toulmean | uh ? ok |
| 01:34:08 | brixen | toulmean: and voila, segv assigning to NULL |
| 01:34:19 | toulmean | ok |
| 01:34:20 | brixen | now, why are we trying to assign to 0x0 |
| 01:34:37 | toulmean | do you get a line number ? |
| 01:34:56 | brixen | toulmean: http://gist.github.com/410548 |
| 01:34:58 | toulmean | or none - you lose track of all the code references when you compile ? |
| 01:35:45 | brixen | toulmean: refresh the gist |
| 01:35:51 | brixen | I typed 'bt' |
| 01:35:58 | brixen | and you can see the backtrace |
| 01:36:02 | toulmean | ok refreshed. ok |
| 01:36:32 | toulmean | so the segfault is happening in your code ? |
| 01:36:36 | brixen | you can see at line 30 of the gist that status=0x0 in the call to rb_protect |
| 01:36:52 | brixen | so, now I go see why rb_protect got called with 0x0 for status |
| 01:37:18 | toulmean | ah ok |
| 01:38:20 | brixen | nothing really complex, just following your nose usually |
| 01:38:27 | toulmean | yes. |
| 01:38:46 | toulmean | as long as you get a backtrace it's possible to walk back in your steps |
| 01:39:02 | brixen | if it's a deterministic bug, sure |
| 01:39:04 | brixen | :) |
| 01:39:12 | toulmean | yeah |
| 01:41:09 | brixen | so, in this case, MRI does not assign to status if it is NULL/0 |
| 01:41:12 | brixen | oops, we do |
| 01:41:22 | brixen | easy fix |
| 01:42:34 | brixen | we'll blame evan for this one :) |
| 01:43:35 | brixen | toulmean: hey, it loaded :) |
| 01:43:41 | brixen | what should I do now? |
| 01:43:49 | toulmean | you need to load the JVM |
| 01:43:51 | toulmean | one sec |
| 01:43:54 | brixen | oh god |
| 01:44:00 | brixen | sorry... |
| 01:44:02 | brixen | :) |
| 01:44:38 | toulmean | ::Rjb.load |
| 01:45:09 | brixen | do I have to? maybe my computer will burst into flames... |
| 01:45:16 | brixen | can I push the fix and you can try that? |
| 01:45:18 | toulmean | actually ::Rjb.load "", ["", ""] |
| 01:45:22 | toulmean | yes |
| 01:45:25 | brixen | heh |
| 01:45:32 | toulmean | you can give me back the baby now :) |
| 01:45:48 | toulmean | thanks |
| 01:45:49 | brixen | yay! the giving will commence shortly |
| 01:46:03 | toulmean | cool |
| 01:46:05 | brixen | tries the load anyway |
| 01:46:14 | brixen | once the specs run |
| 01:46:32 | toulmean | got an extinguisher ? |
| 01:46:48 | boyscout | CI: rubinius: 6f4a6d5 successful: 3463 files, 13842 examples, 41494 expectations, 0 failures, 0 errors |
| 01:49:08 | brixen | I've got a cup of tea next to my computer |
| 01:49:47 | brixen | I'm going to trade that in for a manhattan |
| 01:50:21 | toulmean | :) |
| 01:51:35 | boyscout | Only set status in rb_protect if it is not NULL. - 031602d - Brian Ford |
| 01:51:59 | brixen | hum, so this thing uses dl? |
| 01:54:56 | toulmean | brixen: you know... this thing wasn't my idea... |
| 01:55:15 | toulmean | I just picked up the code |
| 01:55:22 | toulmean | RJB is an old old codebase |
| 01:56:03 | toulmean | brixen: what is dl ? |
| 01:57:07 | toulmean | brixen: ok got to run for the hdmi cable before fry's closes |
| 01:57:12 | toulmean | will pull tonight and try |
| 01:57:13 | toulmean | thx |
| 01:57:19 | toulmean | next step is to run buildr specs |
| 01:57:25 | toulmean | and then we can start having real fun |
| 01:57:28 | brixen | ok later! |
| 01:57:37 | brixen | dl is a library to load dynamic code |
| 01:57:43 | brixen | we don't support it yet afaik |
| 01:57:48 | brixen | it's very old |
| 01:57:50 | brixen | and sad |
| 01:59:11 | toulmean | brixen: we can rewrite it. |
| 01:59:37 | boyscout | CI: rubinius: 031602d successful: 3463 files, 13842 examples, 41494 expectations, 0 failures, 0 errors |
| 02:00:41 | brixen | toulmean: I'm trying to find it now |
| 02:00:56 | brixen | find where it is called |
| 02:01:06 | toulmean | ok going for real |
| 02:01:10 | toulmean | back in 1h30 |
| 02:01:13 | brixen | rjb gets to rjb_create_jvm |
| 02:01:14 | brixen | go! |
| 02:01:18 | brixen | later :) |
| 03:00:12 | dkubb | hey guys, I found an issue I was sort of able to isolate, and before I make a ticket I just wanted to see if it was known or not.. the following code explodes with rbx 1.0.0 for me: https://gist.github.com/b145936cdd590dc77049 |
| 03:01:20 | dkubb | dbussink brought this to me earlier today, and I was able to isolate it to one package in a plugin to DM, and then whittle it down to this code |
| 03:06:26 | dkubb | I have no knowledge of rbx internals, but it looks like when it initializes the Regexp object for /\s+/, it calls Regexp rather than ::Regexp; so the subclass of the same name is what gets the args |
| 03:07:30 | dkubb | if that's true, then it would explain a few other similar errors we've seen when testing DataMapper with rbx, since we have String, Integer, Numeric, etc classes under the DM::Property namespace |
| 03:11:21 | evan | dkubb: yeah, Defiler fixed that today |
| 03:42:01 | dkubb | evan: awesome.. thanks Defiler! |
| 04:10:48 | brixen | evan: so, I have DL compiling :) |
| 04:11:45 | evan | rad :) |
| 04:12:06 | evan | i'm trying to figure out why LLVM 2.7 doesn't like my custom alias analysis pass |
| 04:12:24 | toulmean | brixen: hey, is that going to help with jruby ? |
| 04:12:34 | brixen | toulmean: with rjb, yes |
| 04:12:44 | toulmean | with rjb |
| 04:12:47 | toulmean | yes sorry |
| 04:12:56 | brixen | toulmean: although, if you know how to load the jvm, you could probably write an FFI binding to do it |
| 04:13:14 | toulmean | brixen: uh. |
| 04:13:21 | brixen | the code in load.c open_jvm is near impenetrable to me |
| 04:13:44 | toulmean | to me too, sadly. |
| 04:13:51 | toulmean | ok so pulling |
| 04:13:52 | brixen | toulmean: but i figure, I might as well try to get DL running |
| 04:14:09 | toulmean | cool |
| 04:31:53 | brixen | oh for the... |
| 04:32:21 | brixen | we have vm/capi/handle.cpp => vm/capi/handle.o and we add vm/capi te -I for ruby.h |
| 04:32:51 | brixen | so dl/handle.c does not get built because make thinks vm/capi/handle.o is the obj file for dl/handle.c |
| 04:35:08 | brixen | evan: do you think we should move the c-api .h files to vm/capi/include ? |
| 04:35:28 | evan | huh? |
| 04:35:49 | brixen | see the lines above my Q |
| 04:36:29 | brixen | http://gist.github.com/410642 |
| 04:36:49 | brixen | DL has a file, handle.c |
| 04:36:58 | brixen | we have a capi file, handle.cpp |
| 04:37:07 | evan | who's makefile is that? |
| 04:37:19 | brixen | the one gen'd by extconf.rb in DL |
| 04:37:22 | evan | hm. |
| 04:37:41 | evan | we can move ruby.h to capi/include |
| 04:37:43 | evan | thats fine. |
| 04:37:47 | brixen | k |
| 04:37:53 | brixen | seems safer |
| 05:27:19 | evan | yay, i think i figured out what was up with LLVM 2.7 |
| 05:27:22 | evan | got it running now. |
| 05:27:33 | evan | need to rebuild it (AGAIN) with optimizations though. |
| 05:28:52 | brixen | sweet |
| 05:28:58 | brixen | except for the build again part |
| 05:29:10 | evan | thit did a bunch of stuff in LLVM 2.7 so that it builds with -fno-rtti |
| 05:29:18 | evan | which i guess has a 5% performance hit |
| 05:29:20 | brixen | ahh interesting |
| 05:29:25 | evan | i'm going to get us building with that too. |
| 05:29:29 | brixen | nice |
| 05:29:37 | evan | should be trivial, I use dynamic_cast<> all of about 2 places. |
| 05:29:45 | matthewd | Oh, rbx: "TypeError: Fixnum#to_str should return Float" |
| 05:29:52 | brixen | hehe |
| 05:30:07 | evan | anyway, instead of using dynamic_cast<> you have to implement a virtual function that does a cast and returns the right thing |
| 05:30:25 | evan | so that each class has their own way to cast themselves to a subtype |
| 05:30:25 | brixen | evan: not too bad then |
| 05:30:31 | brixen | gotcha |
| 05:30:32 | evan | just took me a while to figure out |
| 05:30:38 | evan | really glad I did though |
| 05:30:51 | evan | made me see how they implement multiple inheritance in C++ to deal with this. |
| 05:31:07 | brixen | ahh |
| 05:31:43 | brixen | matthewd: I'll trade you... you can get DL running and I'll work on whatever you got there |
| 05:31:58 | matthewd | brixen: Nah, I'm good :) |
| 05:32:10 | brixen | matthewd: aww c'mon :) |
| 05:33:05 | matthewd | Should the message of that exception be specced? |
| 05:33:13 | evan | |Blaze|_: no, I didn't, but I can't say it's a waste. |
| 05:33:33 | matthewd | (The best part is that two of the three things in there are wrong, not just one) |
| 05:34:27 | brixen | matthewd: no, they should not be |
| 05:34:44 | evan | like, the way dynamic_cast<> works is pretty interesting. |
| 05:34:48 | matthewd | brixen: So just fix it? |
| 05:34:53 | brixen | matthewd: yes |
| 05:34:58 | matthewd | Easy :) |
| 05:35:08 | brixen | matthewd: if we spec msg, then we're stuck with MRI's crappy ones |
| 05:35:54 | matthewd | Could do rbx-specific specs though |
| 05:36:09 | brixen | matthewd: that would be a ton of duplication |
| 05:36:13 | brixen | just fix it :) |
| 05:36:22 | evan | matthewd: no, no specing exception messages. |
| 05:37:07 | matthewd | I wouldn't even suggest it if I hadn't just found one that had a hard-coded method name in it :P |
| 05:37:13 | brixen | interesting, DL uses rb_check_safe_obj |
| 05:37:33 | brixen | a bit ironic huh, since you can send stuff to raw memory basically |
| 05:38:33 | evan | matthewd: what are you working on that you got that TypeError? |
| 05:39:34 | matthewd | evan: rb_num2dbl specs |
| 05:39:41 | evan | ah. |
| 05:49:05 | boyscout | Fix the "should return" exception message. - ba9ce7c - Matthew Draper |
| 05:49:06 | boyscout | Make rb_num2dbl handle all inputs correctly. - 7b77f74 - Matthew Draper |
| 05:49:06 | boyscout | Spec rb_num2dbl(). - 493c50f - Matthew Draper |
| 05:57:13 | boyscout | CI: rubinius: 493c50f successful: 3463 files, 13848 examples, 41501 expectations, 0 failures, 0 errors |
| 06:19:32 | brixen | holy crap, haha |
| 06:19:39 | brixen | I just loaded the jvm with DL |
| 06:20:16 | evan | hah |
| 06:20:23 | evan | oops? :D |
| 06:20:36 | brixen | hah |
| 06:21:02 | brixen | I have one more thing with DL no figure out |
| 06:21:27 | brixen | it defines IO#to_ptr which wraps a FILE* in an obj |
| 06:22:40 | brixen | er s/no/to/ |
| 06:23:46 | evan | UG. |
| 06:23:50 | cremes | geez, people, go to bed! |
| 06:23:53 | brixen | yeah, ideas? |
| 06:23:56 | cremes | rbx will wait until the morning |
| 06:24:00 | evan | cremes: it's 11:23 |
| 06:24:08 | brixen | cremes: neeeeveerrrr :) |
| 06:24:11 | evan | brixen: let me look at the impl. |
| 06:24:12 | cremes | ah yes, pst. i'm a cst guy |
| 06:24:39 | cremes | next time y'all are in Chicago, beers are on me. |
| 06:25:00 | brixen | evan: http://gist.github.com/410693 |
| 06:25:01 | evan | brixen: welp. |
| 06:25:11 | brixen | cremes: woot! |
| 06:25:11 | evan | brixen: that API is hilariously unsafe. |
| 06:25:15 | brixen | yeah |
| 06:25:17 | evan | brixen: looking at how MRI does it |
| 06:25:33 | evan | because it's passing the FILE* thats controlled by the IO out |
| 06:25:36 | evan | that being said |
| 06:25:47 | evan | I actually implemented GetOpenFile |
| 06:25:52 | evan | and rb_io_t |
| 06:25:55 | brixen | I was going to look at that |
| 06:26:02 | evan | i just called the FILE* for it stdio_file rather than f |
| 06:26:06 | evan | if you rename it to f |
| 06:26:08 | evan | it will just work. |
| 06:26:12 | brixen | ahh ok |
| 06:26:28 | evan | why name things sensible things when you can name thing things like f? |
| 06:26:35 | brixen | haha |
| 06:28:04 | brixen | this is the lovely sort of code I've been looking at all day |
| 06:28:05 | brixen | http://gist.github.com/410699 |
| 06:28:45 | evan | oh lebron. |
| 06:38:20 | brixen | for pete's sake... anyone see a problem with this MRI macro? http://gist.github.com/410701 |
| 06:41:08 | evan | never seen it before |
| 06:41:10 | brixen | hm, it actually coerces |
| 06:41:12 | toulmean | brixen: still working ? |
| 06:41:29 | brixen | toulmean: I got DL working and it loads the jvm |
| 06:41:35 | toulmean | cool |
| 06:41:48 | brixen | next up rb_set_errinfo(Qnil) is choking on the nil |
| 06:42:56 | toulmean | brixen: that's the gist above ? |
| 06:43:44 | brixen | evan: so basically, passing a zero length Ruby String (ie "") to NUM2CHR would end up with a call to Integer("") |
| 06:43:56 | brixen | toulmean: which? |
| 06:44:04 | evan | brixen: correct. |
| 06:44:06 | toulmean | err 410701 |
| 06:44:15 | toulmean | http://gist.github.com/410701 |
| 06:45:55 | brixen | toulmean: it's a wacky MRI macro that will either 1. get you the first char of a non-zero length String, 2. a number masked to 0xff, or an ArgumentError for passing "" to Integer() |
| 06:46:06 | brixen | er, that was supposed to be a 3. ... |
| 06:46:25 | toulmean | brixen: why is it used to start with ? In RJB I mean ? |
| 06:46:31 | toulmean | is it part of RJB code ? |
| 06:46:44 | brixen | the gist is MRI code |
| 06:46:48 | toulmean | ok |
| 06:46:50 | toulmean | ... |
| 06:46:59 | brixen | it is used in DL |
| 06:47:17 | toulmean | I thought RJB was the problem :) |
| 06:47:30 | toulmean | you guys are in trouble for some time it seems |
| 06:48:14 | brixen | RJB is some rather crazy code |
| 06:48:20 | brixen | and so is DL |
| 06:48:25 | evan | brixen: does rjb use DL? |
| 06:48:28 | brixen | the crazy factor sort of multiplies |
| 06:48:31 | evan | or did you decide while you're in a crazy mood |
| 06:48:31 | brixen | evan: yes |
| 06:48:37 | evan | might as well do double crazy! |
| 06:48:41 | brixen | nope |
| 06:48:47 | evan | didn't think so |
| 06:48:50 | evan | just checking! |
| 06:48:54 | brixen | last thing I wanted to do today was try to run DL :) |
| 06:49:01 | evan | hehe |
| 06:49:02 | toulmean | it's all my fault really |
| 06:49:16 | brixen | but I wanted less to try to port rjb to use FFI |
| 06:49:16 | toulmean | but is DL really necessary for RJB ? |
| 06:49:20 | evan | toulmean: you mean well |
| 06:49:25 | evan | rjb isn't your fault. |
| 06:49:33 | toulmean | evan: ya. It's sad. |
| 06:49:39 | evan | well, we need the DL API in some form |
| 06:49:43 | evan | so if we can just run the DL extension |
| 06:49:45 | brixen | toulmean: yes, DL is necessary unless you port it to use FFI to dlopen the jvm lib |
| 06:49:45 | evan | thats fine for now. |
| 06:50:02 | brixen | yeah, I figure running DL is a good thing |
| 06:50:04 | toulmean | ok |
| 06:50:07 | evan | brixen: how much DL does it use? |
| 06:50:07 | matthewd | "I don't think I can fit any more crazy in here... what library can I use?" :P |
| 06:50:35 | brixen | evan: don't really know |
| 06:50:58 | brixen | might just dlopen, I haven't really read the rjb code |
| 06:51:06 | brixen | I try not to look directly at it :) |
| 06:51:38 | toulmean | brixen: I think this qualifies for crazy too: http://github.com/brixen/kireru |
| 06:51:50 | evan | brixen: thats fair. |
| 06:51:58 | evan | toulmean: nah! it's empty! |
| 06:52:04 | evan | it's the picture of bliss right now! |
| 06:52:10 | toulmean | lol |
| 06:52:17 | evan | all things are possible when the repo is empty. |
| 06:52:23 | evan | you can quote me on that. |
| 06:52:31 | toulmean | :) |
| 06:52:39 | toulmean | I wonder how far that would get |
| 06:52:50 | brixen | toulmean: that would most definitely not be crazy |
| 06:52:55 | brixen | :) |
| 06:53:00 | toulmean | you guys need to explain me your relationship to JRuby as well |
| 06:53:38 | brixen | I did, in my README for kireru :) |
| 06:53:52 | toulmean | the funnel thing ? |
| 06:54:00 | brixen | heh yeah |
| 06:54:19 | toulmean | I was chatting with headius on jruby yesterday |
| 06:54:29 | toulmean | mentioned I liked rubinius |
| 06:54:48 | brixen | yeah, jruby has really good java-integration story |
| 06:54:56 | brixen | they've been working very hard on that |
| 06:55:39 | toulmean | headius is working with you too right ? |
| 06:56:10 | brixen | headius works on jruby, we work on rbx |
| 06:56:23 | brixen | we collab on the specs and probably on some C-API stuff now |
| 06:56:33 | toulmean | brixen: ah ? His linkedin profile mentioned something about rubinius |
| 06:56:34 | toulmean | ok |
| 06:56:35 | brixen | since they have a jruby C-API RSoC project |
| 06:56:59 | brixen | he contributed specs when rubyspec was still part of rbx repo |
| 06:57:06 | brixen | other than that, I don't really know |
| 06:57:18 | brixen | we talk about crazy MRI behavior :) |
| 06:57:28 | toulmean | I see |
| 06:59:53 | brixen | hmm, might as well fix these warnings in DL while I'm here |
| 07:04:58 | evan | well, i think that the LLVM 2.7 change was small enough that I can conditionalize it |
| 07:05:01 | evan | so we can use either |
| 07:08:05 | brixen | ahh cool |
| 07:08:44 | brixen | nice bridge to getting pre-builts and lets folks use 2.6/7 installed |
| 07:12:35 | evan | yeah. |
| 07:13:11 | evan | i made the small changes so we build with -fno-rtti now |
| 07:13:16 | evan | also. |
| 07:15:52 | brixen | sweet |
| 08:09:02 | dbussink | evan: did you try rails3 with rbx recently? |
| 08:11:34 | brixen | hmm, I really need to come up with a scheme for capi specs |
| 08:11:50 | brixen | since we have rb_thread_blocking_region and mri does not |
| 08:11:54 | brixen | C just sucks |
| 08:12:10 | brixen | dbussink: is it not working for you? |
| 08:12:19 | brixen | dbussink: evan ran the specs before 1.0 |
| 08:13:06 | dbussink | brixen: getting a uninitialized constant ApplicationController error here |
| 08:13:22 | brixen | hmm |
| 08:13:38 | brixen | dbussink: did you see, I got DL building and running :) |
| 08:13:58 | dbussink | brixen: that's really nasty :) |
| 08:14:38 | brixen | heh |
| 08:15:03 | brixen | I'm not going to push this till tomorrow |
| 08:15:14 | brixen | I'm too groggy to fix any issues |
| 08:15:36 | brixen | dbussink: also, rjb loads most of the way |
| 08:15:49 | brixen | at least, well past dlload'ing the jvm :) |
| 08:16:14 | dbussink | i'd suggest everyone who uses rjb to switch to jruby :P |
| 08:16:14 | brixen | s/dlload/dlopen/ |
| 08:16:30 | brixen | dbussink: but, we have fork! :) |
| 08:32:32 | brixen | so. close. |
| 08:32:42 | brixen | we are not handling frozen correctly somewhere |
| 08:32:48 | brixen | but, nite! |
| 08:38:52 | toulmean | hey guys, I tried to install rake as a gem on rubinius 1.0 |
| 08:39:02 | toulmean | got this error while trying to run the rake bin |
| 08:39:18 | toulmean | >/usr/local/rubinius/1.0.0/gems/bin/rake |
| 08:39:18 | toulmean | -bash: /usr/local/rubinius/1.0.0/gems/bin/rake: /Users/evan/git/rbx/bin/rbx: bad interpreter: No such file or directory |
| 08:40:22 | toulmean | any way this might be a bad reference to evan's home folder ? |
| 08:57:48 | cyndis | you're supposed to use rbx -S rake |
| 09:01:14 | toulmean | cyndis: true |
| 09:01:45 | toulmean | ok it works then. |
| 09:01:50 | cyndis | :) |
| 09:02:12 | cyndis | otherwise, yes, that is known |
| 09:09:01 | toulmean | ah ? ok. |
| 09:14:12 | dbussink | toulmean: looks like a wrong shebang there |
| 15:06:08 | boyscout | Add NativeMethod functors up to a ten-argument version - c2c8c92 - Mikko Perttunen |
| 15:15:06 | boyscout | CI: rubinius: c2c8c92 successful: 3463 files, 13848 examples, 41501 expectations, 0 failures, 0 errors |
| 16:44:41 | brixen | toulmean: I'm fixing your extend_object issue right now |
| 16:45:01 | toulmean | brixen: it's an issue or I'm doing something wrong ? |
| 16:47:16 | brixen | no, not really |
| 16:47:29 | brixen | we don't expect it to be private but yours is |
| 16:47:33 | brixen | not a big deal |
| 16:47:49 | brixen | we just 1. didn't have specs for that case and 2. the existing specs are horrid |
| 16:48:12 | brixen | so 10 parts fixing specs, 1 part writing a new spec, and 1 part fixing issue :) |
| 17:06:03 | cyndis | brixen: i'm speccing rb_set_end_proc and need to load the capi spec extension in a separate ruby process. is there any good way to do this? |
| 17:06:29 | brixen | cyndis: :( |
| 17:06:54 | brixen | what do you mean by load the capi spec extension in a separate process? |
| 17:07:09 | cyndis | spec/capi/ext/kernel_spec.so |
| 17:07:11 | brixen | also, I don't know what rb_set_end_proc does yet.. :) |
| 17:07:19 | cyndis | it does basically at_exit(c function) |
| 17:08:06 | brixen | hm |
| 17:08:25 | brixen | cyndis: you should be able to give the full path to require |
| 17:08:44 | brixen | did you try with ruby_exe? |
| 17:08:58 | cyndis | how do i find out the full path? |
| 17:09:20 | cyndis | oh wait, __FILE__ and dirname |
| 17:09:24 | brixen | you could make a fixture script that encodes the full path relative |
| 17:09:25 | brixen | yeah |
| 17:09:43 | brixen | or just use that directly in the spec |
| 17:09:45 | cyndis | yeah, i tried that before but it was inside ruby_exe and __FILE__ was "-e" |
| 17:10:07 | brixen | not __FILE__ in ruby_exe |
| 17:10:12 | cyndis | yes |
| 17:10:15 | brixen | __FILE__ in the spec file |
| 17:10:26 | cyndis | somehow i didn't realize that :) |
| 17:10:32 | brixen | ahh ok |
| 17:10:32 | brixen | n/p |
| 17:10:37 | cyndis | thanks |
| 17:10:43 | brixen | I also have the fixture() helper |
| 17:10:53 | brixen | fixture __FILE__, "some_name" |
| 17:11:03 | brixen | which will look in various fixture dirs |
| 17:11:09 | brixen | sometimes that is easier |
| 17:11:12 | brixen | you can grep for usage |
| 17:11:15 | cyndis | i'll check that out |
| 17:12:55 | brixen | toulmean: I'm just going to push this and let you check the buildr specs |
| 17:13:11 | toulmean | ok |
| 17:13:33 | boyscout | Rewrote Module.extend_object specs. - f66051a - Brian Ford |
| 17:13:33 | boyscout | Use send to reach private extend_object methods. Closes #324. - b0ed91f - Brian Ford |
| 17:13:46 | brixen | toulmean: I cloned buildr though, so I can run commands in the future |
| 17:13:54 | brixen | what's the simplest way to run the specs? |
| 17:14:36 | toulmean | rake spec |
| 17:14:47 | brixen | I'm running rake setup right now |
| 17:14:51 | toulmean | thx, I just need to walk the dog first |
| 17:14:54 | toulmean | yes, good idea |
| 17:15:07 | toulmean | though you might be in trouble - it will try to install the rjb gem |
| 17:15:13 | brixen | hmm, this is bad |
| 17:15:18 | toulmean | you need to install rjb yourself as a gem first |
| 17:15:20 | toulmean | to do that |
| 17:15:24 | brixen | why does it automatically use sudo |
| 17:15:39 | brixen | to try to install rcov? |
| 17:15:53 | brixen | also, we do not support rcov |
| 17:16:05 | brixen | since it depends on MRI internals |
| 17:16:20 | toulmean | we do rcov for testing the coverage, nothing more |
| 17:16:25 | brixen | ok |
| 17:16:33 | brixen | well, it should not sudo unless needed |
| 17:16:33 | toulmean | ../rubinius/bin/rbx -S rake --rakefile rjb.rake is the way to create the rjb gem |
| 17:16:53 | toulmean | yeah. It's all tailored for a standard mri install. |
| 17:17:01 | toulmean | back in 15 |
| 17:17:16 | brixen | I've got to run some errands, but I'll try to push the rjb stuff before I go if I can |
| 17:19:05 | brixen | arg conflicts :( |
| 17:21:33 | boyscout | CI: rubinius: b0ed91f successful: 3463 files, 13849 examples, 41502 expectations, 0 failures, 0 errors |
| 17:46:27 | toulmean | back |
| 18:21:56 | Defiler | nil <=> nil returns 0 in 1.9 |
| 18:21:57 | Defiler | awesome |
| 18:23:16 | brixen | yeah, marcandre lobbied hard for that |
| 18:23:17 | brixen | yay |
| 18:23:41 | brixen | toulmean: gotta run, but I'm headed somewhere I may be able to push this stuff |
| 18:24:07 | toulmean | brixen: hey, no rush, it's Sunday |
| 18:24:13 | brixen | toulmean: have more specs to write and some juggling of capi to do |
| 18:56:16 | dbussink | brixen: i have a nice one: https://gist.github.com/fe172f32c24e591ad3b7 |
| 18:56:27 | dbussink | check which files they generate, rbx misses some files |
| 20:20:31 | BBHoss | how do i use the JIT feature, i am using RVM and have compiled with the --jit option |
| 20:21:07 | wayneeseguin | It should 'just work' IIRC ? |
| 20:21:25 | BBHoss | wayneeseguin: hmm ok, so should it still make .rbc files? |
| 20:21:44 | wayneeseguin | I would think so |
| 20:21:51 | BBHoss | ok |
| 20:22:06 | wayneeseguin | I think the jit basically takes what was compiled, and as the program runs more it optimizes it further |
| 20:22:07 | BBHoss | i thought that jit means it compiled it on the fly, without compiling it all into files |
| 20:22:11 | BBHoss | ahh ok |
| 20:22:20 | wayneeseguin | evan / brixen / Defiler will know way more than me on that though. |
| 20:22:34 | wayneeseguin | I believe the .rbc in that case is like 'precompiling' |
| 20:23:09 | BBHoss | ooh fail, just crashed it |
| 20:23:09 | wayneeseguin | so it can run immediately and the LLVM will keep track of function calls and do neat tricks to optimize running code |
| 20:23:12 | wayneeseguin | like inlining etc |
| 20:23:25 | BBHoss | https://gist.github.com/96deac16196f3725a38d |
| 20:23:39 | BBHoss | and it STILL made the rbc files |
| 20:24:10 | wayneeseguin | I'm not sure on that one, you'll have to wait for one of the core to be around |
| 20:25:00 | wayneeseguin | BBHoss: out of curiosity, try 'rbx --no-rbc -S ruby script/server' |
| 20:25:11 | wayneeseguin | or maybe even without the 'ruby' word in there |
| 20:25:33 | BBHoss | still fails |
| 20:25:38 | BBHoss | this is HEAD, may be a bug |
| 20:25:48 | wayneeseguin | ahhh ok in over my head :) |
| 20:26:11 | wayneeseguin | If you can wait around for evan / brixen they should be able to help |
| 20:26:24 | BBHoss | got to watch lost :) |
| 20:26:28 | wayneeseguin | or check back tomororw since it's Sunday ;) |
| 20:26:46 | wayneeseguin | Only people sick in the head hang around on Sunday's to help people in IRC . |
| 20:26:57 | BBHoss | heh, like you :) |
| 20:27:51 | BBHoss | wayneeseguin: i think i found the issue http://blog.ubrio.us/nix/osx-rubygems-and-cross-thread-violations-in-rb_gc/#high_4 |
| 20:28:02 | BBHoss | i used gemset copy system rbx-head |
| 20:28:24 | BBHoss | any way to get it that to not copy natively-compiled stuff |
| 20:31:57 | wayneeseguin | BBHoss: if you use gemset copy, be sure to run 'rvm gemset pristine' afterwards to recompile C extensions |
| 20:32:01 | wayneeseguin | I might have to make that default |
| 20:32:17 | BBHoss | wayneeseguin: that wont work with rbx though, because it only supports FFI right? |
| 20:32:56 | cyndis | rbx does support capi |
| 20:33:10 | BBHoss | cyndis: really? is that a new development? |
| 20:33:22 | cyndis | not really :) |
| 20:33:22 | wayneeseguin | BBHoss: The gem pristine basically does a quick re-install of all the gems |
| 20:33:29 | wayneeseguin | So I'm guessing it would work . |
| 20:33:35 | BBHoss | hmm |
| 20:33:38 | BBHoss | awesome |
| 20:33:38 | wayneeseguin | It does support some of the C API |
| 20:33:55 | wayneeseguin | The pieces that make sense and are not Ggem developers taking advantage of things they shouldntshouldn’t |
| 20:34:07 | BBHoss | heheh, its IS C after all :) |
| 20:34:21 | wayneeseguin | hai! |
| 20:34:57 | BBHoss | hmm apparently it doesnt support the json gem |
| 20:36:05 | cyndis | yajl-json is supported and it supports the same api |
| 20:43:45 | BBHoss | apparently webrick doesnt handle large files well, dunno if its rbx-specific, but heres the logs: https://gist.github.com/bf6d13d1e0463fe2bc72 |
| 20:48:41 | wayneeseguin | have to head to dinner, bbl |
| 21:45:31 | kronos_vano | http://gist.github.com/411270 :( |
| 21:49:06 | ereslibre | hi there guys. very interesting project. I am trying to compile it out, but I just can't. I am using ruby trunk, but as far as I know, rubinius will only be compiled by ruby < 1.9. I am confused here: I can understand it implements ruby < 1.9, but cannot it be _built_ with ruby > 1.9 ? |
| 21:51:48 | kronos_vano | ereslibre, It will be fixed. But for now rubinius supports only 1.8 |
| 21:52:10 | ereslibre | kronos_vano: interesting |
| 21:55:29 | kronos_vano | ereslibre, Patches are welcome! Evan(C) :) |
| 21:55:42 | ereslibre | kronos_vano: what's fundamentally missing ? |
| 21:56:15 | kronos_vano | I dunno. |
| 22:39:58 | toulmean | brixen: I am getting some weird error when running buildr specs now. |
| 22:40:22 | toulmean | brixen: the error message is: method 'trace': given 0, expected 1 (ArgumentError) |
| 22:41:10 | toulmean | brixen: I have a trace method inherited from Rake::Application, which takes no arguments |
| 22:41:25 | toulmean | I also have a trace method defined inside the default package |
| 22:41:33 | toulmean | ok maybe I should do a spec... |
| 22:42:39 | toulmean | brixen: where should I write such a spec about method overriding and visibility ? |
| 23:47:35 | evan | wayneeseguin: what is "gemset copy"? |
| 23:47:50 | evan | BBHoss: that error you hit in rubinius trying to run an extension that was compiled against MRI |
| 23:50:12 | evan | oh man |
| 23:50:17 | evan | people are using gemset copy with rbx? |
| 23:50:19 | evan | mega fail. |