e_dub has quit [Quit: It's a hard knock life]
elia has quit [Quit: (IRC Client: textualapp.com)]
eventualbuddha has joined #opal
meh` has quit [Ping timeout: 272 seconds]
eventualbuddha has quit [Ping timeout: 272 seconds]
fkchang has quit [Ping timeout: 272 seconds]
fkchang has joined #opal
fkchang has quit [Ping timeout: 260 seconds]
adambeynon has joined #opal
elia has joined #opal
GitHub65 has joined #opal
GitHub65 has left #opal [#opal]
<GitHub65> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/ejE3Zw
<GitHub65> opal/compiler_nodes e273b2a Adam Beynon: Compiler iters using compile nodes (needs a rewrite)
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1192 (compiler_nodes - e273b2a : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12920781
travis-ci has left #opal [#opal]
<adambeynon> elia: I have been testing the native branch of opal-jquery in one of my apps, and its working great. I am still 50/50 on whether to merge it in or not
<adambeynon> any thoughts?
<elia> adambeynon, only thing that comes to mind is that having all that goods in the jq prototype was handy
<elia> adambeynon, native forces to wrap
<elia> adambeynon, inheritance from Element probably works fine in either case
<adambeynon> yeah. the only benefit of wrapping was method_missing - but having to have some Element.expose(:my_plugin) line in my opal code isnt too much hassle
<adambeynon> I think bridged is a better way to go
<adambeynon> same with Event
<adambeynon> wrapping that is a pain
<elia> adambeynon, agreed it's just seamless that way
<elia> adambeynon, [mavericks time] had any issues installing ruby 1.8?
<adambeynon> elia: yes, I did. Solved it by fiddling around with the gcc compiler
<adambeynon> elia: hang on
<adambeynon> I'll find the blog post I used
<elia> sure thanks
<adambeynon> elia: this looks like it
<adambeynon> you need to install the Command Line Tools
<adambeynon> just Xcode doesnt do the job
<adambeynon> (or not for me atleast)
<elia> adambeynon, you're using rbenv?
<adambeynon> elia: yeap
<adambeynon> you on rvm?
<elia> yes
<adambeynon> elia: umm, I guess the instructions are still valid
<elia> but seems just about the same… yes
<elia> clitools+brew basically :)
<adambeynon> brew solves all the problems
<elia> i still remember the macports time uughgh
<adambeynon> lol, yeh. many wasted evenings trying to get port working
<adambeynon> elia: I had the fun of trying to get 1.8 working on mavericks when we were having those travis+racc issues
<elia> adambeynon, I can imagine
<elia> adambeynon, I'll have to install ree-2010.02 so i'll probably get my share of fun too
<elia> adambeynon, the other thing that still worries me about the upgrading is textmate
<adambeynon> elia: 1.x or 2.0 ?
<elia> which considering bundles has a good percentage of its code implemented in ruby
<elia> 2 of course :)
<adambeynon> every 3 months or so I switch between TextMate and Vim ... currently going through a Vim stage, so not sure about textmate bundles
<adambeynon> ahh, of course mavericks is using ruby-2
<elia> adambeynon, I tried vim a couple of times and on servers of course, but my fingers get immediately confused and start adding random letters to all OS textfields…
<adambeynon> elia: finishing off emails with ":w :s" is still a habbit now and then
<adambeynon> elia: if textmate had split-views I would jump back instantly
<elia> adambeynon, there's a split surrogate in avian-missing
<elia> adambeynon, can you try to `ls /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby`?
<elia> if the file exists I'm ready to go… :)
<adambeynon> elia: it does indeed
<elia> adambeynon, also this has been a game changer for me: https://github.com/elia/bundler.tmbundle#readme
<adambeynon> elia: that does look nicer than the output from a shell script I've been using lol
<elia> lol
<adambeynon> elia: the other thing is, most of my dev time these days is on a MacBook Air 11 inch, and theres not really room for split views...
<adambeynon> and I do miss ruby plugins
<elia> adambeynon, yes, that is another point I always make against other editors…
<elia> python? vimscript? srsly?
<elia> :)
<elia> (i'm lucky meh is not around to take the parts of vim… lol)
<adambeynon> haha
<adambeynon> depends on whether he browses the irc logs ;)
<elia> adambeynon, even if he won't i'll tell him, it's about fair play :D
<adambeynon> elia: is there some way to create a textmate command to run some command?
<adambeynon> e.g. `bundle exec rake`
<adambeynon> and show me the results
<adambeynon> ah nvm, think i got it
elia has quit [Ping timeout: 272 seconds]
elia has joined #opal
kludge` has quit [Ping timeout: 240 seconds]
kludge` has joined #opal
elia has quit [Ping timeout: 240 seconds]
elia has joined #opal
hhh has joined #opal
hhh has left #opal [#opal]
meh` has joined #opal
<meh`> adambeynon, yo
<meh`> lol
DouweM has quit [Ping timeout: 272 seconds]
GitHub97 has joined #opal
<GitHub97> opal/master e8185ad meh: Cleanup Regexp#=~
<GitHub97> opal/master 1624830 meh: Cleanup Regexp.new
GitHub97 has left #opal [#opal]
<GitHub97> [opal] meh pushed 10 new commits to master: http://git.io/u9xzQg
<GitHub97> opal/master c7574e6 meh: Make Regexp#=== compliant
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1193 (master - b1b16dd : meh): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12926237
travis-ci has left #opal [#opal]
<meh`> adambeynon, elia, https://i.imgur.com/0uxf3wp.png
<meh`> too bad it works only with UTF-8
<meh`> unacceptable
<meh`> mmh
<meh`> adambeynon, ping
<elia> meh`, already pushed?
<meh`> elia, no
<meh`> it doesn't work properly
<meh`> I'm adding encoding support
<meh`> then it should work
<meh`> that one works with UTF-8
<elia> meh`, was just curious about the implementation
<meh`> it's hacky
<adambeynon> meh`: encodeURIComponent
<meh`> but I'm confident I can make it work with encoding support
<meh`> adambeynon, yeah
<adambeynon> what about node?
<meh`> adambeynon, it has encodeURIComponent
<meh`> it's part of v8
<elia> meh`, you ok? I see no tabs…
<meh`> elia, it's opal code, no tabs
<elia> aw right
GitHub17 has joined #opal
<GitHub17> opal/master 452545a meh: String#chars is not an alias to String#each_char
GitHub17 has left #opal [#opal]
<GitHub17> [opal] meh pushed 1 new commit to master: http://git.io/5EUfxg
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12927876
<travis-ci> [travis-ci] opal/opal#1194 (master - 452545a : meh): The build passed.
DouweM has joined #opal
<meh`> adambeynon, do I have to do anything other than adding the file to opal.rb to add another file to the corelib?
GitHub4 has joined #opal
<GitHub4> opal/master 0c3696d meh: Cleanup String#upcase
<GitHub4> opal/master 0318b87 meh: Make String#gsub compliant
GitHub4 has left #opal [#opal]
<GitHub4> opal/master fcdda11 meh: String#lines is not an alias of String#each_line
<GitHub4> [opal] meh pushed 10 new commits to master: http://git.io/HGBhOw
GitHub27 has joined #opal
<GitHub27> [opal] meh pushed 1 new commit to master: http://git.io/nYlllQ
GitHub27 has left #opal [#opal]
<GitHub27> opal/master 77b6f82 meh: Cleanup MatchData#begin
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12929036
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#1195 (master - 5085928 : meh): The build passed.
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12929126
<travis-ci> [travis-ci] opal/opal#1196 (master - 77b6f82 : meh): The build passed.
travis-ci has left #opal [#opal]
<adambeynon> meh`: adding to opal.rb is enough
<meh`> adambeynon, good
<meh`> adambeynon, I moved MatchData to its own file
GitHub17 has joined #opal
<GitHub17> [opal-sprockets] adambeynon tagged v0.2.1 at a934e9a: http://git.io/FfCJvw
GitHub17 has left #opal [#opal]
GitHub105 has joined #opal
<GitHub105> opal-sprockets/master 3c83fd9 Adam Beynon: v0.2.1
<GitHub105> [opal-sprockets] adambeynon pushed 1 new commit to master: http://git.io/8dGvhw
GitHub105 has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal-sprockets#3 (master - 3c83fd9 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal-sprockets/builds/12929833
travis-ci has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal-sprockets#4 (v0.2.1 - 3c83fd9 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal-sprockets/builds/12929837
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Change view : https://github.com/opal/opal-sprockets/compare/v0.2.1
<meh`> adambeynon, elia, https://i.imgur.com/XK3lj5c.png almost there :D
<meh`> we encodings now
<adambeynon> meh`: looking good. how much code is required for the encoding stuff?
<meh`> 111 lines currently
<meh`> and most is boilerplate for registering/finding the encodings
<meh`> it's still very simple and somewhat wrong
<meh`> I'm still trying to figure out some stuff
<adambeynon> meh`: when you say enocdings, what can we actually support?
<meh`> adambeynon, well
<meh`> adambeynon, anything I think
<meh`> but it won't be worth it
<meh`> adambeynon, it all ends up to what we want to support
<meh`> right now I've done this to support #each_byte
<meh`> which is important
<meh`> and I'm still trying to figure out some stuff
<meh`> but we're very close at least
<meh`> I think I'll commit it anyway
<meh`> adambeynon, basically I plan to support String#unpack and Array#pack as fully as I can
<meh`> which again, is extremely useful
GitHub62 has joined #opal
<GitHub62> [opal] meh pushed 1 new commit to master: http://git.io/QTKoyQ
GitHub62 has left #opal [#opal]
<GitHub62> opal/master 423af6c meh: Add basic encoding support and String byte operations
<adambeynon> meh`: is it a good idea introducing the Encoding class?
<meh`> adambeynon, yes
<meh`> it makes things easier and more compliant
<adambeynon> meh`: but we cant really do anything with it
<meh`> we can
<meh`> leave it to me
<meh`> and even if it's just for byte stuff
<meh`> it's still cleaner that way
<adambeynon> meh`: I think i'd rather have it as a stdlib file - to require if needed
<meh`> adambeynon, it would become even uglier to maintain
<meh`> it's not much code
<adambeynon> meh`: we want to make corelib leaner as it is
<meh`> adambeynon, I don't like that idea
<meh`> stuff that's in core should be in core
<meh`> if you want a leaner thing take it out of opal and compile it a different way
<adambeynon> meh`: but its core stuff that only does a tiny percentage of what its meant to be able to do
<meh`> so have a require 'opal/lean' that requires other stuff
<meh`> yes, but that's not a good reason to leave it out
<adambeynon> same reason we have file.rb in stdlib
<adambeynon> and dir.rb
<meh`> it's not really the same imho
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1197 (master - 423af6c : meh): The build has errored.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12932223
travis-ci has left #opal [#opal]
<meh`> using file and dirs doesn't have much meaning on the browser
<meh`> what happened now
<meh`> oh, errored
<meh`> not failed
<adambeynon> meh`: nor does using Encoding when we cant do much with it
<meh`> adambeynon, we can do enough, and it's part of the language and of any js engine
<adambeynon> what is part of any js engine?
<meh`> strings
<meh`> while file and directories aren't
<meh`> cherry-picking is good if it's not extremistic
<meh`> in this case it would just make things harder to maintain and weirder to use
GitHub92 has joined #opal
<GitHub92> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/_I7sCQ
GitHub92 has left #opal [#opal]
<GitHub92> opal/compiler_nodes f3b11ec Adam Beynon: Clean up a load of compiler nodes
<adambeynon> meh`: the only stuff we are actually able to use it for though is a tiny part considering what Encoding offers on "real" platforms
<meh`> adambeynon, for now
<meh`> it's the basics to get byte stuff to work
<meh`> doesn't mean I'll stop there, I made it clear in the commit it's just the basic stuff to get started
<meh`> and I don't think it's a good idea to make opal "leaner" in this direction
<meh`> it should be full featured Ruby by default
<meh`> I thought we were clear about this
<adambeynon> opal is never going to be full ruby... if people want full ruby in a browser they are going to use emscripten or the like
<meh`> well of course, as full featured as possible is what I meant
<meh`> for a leaner opal I've got nothing against an opal/lean that requires only the minimum required
<meh`> and you can then require specific parts if you need them
<meh`> but by default it should require all the corelib available
<adambeynon> opal should require stuff by default that makes sense in a browser + javascript context. for me, that doesnt include File, Dir or Encoding
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1198 (compiler_nodes - f3b11ec : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12933034
travis-ci has left #opal [#opal]
<meh`> why wouldn't encoding make sense?
<meh`> I agree on File and Dir
<meh`> but Encoding? it's part of strings, it can be fully implemented
<adambeynon> it cant though. we cant change string encoding, for example
<meh`> we can
<meh`> as I said, leave it to me
<adambeynon> meh`: we cant... strings are immutable, for one
<meh`> you didn't think it was possible to get bytes, and I just did it
meh` has quit [Ping timeout: 245 seconds]
GitHub112 has joined #opal
<GitHub112> opal/compiler_nodes 0ee6da4 Adam Beynon: Clean up various helper methods
GitHub112 has left #opal [#opal]
<GitHub112> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/Pzjs9g
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12935563
<travis-ci> [travis-ci] opal/opal#1199 (compiler_nodes - 0ee6da4 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
meh` has joined #opal
<meh`> and the internet died on me
<meh`> adambeynon, I think our current approach to String and Array is wrong
<meh`> adambeynon, so keep the encoding stuff as is for now please, I'm experimenting on some stuff
<adambeynon> approach to String and Array? in what way?
<meh`> adambeynon, inheritance and mutability
<adambeynon> meh`: neither are inheritable
<meh`> adambeynon, exactly
<adambeynon> meh`: we can only overcome that by wrapping them
<adambeynon> which brings lots of pain
<meh`> adambeynon, yes yes, I have an idea to keep the speed in and the pain away
GitHub139 has joined #opal
<GitHub139> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/nhjSDQ
<GitHub139> opal/compiler_nodes 4526c65 Adam Beynon: Cleanup parser a little
GitHub139 has left #opal [#opal]
eventualbuddha has joined #opal
<meh`> adambeynon, does the second parameter fo boot_class have to be a constructor?
<meh`> or can it be a Ruby class?
<meh`> and if it's a Ruby class how do I get the constructor?
<adambeynon> meh`: must be a constructor
<adambeynon> meh`: you dont want to pass a ruby class into it
<adambeynon> the constructor has its prototype wipied clean
<adambeynon> wiped*
<meh`> I see
<meh`> mmh
<adambeynon> just pass an anonymous function into it
<adambeynon> its just so you get nicer stack traces
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1200 (compiler_nodes - 4526c65 : Adam Beynon): The build was broken.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12936605
travis-ci has left #opal [#opal]
<adambeynon> e.g. Enumerator shows up as functionEnumerator()
<meh`> I see
<meh`> adambeynon, what is the bridged_classes array used for?
GitHub52 has joined #opal
<GitHub52> opal/compiler_nodes 5f56be9 Adam Beynon: Keep nodes under Opal::Nodes namespace
<GitHub52> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/0mrYpQ
GitHub52 has left #opal [#opal]
<meh`> ah, donation
<meh`> makes sense
<adambeynon> meh`: yeah. Object acts like a module "under the hood"
<meh`> adambeynon, how in the world do you debug runtime errors? :D
<meh`> there are no lines or files if I run opal-repl
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1201 (compiler_nodes - 5f56be9 : Adam Beynon): The build was fixed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12937136
travis-ci has left #opal [#opal]
<adambeynon> meh`: in the browser :D
<adambeynon> rake dist
<adambeynon> then I have build/indes.html
<adambeynon> which just loads opal.js
<meh`> I see
<meh`> adambeynon, can you paste your index.html please?
<adambeynon> <html><head><script src="opal.js"></script></head></html>
<meh`> oh
<meh`> lol
<adambeynon> :D
<meh`> adambeynon, can't I use a boot_class'd class as create_scope base?
<adambeynon> the first arg for create_scope is a base scope
<adambeynon> e.g.
<adambeynon> Object._scope
<meh`> oh
<meh`> so if I have a klass = boot_class(...)
<meh`> it's create_scope(klass._scope, ...) ?
<adambeynon> create_scope(Object._scope, klass, "my_class_name")
<adambeynon> class_name is optional though
<meh`> yes, but I have a klass that I want to use as base
<adambeynon> create_scope is used for setting up the constants scope
<meh`> adambeynon, basically
<meh`> String::Literal is the bridged class
<meh`> String inherits from String::Literal
<meh`> same goes for Array
<adambeynon> so, "foo".is_a?(String) => false ?
<meh`> no, it will be fixed up
<meh`> I'm trying to setup the thing first tho
<meh`> this is what I have
<meh`> does that do what I hope it does?
<adambeynon> meh`: looks like it should
<meh`> ok
<meh`> thanks
<adambeynon> meh`: Im not sure it will work too well though
<meh`> adambeynon, yeah, I'll find out
<meh`> :D
<adambeynon> lol
DouweM has quit [Quit: Linkinus - http://linkinus.com]
GitHub115 has joined #opal
<GitHub115> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/Tn1Gaw
<GitHub115> opal/compiler_nodes 9e04360 Adam Beynon: Rename Nodes::Node to Nodes::Base
GitHub115 has left #opal [#opal]
eventualbuddha has quit [Ping timeout: 248 seconds]
elia has quit [Quit: (IRC Client: textualapp.com)]
GitHub118 has joined #opal
<GitHub118> opal/compiler_nodes 05ed472 Adam Beynon: Cleanup node hierarchy
GitHub118 has left #opal [#opal]
<GitHub118> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/LKS8Yg
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1203 (compiler_nodes - 05ed472 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12938547
travis-ci has left #opal [#opal]
<meh`> adambeynon, halp
<adambeynon> wasup
<meh`> class Array::Literal isn't defining the methods
<meh`> but Opal.Array.Literal is defined
<meh`> as is Opal.Array
<meh`> wait
<meh`> wat
<meh`> lol
<meh`> my fault
<meh`> defined String bridge to Array too
<meh`> ◕ ◡ ◔
<adambeynon> lol, could make for some intersting results..
<meh`> no ok, still happens
<meh`> but at least []._klass is correct
<meh`> any clue?
<meh`> and Opal.Array.$superclass() is correct too
<meh`> same goes for the instance methods
<meh`> of Array.Literal
<meh`> no wait
<meh`> mh
<meh`> ok, I'm confused
<meh`> adambeynon, does `class Array::Literal` do some magic?
<meh`> the only methods on [] are the Object ones
<meh`> ok, solved
<meh`> it was going crazy with names
<meh`> ok, all good
<meh`> now onto the real deal
GitHub31 has joined #opal
<GitHub31> opal/compiler_nodes 74e004a Adam Beynon: Use Opal::Compiler as main compiler class
GitHub31 has left #opal [#opal]
<GitHub31> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/AaP8_w
<adambeynon> uggggh, thats going to break
GitHub152 has joined #opal
GitHub152 has left #opal [#opal]
<GitHub152> opal-sprockets/master bf5c4af Adam Beynon: Use Opal::Compiler as main compiler
<GitHub152> [opal-sprockets] adambeynon pushed 1 new commit to master: http://git.io/a3ktxA
<adambeynon> (my code will break, not yours)
GitHub53 has joined #opal
GitHub53 has left #opal [#opal]
<GitHub53> [opal] adambeynon pushed 1 new commit to compiler_nodes: http://git.io/arTBAg
<GitHub53> opal/compiler_nodes ec27a47 Adam Beynon: Use correct opal-sprockets
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1204 (compiler_nodes - 74e004a : Adam Beynon): The build has errored.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12941271
travis-ci has left #opal [#opal]
GitHub127 has joined #opal
<GitHub127> opal/master b0fa09a Adam Beynon: Some more node generation
GitHub127 has left #opal [#opal]
<GitHub127> opal/master bceb785 Adam Beynon: Initial commit on reworking parser into generator nodes
<GitHub127> opal/master 9afc625 Adam Beynon: Clean up some new compiler nodes
<GitHub127> [opal] adambeynon pushed 25 new commits to master: http://git.io/ZODGdw
<adambeynon> .... and compiler nodes are done
<meh`> nice
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal-sprockets#5 (master - bf5c4af : Adam Beynon): The build was broken.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal-sprockets/builds/12941290
travis-ci has left #opal [#opal]
<meh`> less nice
<meh`> lol
<adambeynon> sprockets, damn you to hell
<adambeynon> oh wait
<adambeynon> I didnt realise sprockets was running on travis
<adambeynon> er
GitHub164 has joined #opal
GitHub164 has left #opal [#opal]
<GitHub164> [opal-sprockets] adambeynon pushed 1 new commit to master: http://git.io/PAzkgQ
<GitHub164> opal-sprockets/master 281c134 Adam Beynon: Use master opal until release
<adambeynon> and that should fix the world again
GitHub24 has joined #opal
GitHub24 has left #opal [#opal]
<GitHub24> [opal] adambeynon deleted compiler_nodes at ec27a47: http://git.io/IX1xRg
<meh`> adambeynon, time to fix the bugs now? :D
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1206 (master - 49aaf1c : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12941608
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal-sprockets#6 (master - 281c134 : Adam Beynon): The build was fixed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal-sprockets/builds/12941757
travis-ci has left #opal [#opal]
<adambeynon> meh`: yeaaah man
<adambeynon> meh`: also, a lot of code is much better formatted now from the new compile nodes
<adambeynon> no huge ugly wrong indentations
<meh`> nice
<adambeynon> meh`: any objections to merging Compiler/DependencyCompiler together?
<adambeynon> they used to be Parser and RequireParser
<meh`> mh
<meh`> what does it do?
<adambeynon> it captures all the require() and autoload() stuff.
<adambeynon> now that compiler is pretty much no code, I might move it into there
<adambeynon> can still make it optional
<meh`> I don't know, I'd keep the dependency resolution outside of the compilation
<adambeynon> meh`: it is, all the subclass does it keep an array of the requires which Opal::Processor then uses to handle them
DrShoggoth has joined #opal
<meh`> adambeynon, I can already feel what I'm doing is gonna work properly and still be fast
<meh`> magically
<adambeynon> meh`: look forward to it
GitHub88 has joined #opal
<GitHub88> opal/master b069185 Adam Beynon: Generate opt args in def before outputting vars to avoid missed yields
<GitHub88> [opal] adambeynon pushed 1 new commit to master: http://git.io/pcGwcA
GitHub88 has left #opal [#opal]
<adambeynon> oh my... rspec compiled via opal is 900kb
<adambeynon> but it still all works after the compiler changes :D
<meh`> lol
<meh`> what the fuck, how can it be that big?
<meh`> adambeynon, one question
<meh`> adambeynon, no nothing, I'll test in MRI+
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1207 (master - b069185 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12943658
<meh`> adambeynon, DUN DUN DUUUN
<meh`> adambeynon, I think I found another bug in super
GitHub132 has joined #opal
<GitHub132> [opal-rspec] adambeynon pushed 1 new commit to master: http://git.io/tRE1Gg
GitHub132 has left #opal [#opal]
<GitHub132> opal-rspec/master 0ebde6e Adam Beynon: Do not always build min
<meh`> not
<adambeynon> meh`: Im suprised there are any cases when super() works properly ;)
<meh`> woah
<meh`> it works
<meh`> ok
<meh`> then my magic will work for sure :D
<adambeynon> meh`: bare in mind that if you extend String.prototype or array.prototype their `.length` wont be updated automatically
<meh`> adambeynon, I know
<meh`> I'm doing some magic
<meh`> trust in the magic
<adambeynon> just dont push to master though: all my apps run off master
<meh`> yeah, don't worry
<adambeynon> and having them break wont be ideal ;)
<meh`> I'm working on a branch
<meh`> I wouldn't want mine to break either :P
<meh`> >> LOL.new([1, 2, 3]).class
<meh`> => LOL
<meh`> => [true, false, true]
<meh`> >> LOL.new([1, 2, 3]).map(&:odd?).class
<meh`> >> LOL.new([1, 2, 3]).map(&:odd?)
<meh`> => LOL
<meh`> adambeynon, basically, Array and String are wrappers
<meh`> adambeynon, and they're optin
<meh`> adambeynon, since when you work with subclasses you have to instantiate them yourself
<meh`> and aren't literal
<meh`> this means it has an optin usage
<meh`> if you're just using the literals, you're using the fast implementation
<meh`> if you want mutable strings you have to do String.new
<meh`> when you call Array.new it actually calls Array::Literal.new
<meh`> and if it's not an inherited class
<meh`> it returns the literal
<meh`> so there's no speed degradation in those cases either
<meh`> then the Class#=== and Object#is_a? are monkey-patched to return meaningful things
<meh`> since nor Array nor String are actually children of Array::Literal or String::Literal
<meh`> but well, some fun for tonight :)
<adambeynon> meh`: the speed is the main thing, so if you can keep that working, then It sounds a good approach
adambeynon has quit [Quit: ["Textual IRC Client: www.textualapp.com"]]
DouweM has joined #opal
Nick____ has joined #opal
fkchang has joined #opal
<meh`> fkchang, mutable strings are acoming ( ≖‿≖)
<DouweM> :D
<meh`> also inheritance of Array and String
<meh`> only 68 specs failing with my changes
<Nick____> =D
<meh`> without additional overhead unless you're actually using inherited Array, String or mutable strings
<meh`> which means no overhead most of the time
<fkchang> meh`: cool, though w/opal-browser's dom builder, I don't need to port the that dom building lib
<fkchang> but the closer to real ruby, the better
<meh`> fkchang, yeah, it was more of a "I want this to work" than anything
<meh`> especially for encodings
<meh`> I need this stuff
<meh`> I also partially implemented some encoding stuff
<meh`> but yeah
<meh`> new shiny compiler
<meh`> more compliant stuff
<meh`> the future is looking good
DrShoggoth has quit [Quit: Leaving]
DouweM has quit [Ping timeout: 264 seconds]
<Nick____> hi. new to opal here. I have a usage question. I am trying to use Opal to create shared libraries between Ruby on Rails and javascript. On the javascript side, most of our code is not going to be in Opal, but would call opal generated functions. Is this possible? I tried doing Opal.top.$my_function_name(), but got some error "TypeError: Cannot set property '_p' of undefined"
<meh`> Nick____, using opal functions from raw js is going to be hell
<meh`> especially as far as blocks go
<Nick____> hmm
<meh`> that '_p' stuff is about blocks
<Nick____> alrite. thanks for the response. wasn't sure if it was supported or not
<meh`> it's easy to use JS stuff from Opal, but it was never in the plans to make it easy the other way around
<meh`> but you'd have a lot of ugly code coming up
<meh`> Opal.Hash.$new({ a: 3, b: 3 }) just to get a hash
<Nick____> i'm writing all the code in ruby and using that directly in rails
<Nick____> and having opal convert it to js for the js parts
<meh`> you could probably write a small layer of helpers to call the compiled stuff, but it sounds rather redundant
ryanstout has joined #opal
<fkchang> Nick____: depending on your API, this wouldn't necessarily be all that bad. You might want to write some opal wrappers that you can can w/the naming scheme that you are already doing
<fkchang> Nick____: are you running rails on the backend? You could invoke all the stuff from opal then
<Nick____> yup
<Nick____> i was just calling Opal.parse onto the shared lib files(written in ruby)
<Nick____> it created some js that looks like this -
<Nick____> (function(__opal) { var self = __opal.top, __scope = __opal, nil = __opal.nil, $mm = __opal.mm, def = self._klass.prototype, __breaker = __opal.breaker, __slice = __opal.slice; return self.$evaluate_order = function(order, store) { var subtotal = nil, total = nil, TMP_1, $a, $b, $c, $d, $e, $f, $g, $h; subtotal = 0; ($a = (($b = order).$each || $mm('each')), $a._p = (TMP_1 = function(item) { var self = TMP_1.
<Nick____> oh. that didn't post too well =D
<Nick____> well, here is my ruby function
<Nick____> def evaluate_order(order, store) subtotal = 0 order.each do |item| subtotal += item[:cost] end total = subtotal * (1 + store[:tax_rate] * 0.01) end
<Nick____> And I tried calling "Opal.top.$evaluate_order([{cost:15},{cost:10}],{tax_rate:10}"
<Nick____> i think it didn't find the $mm('each') in what namespace i was calling from or something (not entirely sure how this works still)
<fkchang> are you using opal rails?
<Nick____> just regular opal
<Nick____> i tried opal-rails, but didn't get it working successfully.
<fkchang> if you use opal rails, then you just put opal files in app/assets/javascripts (or opal), and opal sprockets will do all the magic for you and u won't have to write any js
<Nick____> okay. i'll try to get that working again then
adambeynon has joined #opal
<meh`> adambeynon, 66 failing specs with my stuff
<adambeynon> meh`: niceeeeeee
<adambeynon> are the 66 easy to fix?
<meh`> adambeynon, do we have method_added?
<adambeynon> meh`: nope
<meh`> yeah, most are
<adambeynon> "not yet"
<meh`> adambeynon, I need it
<meh`> adambeynon, it should be easy to do, no?
<adambeynon> meh`: kinda. we need to be able to disable it in certain corelib files
<adambeynon> until its actually defined
<meh`> adambeynon, right
<meh`> I need it for String and Array
<adambeynon> meh`: why?
<meh`> adambeynon, because
<meh`> if you add methods on String they won't be on the literal
<meh`> I have to reflect them back to it
<meh`> or find another way to do it
<meh`> but so far so good
<meh`> I'm getting some weird infinite recursion in JSON stuff
<adambeynon> meh`: doesnt it make more sense to do class MutableString < String
<meh`> but that should be easy to fix
<meh`> adambeynon, but then you can't inherit from String
<meh`> unless I do some inherited magic
<meh`> I was thinking about that too
<meh`> but then super would be broken
<meh`> and I'd need an in-between class
<meh`> which isn't much of a problem
<meh`> and would probably be cleaner
<meh`> but I prefer the wrapping way
<adambeynon> well, if this is going to be opt in, cant the mutable_string.rb or whatever just re-assign String
<adambeynon> e.g.
<adambeynon> LiteralString = String
<adambeynon> String = nil
<adambeynon> class String < LiteralString … end
<meh`> adambeynon, it's not opt-in as in opt-in to compile and use
<meh`> adambeynon, it's opt-in in the sense you're not hitting slow part if you're not using it explicitly
<meh`> adambeynon, it doesn't add much code
<meh`> 50 lines top
<meh`> and doesn't affect much
<meh`> all I need is method_added
<adambeynon> meh`: and we cant make it opt-in?
<adambeynon> which way does it inherit
<adambeynon> Array < Literal ?
<meh`> no
<meh`> they have no relation in the inheritance chain
ryanstout has quit [Quit: ryanstout]
<meh`> there's Array::Literal
<meh`> which is the bridged class to the JS Array
<meh`> then there's Array, which wraps things up when used explicitly
<meh`> when you do [].whatever it's calling Array::Literal
<meh`> IF you inherit from Array, you'll be using the wrapper
<meh`> otherwise you won't even realize it
<fkchang> adambeynon: meh` how do I get mspec to not crash --- Forrests-MacBook-Pro:opal fkchang$ rake mspec
<fkchang> couldn't find file 'core/array/allocate_spec'
<fkchang> (in /Users/fkchang/src/opal/spec/ospec/main.rb.erb)
<fkchang> rake aborted!
<fkchang> no implicit conversion from nil to integer
<fkchang> /Users/fkchang/src/opal/Rakefile:101:in `kill'
<fkchang> /Users/fkchang/src/opal/Rakefile:101:in `initialize'
<meh`> fkchang, did you clone recursively?
<fkchang> /Users/fkchang/src/opal/Rakefile:128:in `new'
<fkchang> /Users/fkchang/src/opal/Rakefile:128:in `block in <top (required)>'
<meh`> adambeynon, having Array::Literal as an ancestor fucks up the whole deferral of things
<meh`> adambeynon, the only thing needed to make it work transparently is method_added
<adambeynon> fkchang: rubyspec is a git submodule
<meh`> so I can intercept the addition
<meh`> define the same method on Array::Literal
<meh`> and undef it in Array
<meh`> which is basically no overhead since you're not going to add methods to Array in a tight loop for billions of time
<adambeynon> meh`: cant we just add some inherited hook
<adambeynon> so swizzle the prototypes
<adambeynon> on Array subclasses
<meh`> adambeynon, that could be done, yes
<meh`> I'll think about it
<meh`> I have the feeling there's something I'm not considering with that approach
<adambeynon> fkchang: did you get it working?
<adambeynon> git submodule update --init
<adambeynon> we use the real rubyspec git repo for our specs now
<adambeynon> well, most of them
<meh`> not enough of them :P
<fkchang> adambeynon: meh` submodule init took care of it - different since the last time I tried to run rake on opal (like months ago)
<fkchang> this is disturbing
<fkchang> Failures:
<fkchang>
<fkchang> 1. Time#day returns the day of the month for a UTC Time
<fkchang>
<fkchang> Expected 31 to equal 1
<fkchang> meh`: so what percent of rubyspecs are we running. Looking for stats for my preso
<adambeynon> fkchang: someone else reported that spec failing for them
<adambeynon> will need to look into it
<adambeynon> fkchang: not sure about percentage
<adambeynon> I can find out though
<meh`> fkchang, yeah, you get that if you're in the US
<meh`> fkchang, none of us is there
<meh`> we're all from Europe
<meh`> adambeynon, yeah, an inherited trick is the best way to go
<meh`> I'll scrap what I've done now and go with that
shawn42 has joined #opal
<shawn42> hello
<meh`> hello
<Nick____> hello
<shawn42> I wanted to try out pixi.js + opal ..
<shawn42> what's the best way to translate something like
<shawn42> var stage = new PIXI.Stage(0x66FF99);
<shawn42> to:
<shawn42> stage = PIXI::Stage.new 0x66FF99
<meh`> shawn42, the best way would be to wrap it
<meh`> OR
<meh`> module PIXI; class Stage; def self.new(value); Native(`new PIXI.Stage(value)`); end; end; end
<meh`> but writing an opal-pixi would be the best way to go
<shawn42> so basically hand roll a wrapper around the entire library?
<shawn42> meh`: also, is Native the way to pass raw js through opal?
<meh`> shawn42, yes, Native() wraps whatever value into an usable Opal object
<meh`> methods called on it are forwarded to the native object
<meh`> also yes, the best way to go is usually writing a full blown wrapper
<meh`> it's not a must, but that way you can make things more ruby-esque
<meh`> especially if you have methods following camel case in the native object
<meh`> stage.thisIsAMethod looks weird in Ruby
<shawn42> makes sense
<meh`> and if it's a good library you might make someone else very happy :)
<fkchang> adambeynon: yeah, any metrics would be good, I'm pitching that opal is basically ruby so a reasonably high rubyspec percentage looks good, else, claiming 2367 specs sounds reasonably good
<meh`> fkchang, with my round of cleanups it's even more compatible now :>
GitHub159 has joined #opal
GitHub159 has left #opal [#opal]
<GitHub159> opal-sprockets/master 30e704d Adam Beynon: Use Opal::Compiler directly
<GitHub159> [opal-sprockets] adambeynon pushed 1 new commit to master: http://git.io/0ethew
GitHub105 has joined #opal
GitHub105 has left #opal [#opal]
<GitHub105> opal/master 961416a Adam Beynon: Opal::Compiler as sole compiler class
<GitHub105> [opal] adambeynon pushed 1 new commit to master: http://git.io/6l07aA
<shawn42> meh`: does including modules work in opal.rb?
<meh`> shawn42, yes
<shawn42> also, what's the best source of docs (for things like Native, etc)
<meh`> I think there's some stuff in the doc/ folder and on the website
<shawn42> all the doc links I find just take me to the github landing page >.<
<meh`> someone must have forgotten to update the links
<shawn42> yeah
<shawn42> meh`: can you tell me what I'm doing wrong here:
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal-sprockets#7 (master - 30e704d : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal-sprockets/builds/12955023
travis-ci has left #opal [#opal]
<shawn42> I get "NameError: uninitialized constant Object::Stage"
<meh`> shawn42, well, I guess you found a bug
<meh`> adambeynon, do we support module inclusion in the toplevel?
<adambeynon> yeah
<adambeynon> right, so
<adambeynon> this is something we need to actually remove from opal
<adambeynon> when modules or classes compile
<adambeynon> they use the module/class name as an anonymous function
<adambeynon> so Native('new PIXI.Stage(color)')
<adambeynon> PIXI is actually pointing to the module you created
<adambeynon> not PIXI the javascript object
<meh`> oh yeah
<meh`> it's hell
<meh`> I have to use window.Whatever every time
<meh`> kind of annoying
<shawn42> interesting...
<meh`> shawn42, speed hack, window.PIXI.Stage
<shawn42> k
<adambeynon> shawn42: its done so it makes your classes have nicer names when it comes to debugging
<adambeynon> but it does also cause some pain..
<adambeynon> meh`: Im wondering whether we could do that inside the runtime instead
<adambeynon> and use eval()
<adambeynon> but only in debug mode
<meh`> adambeynon, how do you mean?
<adambeynon> instead of parsing a constructor to Opal.klass()
<adambeynon> if (DEBUG_MODE) constructor = eval("function " + class_name + "(){}")
<adambeynon> else
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1208 (master - 961416a : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12955033
travis-ci has left #opal [#opal]
<adambeynon> constructor = function() {}
<meh`> adambeynon, then it breaks during debug?
<adambeynon> meh`: nope...
<meh`> doesn't it make it even worse?
<adambeynon> we do it all in the runtime..
<meh`> evalling like that uses another context?
<shawn42> does opal support here documents?
<meh`> shawn42, yes
<adambeynon> meh`: we can get the function out of the eval
<adambeynon> we just need it for its name
<adambeynon> we overwrite its prototype anyway
<meh`> adambeynon, yes yes, what I was wondering about is if it causes the same problem of having the name accessible from javascript
<adambeynon> meh`: it wont. because we can stop compiling classes with the function literals in the code
<adambeynon> we do the eval in the runtime
<adambeynon> inside Opal.klass
<meh`> then happy days
<meh`> we need a way better debug mode anyway
<meh`> it's kind of spartan as is
<meh`> adambeynon, any suggestion on how to do the prototype swizzling?
<adambeynon> meh`: well it depends on how you are implementing SubclassableArray
<shawn42> what's the difference between Native and eval?
<meh`> shawn42, they're completely unrelated
<meh`> shawn42, Native is only for a value
<meh`> it wraps it and makes it usable from opal
<shawn42> I'm trying to pull this sample a part a few lines at a time..
<shawn42> meh`: need to go, I'll be back later
<shawn42> thanks for your help meh`
<meh`> you're welcome
<meh`> adambeynon, I have Array::Wrapper
<meh`> when you inherit from Array
<meh`> I want to replace Array with Array::Wrapper
<adambeynon> meh`: a really hacky attempt would be:
<adambeynon> actually, typing into irc will be a pain..
<adambeynon> 1 sec ;)
meh` has quit [Ping timeout: 248 seconds]
meh` has joined #opal
<meh`> I was saying
<meh`> adambeynon, what I want to do is
<meh`> on inherited of Array
<meh`> keep Array in the superclass
<meh`> but replace the prototype with Array::Wrapper
<adambeynon> meh`: something like this should work
<adambeynon> actually no
<adambeynon> instead of changing the constants
<adambeynon> replace the proto
<adambeynon> let me edit it
<meh`> thanks
<adambeynon> something like that
<meh`> is the Class.new needed?
<meh`> we'll find out
<adambeynon> meh`: not really, you could use Opal.klass() directly
<meh`> but Array::Wrapper is already a class
<meh`> or am I missing something obvious?
<adambeynon> yeah, but we want a subclass of Array::Wrapper
<meh`> mh
<meh`> well, I'll try :D
<adambeynon> lol
<adambeynon> i've got to go soon
<adambeynon> any final questions ? :P
<meh`> nah, I'll see what I can do
<meh`> I'll work on other stuff if I can't go ahead
<Nick____> fkchang, I got opal-rails to work following one of your guides from the user group. I had my assets loading in the wrong order.
<Nick____> My function ran correctly in javascript too. I think i was using an old version of Opal (also from google groups)
<adambeynon> meh`: I think I need a day of docs/guides writing
<adambeynon> they are way out of date
<meh`> adambeynon, can you do the super fixes first?
<meh`> and the a[b] += stuff
<meh`> those are the most irritating
<adambeynon> meh`: sure
<adambeynon> meh`: the a[b] += foo thing I have fixed
<adambeynon> forgot to push
<adambeynon> but
<adambeynon> its on my main dev machine
<adambeynon> in the office
<adambeynon> so tomorrow ;)
<meh`> good
<adambeynon> right, time to go
<adambeynon> cya
adambeynon has quit [Quit: Textual IRC Client: www.textualapp.com]
<Nick____> I do however get "Uncaught NoMethodError: undefined method `bridge_class' for Class" errors in javascript when using opal-rails. Any idea what that is?
<meh`> Nick____, that's basically from the prelude
<meh`> the first 100 lines that get executed
<Nick____> is that bad?
<meh`> yes
<meh`> what browser are you using?
<Nick____> chrome
<meh`> weird
<Nick____> Version 30.0.1599.101 m
<Nick____> latest
GitHub148 has joined #opal
<GitHub148> opal/master 9526e8d meh: Cleanup String#rstrip
<GitHub148> opal/master abff25f meh: Cleanup String#rjust
<GitHub148> opal/master c2f2f86 meh: Cleanup Module#alias_method
GitHub148 has left #opal [#opal]
<GitHub148> [opal] meh pushed 6 new commits to master: http://git.io/LywpeA
<Nick____> i was following this guide here - https://gist.github.com/fkchang/3956417
<Nick____> it worked except the Document.ready? portions
<meh`> Nick____, I don't know anything about opal-rails, sorry
<meh`> I'm going a different direction from everyone else :P
<Nick____> ah okay
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#1209 (master - 63bfdd2 : meh): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12956850
<meh`> woah
<meh`> MatchData is COMPLETELY wrong
<meh`> oh well
GitHub96 has joined #opal
<GitHub96> opal/master 3d13b52 meh: Make MatchData more compliant
<GitHub96> [opal] meh pushed 1 new commit to master: http://git.io/H1hv8Q
GitHub96 has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/12958448
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#1210 (master - 3d13b52 : meh): The build passed.
elia has joined #opal
<fkchang> Nick____: glad you have stuff working, what happens for Document.ready?
<meh`> fkchang, when's RubyConf again?
<fkchang> meh`: nov 8-10
<Nick____> fkchang, nothing happens
<Nick____> oh. i get an extra one of these "Uncaught NameError: uninitialized constant Object::Document"
<Nick____> well, just one of those. not an extra one
elia has quit [Quit: Computer has gone to sleep.]
<Nick____> Uncaught NoMethodError: undefined method `bridge_class' for Class error.js?body=1:20 Uncaught NameError: uninitialized constant Object::Element error.js?body=1:20 Uncaught NoMethodError: undefined method `bridge_class' for Class error.js?body=1:20 Uncaught NameError: uninitialized constant Object::Document error.js?body=1:20
elia has joined #opal
<meh`> Nick____, those ones are really weird
<Nick____> maybe my assets still aren't setup correctly
<fkchang> Nick____: maybe elia will know, but I suspect maybe you need to add gem opal-jquery to your gemfile. I believe since I wrote the gist that opal-jquery might've been unbundled from opal-rails
<meh`> meh, two new critical bugs
<fkchang> btw, the gist is liek a year old, that's a lifetime in opal years
<meh`> let's hope adam fixes them before I wake up
<meh`> Nick____, you should nudge elia into writing a tutorial to use opal-rails, he's the main author and user
<fkchang> meh`: how can I tell which mspec's are not being run?
<meh`> fkchang, you can't
<meh`> fkchang, well
<meh`> you can tell which ones are being ran
<meh`> spec/rubyspecs is the list
<elia> Nick____, im here, whats'up?
<meh`> in spec/filters the filtered ones for a reason or another
<Nick____> elia, could you write a tutorial on using opal-rails =D
<elia> :)
<fkchang> elia: he couldn't get opal-rails to work, and then he followed a gist I wrote about a year ago https://gist.github.com/fkchang/3956417 which fails on Document.ready? My theory is that opal-jquery needs to be included too which defines that
<elia> Nick____, you already gone through the readme?
<elia> this section particularily: https://github.com/opal/opal-rails#gotchas
<Nick____> i was getting errors putting in the configurations when i tried it first time. i haven't tried it since i got it working tho (w/o it)
<elia> Nick____, opal-jquery is already a dependency
<fkchang> looks like my gist is 90ish% based on your readme
<Nick____> adding opal-jquery seemed to fix the errors
<Nick____> Document.ready? seems to work now too!
<elia> Nick____, fkchang, the gist seems fine
<elia> Nick____, gratz! ;)
<Nick____> so i think i'm good now. thanks for the help meh', fkchang, and elia
<elia> Nick____, just to be sure, what was the error?
<elia> improving the readme is a good thing anyways
<Nick____> elia, Uncaught NoMethodError: undefined method `bridge_class' for Class error.js?body=1:20 Uncaught NameError: uninitialized constant Object::Element error.js?body=1:20 Uncaught NoMethodError: undefined method `bridge_class' for Class error.js?body=1:20
<elia> Nick____, sorry, I meant: what was the *solution*?
<Nick____> w/ only 'opal-rails' gem and not 'opal-jquery' gem
<Nick____> i had to use both
<Nick____> it still worked despite getting that error minus the jquery stuff(which i'm not using for my current project)
<elia> that's strange, opal-jquery is an opal-rails dependency and it's required inside opal/rails
<elia> Nick____, any chance you had old versions?
<fkchang> maybe he didn't bundle again?
<Nick____> i didn't specify any version in my gemfile
<fkchang> anyways, the error was "Uncaught NameError: uninitialized
<fkchang> constant Object::Document" which just screamed opal-jquery was missing to me
<elia> fkchang, sure thing
<Nick____> hmm. i'm not getting the error anymore when i remove opal-jquery gem
<elia> Nick____, you still have the logs of the bundle install?
<elia> Nick____, fkchang, I'm quite sure the bundle install triggered the update of either opal-jquery or opal-rails or opal
<meh`> and if it was opal, gray times ahead
<meh`> I think the new compiler wasn't that ready
<meh`> it broke all my things :D
<Nick____> Fetching gem metadata from https://rubygems.org/........... Fetching gem metadata from https://rubygems.org/.. Resolving dependencies... Using rake (10.1.0) Using i18n (0.6.1) Installing multi_json (1.8.2) Using activesupport (3.2.13) Using builder (3.0.4) Using activemodel (3.2.13) Using erubis (2.7.0) Using journey (1.0.4) Using rack (1.4.5) Using rack-cache (1.2) Using rack-test (0.6.2) Using hike (1.2.3) Using tilt (1.4.1) Using
<Nick____> k (3.2.13) Using mime-types (1.25) Using polyglot (0.3.3) Using treetop (1.4.15) Installing mail (2.5.4) Using actionmailer (3.2.13) Using arel (3.0.2) Using tzinfo (0.3.38) Using activerecord (3.2.13) Using activeresource (3.2.13) Using bundler (1.3.4) Using coffee-script-source (1.6.3) Using execjs (2.0.2) Using coffee-script (2.2.0) Using rack-ssl (1.3.3) Using json (1.8.1) Using rdoc (3.12.2) Using thor (0.18.1) Using railties (3
<Nick____> Using execjs (2.0.2) Using coffee-script (2.2.0) Using rack-ssl (1.3.3) Using json (1.8.1) Using rdoc (3.12.2) Using thor (0.18.1) Using railties (3.2.13) Using coffee-rails (3.2.2) Using jquery-rails (3.0.4) Using rails (3.2.13) Using sass (3.2.12) Using sass-rails (3.2.6) Installing sqlite3 (1.3.8) Installing uglifier (2.2.1) Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
<Nick____> oh
<Nick____> ignore that. thats before i added the gem
<Nick____> Resolving dependencies... Using rake (10.1.0) Using i18n (0.6.1) Using multi_json (1.8.2) Using activesupport (3.2.13) Using builder (3.0.4) Using activemodel (3.2.13) Using erubis (2.7.0) Using journey (1.0.4) Using rack (1.4.5) Using rack-cache (1.2) Using rack-test (0.6.2) Using hike (1.2.3) Using tilt (1.4.1) Using sprockets (2.2.2) Using actionpack (3.2.13) Using mime-types (1.25) Using polyglot (0.3.3) Using treetop (1.4.15) Us
<elia> Nick____, wait
<Nick____> (3.2.13) Using arel (3.0.2) Using tzinfo (0.3.38) Using activerecord (3.2.13) Using activeresource (3.2.13) Using bundler (1.3.4) Using coffee-script-source (1.6.3) Using execjs (2.0.2) Using coffee-script (2.2.0) Using rack-ssl (1.3.3) Using json (1.8.1) Using rdoc (3.12.2) Using thor (0.18.1) Using railties (3.2.13) Using coffee-rails (3.2.2) Using haml (4.0.3) Using haml-rails (0.4) Using jquery-rails (3.0.4) Using racc (1.4.10) U
<elia> can you use a gist
<elia> quite unreadable here
<Nick____> oh yah. thats much better. haven't used gist before
<elia> Nick____, :( htere's no evidence, only knowing the before and after of the Gemfile.lock could tell us the truth
<elia> but at this point I think it doesn't matter very much
<elia> brb
<Nick____> elia, i only have what was in the console. this is the before - https://gist.github.com/anonymous/7128817
<Nick____> it just doesn't say anything about it in there. so don't think that helps
<Nick____> and here is the log for when i updated after adding gem 'opal-jquery' to the gemfile and doing bundle update
<fkchang> elia: how many opal apps do u have in production?