Index

Show enters and exits. Hide enters and exits.

00:02:45dwaitethis sort of confusion _never_ happens with non-dynamic languages
00:02:46dwaite;-)
00:03:05dwaite(because you get segfaults long before this point)
00:03:45evanhah
00:03:45evanyeah.
00:03:49evanthe compiler would have just crashed.
00:05:02evanfuck yeah.
00:05:05evanrails 2.3.5 runs.
00:05:32rueNeat
00:05:53rueThe old AST grapher and ASCII formatter might have some good ideas.
00:06:11evanwe never really had an old AST grapher
00:06:14evanthat i'm aware of.
00:06:32rueReally? Thought there was one generating dot files
00:06:47rueAnd I wrote something to just prettyprint them at least
00:06:48evanoh yes that.
00:06:54evani did write that
00:06:58evanit was bytecode though
00:07:00evannot AST
00:07:02evanas I recall.
00:07:07evanit's been a while though, i could be wrong.
00:07:15evanbrixen's printer is great
00:07:20evanjust ambigious on this one thing.
00:09:07brixenthe bytecode bb .dot file grapher is still there
00:09:12brixenmight need some tweaking to run
00:10:17rueWhy would it be graphing bytecode?
00:12:33benschwarzevan, brixen, whats the best way to debug / inspect the object space and find leaks or gc issues?
00:12:42benschwarz(mri)
00:13:08evananything that you can rub and gives you good luck is a good place to start
00:14:16brixenhaha
00:15:01dwaiteall the things I rub wind up giving me restraining orders :'(
00:15:32benschwarzoh snap
00:15:34dwaitegiggles
00:15:36brixenhah
00:15:57brixenbenschwarz: I thought there was some lib out there to help track leaks in MRI...
00:16:04benschwarzI can watch the process grow and shrink as it processes items
00:16:12brixenbenschwarz: I'd like to tell you, just use rbx, but...
00:16:31benschwarzso I suspect that the gc is running prematurely ?
00:16:42brixenwhy?
00:16:47benschwarzbrixen: but what?
00:17:05brixenbenschwarz: but you haven't been helping us, so we're not there yet :P
00:17:15benschwarz:(
00:17:24brixenbenschwarz: the process should grow and shrink if GC is working properly
00:18:03benschwarzbrixen: so if I can log out objects being processed, and see if grow and shrink for each one...
00:18:04benschwarz?
00:18:26brixenum, dunno what you are processing
00:18:32rue...You will be doing a lot of unnecessary work?
00:18:39rue(Probably)
00:18:59brixenbenschwarz: what is your goal? tracking down a memory leak?
00:19:08brixenor do you just wonder if it might be leaking?
00:19:36brixenmemory leaks by definition should produce unbounded memory growth
00:19:51brixenmight be very slow growth
00:19:55benschwarzbrixen: I'm wondering.. I thought it might be slowing down the processing due to constant GCing..
00:19:59brixenbut that's complicated by MRI's GC
00:20:53brixenbenschwarz: I dunno, I'n no expert on tracking MRI GC perf :(
00:21:04benschwarznow rbx on the other hand? :D
00:21:15brixenheh rbx is sane :P
00:21:28brixenbenschwarz: have you run this under REE?
00:22:30benschwarzno, although under 1.9 (just testing now)
00:22:37benschwarzits about 50% faster
00:22:45benschwarzand uses 10% less memory
00:22:53benschwarzroughly
00:23:05brixenbenschwarz: http://ola-bini.blogspot.com/2007/11/ruby-memory-leaks.html
00:24:48benschwarzcheers
00:26:09benschwarzmmm http://blog.evanweaver.com/articles/2008/02/05/valgrind-and-ruby/
00:27:39brixenthere ya go
00:42:45boyscoutPrint the names of ivars that contain other Nodes - ce9b280 - Evan Phoenix
00:42:45boyscoutExtract assignment properly. Fixes #95. - 25a1fd9 - Evan Phoenix
00:42:45boyscoutUse chained exceptions for compiler errors - 3355561 - Evan Phoenix
00:44:34evanrails 2.3.5 with sqlite3 seems to be working.
00:45:43boyscoutCI: 3355561 success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors
00:46:44dwaitenice
00:47:26brianmarioevan: can you add a couple of gem dependencies in your environment.rb (of the 2.3.5 app) and try an "rake gems:install" to see if you can replicate that issue I was having?
00:47:28brianmarioif you get time
00:47:49evanwhat am I looking for?
00:47:54evanhave you put in an issue?
00:47:58evanthats always step 1
00:48:08brianmarionot yet, was still trying to see if I could narrow it down a little better
00:48:15brianmariobut I should have...
00:48:35brianmariobasically, it pegs the CPU and keeps eating ram until I kill it or it finishes
00:49:06evani'll wait until you put in an issue
00:49:13evanif gems:install uses rubygems to install stuff
00:49:23evanthen it's likely the rubygems slowness i've been seeing
00:49:25brianmarionot sure if it helps or not, but I notice at first it's pegged around 180% cpu (I have 4 cores in this machine), so it seems like more than one thread is doing something (?)
00:49:27evani'm about to try and track it down.
00:49:33evandon't tell me in here
00:49:36evanput your info into the issue.
00:49:39brianmariobut drops back down to 100%
00:49:41brianmariook
00:49:44evanIRC is ephemeral.
00:49:44brianmario;)
00:49:46evanissues are not.
00:49:55brianmariogood point
00:54:35brianmariodone, #107
00:55:47evancool
00:55:54evani'm looking into the rubygems slowness now
00:56:01evani'm sure it's the same thing
00:56:26brianmarioyeah
07:58:54dbussinkmorning peoples
09:05:20rueMorning
09:40:21dbussinkrue: the silence...
10:20:52rueYep, that
14:48:09derenrichwhoa
14:48:12derenrichthis is a channel
14:53:08dbussinkderenrich: what did you expect? :)
14:53:31derenrichi didn't actually think it was a thing
14:56:10dbussinkderenrich: it's an alternative ruby implementation
14:57:48derenrichno i know
15:19:29khaasederenrich: this channel is one of the finest on freenode. quit entertaining even if you just listen/read.
15:21:57Zoxcthis channel needs 600 more users
17:13:00rueUncle Evan Needs You!
17:13:09sbryantWhat does he need?
17:13:11evaneh?
17:13:38rueWell, we are still about 598 people short of the goal
17:13:46evanah!
17:13:51evanheh
17:13:55sbryantI'm still lost.
17:14:05evanhe's talking about the discussion about the number of people in here earlier
17:14:39sbryantOh
17:14:56rueYes, I totally failed to account for timestamps
17:15:06rueSomeone said this channel needed 600 more people
17:15:28Zoxcis someone :(
17:16:23sbryantGotcha.
17:18:09evanZoxc: you're here!
17:18:11evan599 left.
17:18:34sbryantevan: that begs the question: is anyone ever really here?
17:18:36sbryantducks
17:19:02evanyou get on with your philosopher self!
17:19:25sbryantHah.
17:19:31Zoxcstill 598 left :/
17:23:45tarcieriis here, lingering in the ether
17:24:04evantackles tarcieri and gives him a noogie
17:24:09tarcierilol
17:24:09evanGOTCHA
17:24:35tarcieriescapes back into the miasma of idling
17:25:28evanpulls tarcieri up out of the darkness
17:25:31evanSTAY WITH US!
17:25:35tarcierilol
17:26:18Zoxcthrows a rbx fork bomb at the channel
17:26:59evancasually difuses it and makes it into a planter
17:27:14evanyou'll have to try harder than that!
17:29:01Zoxcthrows forks at evan instead
17:29:09evanengages the spoon shield
17:29:43sbryantthrows fors and the spoon shield FTL to create the freak of nature known as SPORK.
17:29:53sbryantAnd spelling fail :(
17:30:52evanthe spork effect overwhelmed you
17:30:53evanit happens.
17:30:59sbryantIt does.
17:32:01derenrichis here still
17:32:09derenrichwill contribute nothing useful
17:37:27evannah!
17:37:30evaneveryone helps.
17:37:36evaneven if it's just morale support.
17:37:48tarcierieverything counts in large amounts
17:38:58Zoxc#mirb has more morale support :D
18:02:43rueThat does not count
18:24:05evanyay!
18:24:26evanwaits for boyscout
18:24:26evanoh
18:24:30evanwhere is boyscout!?
18:24:47evanfail!
18:24:55evananyway, just did a couple commits
18:25:05evancut the time to parse rubygem's spec.4.8 in half
18:25:08evanfrom 12s to 6s
18:25:15evan(it's 1.5s for MRI, btw)
18:25:34evanunmark_all is dead, long live rotating mark!
18:26:47brixenwoot
18:26:58evanbrixen: i did the change we talked about before
18:27:00evanbut never did
18:27:04evanchanging when immix collects
18:27:11brixendid only the mark change produce that speed up
18:27:23rueDammit, I did not even have the chance to review the changes from yesterday
18:27:28rueYet
18:27:30evanunmarshalling spec.4.8 creates a HUGE object graph
18:27:32evanthat all survive
18:27:35brixenahh
18:27:49evanusing the rotating mark changed it a little
18:27:56evanbut not collecting as often was much, much bigger.
18:28:19evanthe rotating mark means we don't have to perform the transitivie closure after a collection
18:28:27brixengotcha
18:28:46evanlooks like that took it from 6.2s to 5.4s
18:28:49evanso a nice bump.
18:30:42boyscoutCI: 17c734e success. 3005 files, 11480 examples, 35623 expectations, 0 failures, 0 errors
18:32:47evanhaha
18:32:53evanthe LA Ruby meeting next week
18:32:58evanhappens to be 0.2 miles away from here.
18:33:13evanI literally have to cross a total of 2 streets.
18:33:46brixenahh interesting, so collecting every 10 chunks (10mb) now
18:33:53evanyep
18:33:57evantried 8, 10, and 20
18:34:06evan10 and 20 didn't make a big difference
18:34:08evanso went with 10
18:48:16evanRAD
18:48:25evansmall fix eliminated 30s from gem install.
18:49:32brixenwhoa
18:49:33brixendo tell
18:50:44evanI ran it by drbrain first
18:50:56evanwhen the remote specs file is fetched
18:51:00evanit's gunzip'd
18:51:05evanand unmarshalled
18:51:15evanit then needs to be saved to disk
18:51:21evanthat code remarshalled it
18:51:33evanrather than just saving the marshaled data it already had
18:51:40evanrbx marshal is pretty slow (working on that now)
18:51:46evanbut NOT doing it is always faster than DOING it.
18:51:59evan26s to save the file down to 0.002s
18:52:11sbryanthooray for not doing stuff!
18:52:32brixensweet
18:52:51brixenyeah, no code runs faster than no code
18:52:53dwaitenice
18:57:10marcandreevan: Hi! There are some new features coming in 1.9.2 and I'm coding them in my backports gem when I have a second. Would you like me to adapt them for Rubinius, or would you rather wait until 1.9.2 is out?
18:58:16brixenI think it would be a fine time to make a 1.9 branch
18:58:32brixenthe vm/gc/jit stuff should be able to apply cleanly
18:58:39marcandreAre you guys ready to implement the encoding stuff??
18:58:46brixenand we could start tweaking the core lib to be 1.9.2
18:59:10evan1.9 stuff needs to start happening on a branch, yes.
18:59:10brixenmarcandre: well, somebody might be ready :)
18:59:12evannot on master.
18:59:25brixenevan: let's just make the branch...
18:59:38evank
19:00:12sbryantsmells like git.
19:00:15marcandreAnd the goal will be to target 1.9.2, right?
19:00:20brixenmarcandre: yes
19:00:22boyscoutDon't remarshal specs, write the existing data - d15ece5 - Evan Phoenix
19:00:31brixensbryant: heh, it does
19:00:56evanok, there is a one_nine branch now.
19:00:57evango to town.
19:01:20marcandreCool. I'll move what I've down so far, and keep them in synch when I write other stuff.
19:01:27evank
19:01:30evanfeel free to make a mess
19:01:31evanin general
19:01:40evanbranches are for making a mess.
19:01:43marcandreWell, I might, but not intentionally ;-)
19:01:48evaneither way :)
19:03:08boyscoutCI: d15ece5 success. 3005 files, 11480 examples, 35623 expectations, 0 failures, 0 errors
19:12:35brixenevan: http://gist.github.com/248440
19:12:47brixenwhat type should mark() return?
19:12:57evan:/
19:13:12brixenthis is gcc 4.0.1 of course
19:13:33evani guess that should be unsigned
19:13:36evanthats my mistake.
19:13:44evanso mark() returns an unsigned
19:13:49evanand then marked_p takes an unsigned
19:13:57brixenk
19:14:06brixenweird that gcc > 4.0.1 did not choke on this
19:14:16brixendo you want to change or do you want me to?
19:14:18evanyeah
19:15:25brixenwhich?
19:18:12evanchange it.
19:18:16evanwoop.
19:18:19evan26s to 10s
19:18:37evanbyte marshal was converting a Fixnum to a string using [num].pack("C")
19:18:47evanrather than the much more efficient
19:18:50evan(num & 0xff).chr
19:19:01boyscoutAdded some features of 1.9 - aabf797 - Marc-Andre Lafortune (one_nine)
19:19:17brixensweet, love boyscout reporting
19:19:21evanyeah
19:19:28evanI was just thinking that.
19:20:55sbryantmarcandre: what features did you implement?
19:21:27marcandreIt's in the log
19:21:34sbryantI see!
19:21:42marcandre - Dir#to_path
19:21:42marcandre - Enumerable#chunk, #flat_map, #collect_concat
19:21:43marcandre - Integer#magnitude
19:21:45marcandre - IO.binread
19:21:47marcandre - File#to_path, #size
19:21:54sbryantI'm githubbin' it
19:21:55marcandreEasy stuff that is now rubinius specific.
19:22:49marcandreI meant _not_ rubinius specific
19:23:31sbryanti gotcha :)
19:24:46brixenevan: would it be hard to set up CI on one_nine?
19:24:55evannah.
19:24:59evani got it.
19:25:03brixencool
19:26:11boyscoutFix signedness of mark flag. - 35383fc - Brian Ford
19:26:18marcandreCI and running the 1.9 specs?
19:26:35marcandreCoz there's going to be about a zillion failures...
19:26:36brixenmarcandre: if you change RUBY_VERSION to 1.9, it will run the 1.9 specs
19:26:46brixenmarcandre: well, we just need to tag them
19:27:07brixenrun bin/mspec tag -G fails -G unstable -G critical -B full :ci_files
19:27:14marcandreOk. I've not changed RUBY_VERSION (apart from -r 1.9)
19:27:22brixenwell, we should
19:27:27brixenit's 1.9.2 after all :)
19:27:52brixenno half-assing it here :P
19:27:54evanright
19:27:56evanyou're on a branch
19:27:58evanmakes a mess!
19:28:23marcandreWell, I really wish I had the time to go and make a mess and change everything... but I don't. Hopefully others will!
19:28:36brixenmarcandre: do you have time to change the version and tag?
19:28:40brixenif not, I'll do that now
19:29:12brixenwe need to make it inviting for others to contribute
19:29:18brixenI think some folks will want to
19:29:43marcandreLet me see...
19:32:42boyscoutCI: 35383fc success. 3005 files, 11480 examples, 35623 expectations, 0 failures, 0 errors
19:51:24evanbrixen: do add a new instruction
19:51:29evanbrixen: i just need to edit instructions.def
19:51:29evanyes?
19:54:05brixenshould yes
19:54:10evank
19:54:17evanwhile looking at marshal
19:54:28evanrealized how silly we handle "#{}"
19:54:37evannot that exactly, just DynamicString in general.
19:54:48evanwe also have a bug in it, an eval ordering bug.
19:54:53brixenahh
19:54:58evanso i'm fixing it
19:55:01brixenso just going to pass all the parts to an insn?
19:55:04evani'm adding a string_build instruction
19:55:17evanstring_build(count)
19:55:27evanit looks at all of them and figures out how big the output needs to be at once
19:55:31evanthen copies the parts in.
19:55:31brixencool
19:55:49marcandreAllright, I'm at the installing stage... rake install works, but....
19:55:55marcandre$ rbx
19:55:55marcandreRuby Exception hit toplevel:
19:55:56marcandreunknown marshal code: (TypeError)
19:56:08marcandreAny clue?
19:56:10evanhm, did I break something?
19:56:15evanoh nope
19:56:18evanwrong marshal.
19:56:22evanyou've got stale .rbcs
19:56:23evanprobably.
19:56:42marcandreHow do I clean them?
19:56:49brixenrake clean
19:56:51evanfind . -name "*.rbc" -delete
19:56:58evanyes, or that.
19:57:02brixenthat's basically what rake clean does
19:57:03brixenyeah
19:57:11brianmariomarcandre: evan: what do you guys think about doing what macruby did for the JSON api in the 1.9 branch?
19:57:27evani don't know what they did
19:57:28marcandrek. Rebuilding. Indeed I haven't built in a while
19:57:33marcandreditto
19:57:38evanhuh?
19:57:40brianmariohttp://svn.macosforge.org/repository/ruby/MacRuby/trunk/ext/json/
19:57:46brixenmarcandre: if you haven't built in a while, you should rake distclean; rake build
19:58:09brixenmarcandre: we've changed some external lib stuff and atm build won't trigger a rebuild of external_libs
19:58:24marcandrebrixen: thanks
19:58:28brianmarioinstead of having the actual json gem in there, they're using yajl and some code from yajl-ruby's JSON gem compat API (yajl's faster, better utf8 handling)
19:58:37evanmarcandre: i'm confused on your json comment
19:58:41evanyou said you didn't know what they did?
19:58:45evanbut you asked me about it
19:58:48evani don't understand.
19:58:55marcandreyeah, I don't remember seeing anything on ruby-core
19:58:58evanoh wait.
19:58:59evanman
19:59:02evanit's totally lunch time.
19:59:06brixenheh
19:59:08evanbrianmario said it.
19:59:08marcandre:-)
19:59:10evannot marcandre.
19:59:11brixenbrianmario != marcandre
19:59:12evanwow brain.
19:59:14evanF
19:59:14evanA
19:59:15evanI
19:59:17brianmariolol
19:59:17evanL
19:59:19brixenhaha
19:59:26evanlets try that again
19:59:36evanbrianmario: do what like macruby? bundle it?
19:59:53brianmarioso 1.9 has the JSON gem bundled
19:59:54brixendoes 1.9 bundle json?
19:59:57brixenahh
19:59:58brianmarioyeah
20:00:00evanwhy?
20:00:09brianmariodunno, but it's there
20:00:17brixen1.9 has made some rather dumb bundling decisions :(
20:00:21brianmarioso macruby had it there, since it started as a fork of 1.9 in the first place
20:00:26evanwait
20:00:32evan1.9 bundles json?
20:00:35evannot just macruby
20:00:38brianmarioyeah
20:00:41evanweird.
20:01:31evani'm fine doing whatever
20:01:33evanno opinion.
20:01:48brianmariok
20:01:50marcandrebrianmario: can't see the change from that link of yours. So what's the api change? And more importantly: as long as it's not in MRI, why care?
20:02:31brianmariohttp://svn.macosforge.org/repository/ruby/MacRuby/trunk/ext/json/
20:02:33brianmariothat's not the json gem
20:02:40brianmariothat *is* the change I'm talking about
20:03:21brianmarioinstead, they're using yajl and some parts from yajl-ruby's JSON gem compatibility api
20:03:22brianmariohttp://svn.macosforge.org/repository/ruby/MacRuby/trunk/ext/json/rubyext.c
20:03:38brianmarioshould be really easy to port to rbx (this is for the 1.9 branch)
20:04:03marcandreevan & brixen: hey, you guys implemented freeze! ;-)
20:04:08brianmarioif the goal of the 1.9 branch is full 1.9.2 compat, we'll need it one way or another
20:04:14brianmariolunch
20:04:14evanmarcandre: sort of.
20:04:18marcandreIs that meant to be the final version
20:04:18marcandre?
20:04:27marcandreCoz it's not equivalent...
20:04:40evanwe know it's got holes
20:04:47evanwhich part of you refering to?
20:04:49evanin Array?
20:04:55marcandreyeah
20:05:02brixenmarcandre: well, matz has agreed to make mutating methods raise up-front
20:05:03evanit's equivalent
20:05:05evanit passes the specs.
20:05:17brixenand we aren't necessarily going to implement freeze edge cases
20:05:18marcandreevan: I'll gladly write new specs, then...
20:05:23marcandrex=[:hello]
20:05:29marcandrem=x.method :clear
20:05:33marcandrex.freeze
20:05:36marcandrem.call
20:05:45marcandreNo error raised, x is now empty.
20:05:46evanif that works in 1.8
20:05:47evanit's a bug.
20:05:49evanthats a bug.
20:05:56evanor does that work in rbx
20:05:58brixengood lord
20:06:03evanyou know
20:06:08brixenwhy the eff would anyone expect that?
20:06:09evani don't really care about support taht atm.
20:06:13evanfreeze is so low on the list
20:06:14marcandreIn rbx: no error raised. In MRI: error raised
20:06:23evancompliance with it is not a big concern.
20:07:05marcandreWell, I thought the way you implement it is quite cute, and should solve 99.9% of the problem.
20:07:12brixenmarcandre: you should write specs based on actual usage first, with an eye to whether it is a potential bug too
20:07:25brixenmarcandre: and edge cases should be questioned on ruby-core
20:07:37evanthe honor for this code goes to petebevin
20:07:38brixenfreeze, like many things in mri, is/was pretty ad hoc
20:11:41rueYes, yajl is the better way to go
20:13:06rueCould use a different write barrier for frozen stuff
20:13:25rueSince page locking might get a bit tricky
20:14:00slavaon windows you can read page dirty bits so technically you don't need a write barrier at all there :)
20:15:23rueShould totally 'forget' to implement encodings for one_nine
20:15:34brixenrue: why?
20:15:47brixenI'm looking forward to the encoding stuff
20:15:58rueYou are weird
20:16:05brixenbe that as it may
20:16:09brixenit's good for Ruby
20:16:23rueI dunno, the way they are done seems awfully clumsy
20:16:33rueIn 1.9
20:17:03brixenpointer to a system that "does it right"?
20:17:06rueI am all for going to native Unicode
20:19:08evannot all data is unicode though.
20:19:14evanthus the problem.
20:19:38evanThough, having 2 encodings, binary and unicode, might get you far.
20:20:27slavastrings should be unicode, and there should be a separate byte array type
20:20:39slavaencodings should only be used for reading and writing external data on streams
20:20:44slavathat's my two cents
20:21:03evanslava: so do you have a job lined up in NZ?
20:21:54slavano
20:22:09evanfun!
20:22:20brixenslava: are you going to work for the CIA?
20:22:38brixenor is it the NSA?
20:22:51brixenwhat's that big secret data center in NZ?
20:22:58slavaI slang crack in the ghetto on behalf of the CIA
20:23:02brixennot the microsoft one, the other one...
20:23:03brixenhaha
20:23:12brixenwait, or did they merge...
20:27:43dwaiteslava: strings should also be immutable :P
20:29:14evanstrings should be immutable only if you're allegric to fun.
20:29:19brixendwaite: yeah they should be immutable arrays of chars... wait, didn't erlang try that
20:29:58brixenevan: heh, is that functional == allegic to fun?
20:30:07evanpretty much.
20:30:15brixenor allergic if you're a spelling phreak
20:30:26evanoh
20:30:29evanI'M NOT.
20:30:34brixenheh
20:30:41brixeninclusive "you" there ;)
20:30:43dwaitebrixen: you're probably thinking of java
20:30:49dwaiteor c#
20:30:55evanyay
20:31:04evanonly failures for string_build change are compiler specs
20:31:09brixensweet
20:31:19dwaiteboth have mutation objects used to create immutable ones (builders)
20:31:46evansbryant`: YES!
20:31:48evanno, just kidding.
20:32:02evanno no
20:32:03evanyou're fun.
20:32:07evani promise.
20:36:30slavadwaite: I think mutable strings are useful too
20:39:03boyscoutRUBY_VERSION now 1.9.2! Moved lib/1.9 into core lib - a4a5581 - Marc-Andre Lafortune (one_nine)
20:41:49brixenmarcandre: woot
20:42:12boyscoutFix misplaced line - c6b3878 - Marc-Andre Lafortune (one_nine)
20:42:39marcandreCool. :-) Except I now get a segmentation fault running the specs...
20:42:49marcandreEasy way to know where?
20:43:02brixengdb
20:43:14brixenrake clean; rake build:debug
20:43:22brixengdb --args vm/vm blah
20:43:41brixenwhere blah is probably mspec/bin/mspec-ci
20:44:22marcandreMmm, I had hoped of something easier to just tag the killer spec
20:44:34brixenbin/mspec ci -V -fs
20:44:42brixenwhen you get the segfault...
20:45:11brixenbin/mspect tag --add critical -e "description" --dry-run --all
20:45:55brixenfinds food
20:49:32marcandreAh, it's in the literal lambda specs
21:13:16boyscoutCommented out 5 crashing specs. Created tags using: - b565bb1 - Marc-Andre Lafortune (one_nine)
21:15:57marcandrebrixen: I think I've done ok with the specs. Note that there are crashing specs in language/versions/literal_lambda_1.9 and language/versions/method_1.9
21:16:49marcandreI think this means that rbx (1.8) will also crash when fed that code. Even though it is not legal code in 1.8, you guys probably want to avoid the crash in the parser...
21:20:59brixenmarcandre: ok
21:22:24rueStill always build:debug unless I know I will run benchmarks or otherwise test performance:)
21:48:40brixenhah
21:48:56brixenI was going to say, "what *is* up with hpricot?"
21:49:08brixensbryant`: are you trying to install it, run it?
21:49:19brixenwhatever it is, post a ticket....
21:52:01brixensbryant`: sounds fun, just be sure to open tickets for issues
21:52:44brixenbad dwaite, that's a no!
21:52:49dwaiteis fancy
21:52:53brixendwaite: I'm tracking those links
21:52:54brixen:(
21:52:58dwaiteyou are?
21:53:04dwaitehmph
21:53:12brixenno worries
21:53:36brixendwaite: you can use your fancy link
21:53:41ruesbryant`: Intentionally sabotaged to push people to Nokogiri, naturally.
21:53:42dwaiteit actually gives you history of every clickthrough on either link, but whatever :)
21:53:56brixendwaite: really?
21:53:59brixencool then...
21:54:16rueOR AM I?!
21:54:38dwaiteahh, not quite
21:54:52dwaiteon the URL page it shows that there are two links and basic info for each, but not an aggregate count
21:56:11rueHow did you find out I was going to go watch "Ford Fairlane"?!
22:02:12VVSizbrixen: do you have any info on how to use FFI stuff with rbx? I have some blah.rb file that uses "ffi" stuff, and it works in JRuby, how to use it in rbx?
22:13:23rueVVSiz: `require "ffi"`
22:13:48VVSizrue: LoadError: no such file to load -- ffi
22:13:55rueAnd remember we do not have callbacks nor a good chunk of the JRuby additions
22:14:48rueHum, maybe it is already loaded. Is the FFI constant present?
22:15:23rueOh, yep, it is in kernel/
22:15:54VVSizoh :) that was unexpected
22:16:15VVSizso, no need to require rubygems and/or ffi. thanks!
22:17:54evanwhich?
22:18:06ruesbryant`: Yes, can you do it by next Wednesday?
22:18:15evanyeah, please got implement them.
22:18:22evanwe haven't gotten around to it.
22:18:56evanthere are things we don't want
22:19:01evanbut we should get callbacks eventually
22:19:03evanthey're just complicated
22:19:09evani was hoping we wouldn't have to dit.
22:19:11rueVVSiz: Good point, though, do you have to require it in JRuby?
22:19:57VVSizrue: in JRuby we have to require "ffi" to load the full FFI.
22:20:27VVSizalso, there is FFI gem, with some fixes that, for example, could be applied to older JRubies.
22:20:28rueOK
22:22:15rueI will add a dummy file
22:41:39dgtizedwow, that Immix and Marshal tweak really sped up running throught the specs
22:41:47dgtizeds/throught/through/
22:45:13boyscoutAdded dummy lib/ffi.rb with note for compatibility. - e5e9a96 - Eero Saynatkari
22:48:03boyscoutCI: e5e9a96 success. 3005 files, 11480 examples, 35623 expectations, 0 failures, 0 errors
23:09:26ruedgtized: How much of a difference are you seeing?
23:26:33evanok, someone with some decent math skills needs to give Float#to_marshal some help.
23:32:15boyscoutSpeed up Marshal a little more - 3a4708f - Evan Phoenix
23:32:15boyscoutAdd spec for Marshaling a real Float - e4a2210 - Evan Phoenix
23:32:15boyscoutTag failing Float marshal spec - 8202333 - Evan Phoenix
23:32:15boyscoutAdd string_build instruction, fix string interp. - 7128425 - Evan Phoenix
23:35:52boyscoutCI: 7128425 success. bin/rbx(__gxx_personality_v0+0x209) [0x8096bf1]
23:35:53dgtizedrue: I was seeing spec runs in the 84 second range, and they dropped to somewhere closer to 70s with a few lower then that
23:37:13evanwowzers.
23:37:16evanthats a funny error.
23:37:25evanprobably need to cleanup
23:37:27evanoh yeah
23:37:36evanbecause we're not autocleaning on compiler changes
23:37:37evancrap
23:37:45evaneveryone is going to have to do kernel:clean
23:37:45evan:/
23:45:27boyscoutCI: 7128425 success. 3005 files, 11481 examples, 35624 expectations, 0 failures, 0 errors
23:49:41evanthats better.