Index

Show enters and exits. Hide enters and exits.

00:02:30Zoxcwell my guess was correct :)
00:07:50maharghow so? out = ""; ... out.append sep; out.append elem; ... return out
00:08:28Zoxcout is a string, no?
00:09:22mahargwhat else would it be?
10:11:15boyscoutSpeed up Array#inspect - f9dc712 - Ivan Samsonov
10:16:33boyscoutCI: rubinius: f9dc712 successful: 3037 files, 11914 examples, 36156 expectations, 0 failures, 0 errors
16:42:23be9hi ppl. tried to build latest git, get this: http://pastie.org/832910 . this is gcc 4.4.3 and llvm 2.6
16:57:17somebodybe9, I think for now is better to use prebuilt llvm
16:58:17be9somebody_, what do ya mean by prebuilt? I've installed llvm package in archlinux
16:58:56somebodybe9, ./configure --skip-system
17:01:02be9actually I could workaround it by stuffing -fpermissive into CXXFLAGS
17:02:43be9too bad CXXFLAGS gets into C compiler cmdline too
17:13:51be9something worse: vm/llvm/passes.cpp:277: error: 'sadd_with_overflow' is not a member of 'llvm::Intrinsic' ( http://pastie.org/832969 )
17:37:36brixenbe9: gist me ./configure --show
17:37:52brixenbe9: you have to use a specific version of llvm
17:39:23slavahi brixen
17:39:27brixenhi slava
17:53:02be9brixen: http://gist.github.com/308978
18:11:17brixenhmm
18:44:40be9so, the problem was stale llvm tree. everything works now
18:44:50brixencool
19:11:46be9I've just tried to install and run a request-log-analyzer gem against a big Rails production.log. "no method 'divide' on an instance of Rational. (NoMethodError)"
19:13:32brixenok
19:13:46brixenyou can file a ticket with backtrace and steps to repor
19:13:51brixener repro
19:13:56brixenor try tracking it down
19:14:28be9I wonder what's a Rational#divide method
19:14:55brixensounds like something got compiled with the kernel flags when it should not have
19:15:19brixenwe have a kernel divide method to get around mathn redefining Float#/ incompatibly
19:15:51brixenbut I can't figure anything out with a one-line error ;)
19:17:46be9sure :) http://gist.github.com/309063
19:22:47brixenhmm yeah
19:22:57brixenevan fixed some coercion issues recently
19:25:44be9easy reproducible: a=1094; b=Rational(8485609, 43200); a/b
19:25:55evanon line 41 of bootstrap/fixnum.rb
19:25:58be9raises NoMethodError
19:26:10evanthat should probably be redo_coerced :/, o
19:26:12evannot :divide
19:26:33evansomeone else will have to test that though
19:26:39evani'm headed out
19:26:41be9i'll test now
19:28:23be9it works :)
19:31:44brixenhmm
19:32:38brixennot sure that will be correct though
19:33:01be9log analyzer actually worked now (~3 times slower that latest REE)
19:38:56brixenshould be ok, because fixnum div will succeed through the primitive and everthing else would coerce anyway
19:41:03be9cool
19:41:15boyscoutFix Fixnum#/ coercion from #divide method (from Evan). - d29c664 - Brian Ford
19:46:31boyscoutCI: rubinius: d29c664 successful: 3037 files, 11914 examples, 36156 expectations, 0 failures, 0 errors
19:49:43saywatmangis there any convention for testing segfault in rubyspec ?
19:49:52saywatmangeg. fork
19:49:52saywatmang?
19:51:17brixensaywatmang: what do you mean by "testing segfault"
19:51:36saywatmanglike
19:51:39brixenwe do not write specs that say: it "segfault when you do blah"
19:51:40saywatmangsomething segfaults
19:51:44brixenthat's a bug
19:51:46saywatmangso i want to write a test that passes if it doesnt segfault
19:51:46brixennot a spec
19:51:49saywatmangic
19:51:52saywatmangbugs dont go in the spec ?
19:51:57brixenhuh?
19:52:08brixenshow me what you are looking at
19:52:48saywatmanghttp://gist.github.com/301174 segfaults 187-p174+
19:53:11saywatmangi just did the fix i wanted to write a spec for it, but i guess ur saying regression specs dont belong in rubyspec ?
19:53:24saywatmangbrixen, ^
19:53:50brixenno, that's not what I'm saying
19:53:58brixenso in this case, you use ruby_bug guard
19:54:03saywatmangah ok cool
19:54:08saywatmangand then is forking ok ?
19:54:19saywatmangi recall in the past you being against forking or something
19:54:56brixenhttp://rubyspec.org/wiki/rubyspec/Guards
19:55:08saywatmanggreat thx
19:55:08brixenthere's no point in forking
19:55:35brixensee under 3. Bugs
19:55:54brixensaywatmang: do you understand how to use it?
19:56:02saywatmanglooking
19:56:33saywatmangic, so it wont run unless its a ruby version where its known to be fixed
19:57:26brixenright
19:57:30saywatmangsweet, thx
19:57:41brixenit will run on all alternative implementations regardless of version
19:57:57brixenit will run on MRI only for versions greater than the ruby_bug guard
19:58:17saywatmanghrm, what if the fixed version isnt released yet :)
19:58:33saywatmangah right
19:58:38saywatmangthat works
20:16:39saywatmangbrixen, does that look correct? http://rubyspec.org/projects/rubyspec/issues/show?id=208
20:22:15brixensaywatmang: no, it needs some work
20:22:25brixenwhy are you defining the method on Object?
20:24:05brixensaywatmang: I'll just comment on your ticket
20:25:45saywatmangyea thats fine thanks
20:27:22EccoHi :-)
20:27:30EccoSimple question : why Rubinius ?
20:27:55EccoIs it faster than MRI ? And than the "default" JIT Ruby interpreter of 1.9 ?
20:28:33brixenit is faster than MRI in some cases, slower in others
20:28:40brixenbut it will get faster
20:28:45brixen1.9 is not a JIT
20:28:54brixenit's a bytecode vm
20:29:09brixenrubinius, on the other hand, does have a JIT
20:29:12EccoOh, ok. I thought i was
20:29:33saywatmangbrixen, it doesn't matetr where that method is defined, should i create a new class fixutre for it under fixtures ?
20:29:50brixensaywatmang: could you not just use a mock?
20:30:15saywatmanga mock class ?
20:30:34brixensec...
20:30:36saywatmangah yea duh i could just create a new class
20:30:39saywatmangnm about that
20:30:47saywatmangpassing in nil doesnt matter, i just have to pass in something
20:31:17brixenthe method is defined with a block taking no arguments
20:31:22brixenwhy do you have to pass something?
20:32:01saywatmangbrixen, its the nature of the bug
20:32:07brixenok
20:32:08saywatmanghttp://coderrr.wordpress.com/2009/03/29/ruby-18-define_method-scope-bug/ if ur curious
20:33:04brixenahh gotcha
20:33:17brixenthis spec will need a comment describing these points
20:33:38brixenbecause there's really no way to infer from the spec why you are passing an argument
20:34:48brixenEcco: I'm curious why you are asking "why rubinius", are you new to ruby?
20:34:49saywatmangwell actually i can add an argument to define_method, the bug will still happen
20:34:55saywatmangif that makes it clearer
20:34:57EccoNot at all
20:35:06EccoI've been using Ruby for quite a while now
20:35:12EccoI really love it
20:35:13brixensaywatmang: well, it really doesn't make it clearer
20:35:15EccoBut I find it slow
20:35:19slavarubinius is the future of ruby
20:35:30brixensaywatmang: we need to say why it's important to call with args > 0
20:35:34saywatmangk
20:35:41Ecco(I'm from a C background, so obviously other languages tend to seem slow ^^)
20:35:42brixenEcco: did you just hear about rubinius recently?
20:35:50EccoHmm, yeah, just today
20:35:55brixenahh ok
20:35:59brixeninteresting!
20:36:00brixenheh
20:36:09brixenEcco: how did you hear about it?
20:36:14EccoFrom Unicorn
20:36:22brixenUnicorn talks?
20:36:26EccoI was told it was a good way to deploy Rails apps
20:36:29Ecco:-D
20:36:32brixenheh
20:36:33Eccohttp://unicorn.bogomips.org/
20:36:39EccoI have to go though
20:36:47brixenok
20:36:53EccoI was just browsing randomly though
20:36:53brixencome back soon
20:36:57Eccosure ^^
20:36:58brixenI'll tell you more
20:37:01Ecco:-D
20:43:49brixensaywatmang: I don't have that version of 1.8.7 installed yet, do you want to test this http://gist.github.com/309183
20:44:05brixeninvokes rvm and sees who gets done first
20:44:26wayneeseguinlol
20:44:26saywatmangi tested with 1.8.7-p174 and 1.8.7-p248
20:44:29wayneeseguinrvm races!
20:44:35saywatmangand i just submitted a new patch
20:44:38brixenoh, it manifests in 248?
20:44:40brixenI have that
20:44:53saywatmangnah its fixed in 248
20:45:11saywatmangmanifests in <248
20:45:11brixeno
20:45:12brixenk
20:45:13brixenheh
20:45:25brixenoh, hmm
20:45:32saywatmangand actually i realized we need an actual def to repro it inside of the test suite
20:45:42saywatmangan outer lambda fixes the bug, fkn MRI
20:45:42brixenok
20:48:03brixenyeah, mock wouldn't work anyway
20:48:23brixenI was thinking of a singleton method definition but you need a Module there
20:48:55saywatmang(class<<obj;self;end).send :define_method probly woudl work
20:50:42brixenwell, in that case just add a fixture
20:51:08saywatmangi think k=Class.new is good enough isn't it ?
20:51:19brixenyeah
20:54:07brixenok, just looked at it
20:54:13brixenno "should" in description strings
20:54:44brixensaywatmang: I'm gonna grab some food but later I'll see if I can clean this up a bit
20:55:05brixenI don't like the def for a new scope
20:55:44brixenbut it might be the simplest way
20:55:44saywatmangsigh, so picky :P do what u will with it
20:57:00brixennot sure yet, lunch! :)
22:21:33brixenarg, still sporadic EBADF's running the specs
22:45:15chuckIs rbx rubinius in rvm?
22:45:43yakischlobayea
22:45:50chuckthanks
22:46:13yakischlobayou can use 'rvm install rbx-head' to use the latest rbx from git
22:49:58chuckyakischloba, I'm trying out 1.0.0-rc2 for now
22:50:08yakischlobacool.
22:50:32brixenchuck: rc3 is out
22:51:15chuckbrixen, this is the one that's in rvm
22:51:49brixenyou still want to use rc3
22:52:01brixenit's not hard to use it from the build dir directly
22:52:04brixenor install
22:52:39brixenand git master is sane, so at least you should use rbx-head
22:54:56chuckokay
22:55:24chuckbrixen, git://github.com/evanphx/rubinius.git, right?
22:55:58brixenyou should be able do it from rvm
22:56:46brixenrvm install rbx-head
23:03:26chuckbrixen, oh cool, thanks
23:07:07brixenn/p
23:15:44chuckWhat's the best JSON library that's compatible with Rubinius?
23:20:36brianmarioyajl-ruby should be compatible
23:20:53brianmariobut it's been a while since I tested it
23:27:50brixenwonders if he repeats 'mathn I hate you' enough will it poof disappear
23:49:21brianmariojust ran the yajl-ruby specs (from yajl-ruby master), looks like the Zlib::Deflate#ended? method doesn't exist?
23:53:46brianmarioer sorry, I guess it's Zlib::Zstream#ended? (looks like it's just an alias for closed?)
23:54:53brianmariowhich doesn't exist either