<jc00ke>
I was addressing your question about object_id changing for a symbol. It doesn't change after a GC run in CRuby 2.2
<jc00ke>
No problem, per se, just wondering what this looks like for other implementations. Maybe I missed something and Symbol GC is an OK thing?
diegoviola has joined #rubinius
<yopp>
Yeah, and I'm still not quite understand how this feature might break rails, if not implemented in rbx?
<jc00ke>
I don't know either. My guess is that Rails is going to have a better memory profile on 2.2+ because they use symbols to avoid DoS attacks
<yopp>
From dhh's reply to your question seems like that, yeah: dhh: @jc00ke Because we have to convert anything that could have been a symbol from outside data to a string lest we open DoS hole.
<yopp>
Seems like not the memory profile is the issue, but the conversion from string to symb
darix has joined #rubinius
<darix>
ok
<darix>
which which llvm version does llvm/Config/config.h exist?
<darix>
llvm 3.5.0 doesnt seems to have it
<yopp>
Yeah, I heard something about that later, someone raised a concern about DDoSing rails app with symbols. And rails-core patched this a bit later
<jc00ke>
darix: what OS are you on, and how did you install LLVM?
<darix>
jc00ke: opensuse. rpm.
<darix>
jc00ke: i just try to upgrade my rubinius package to 2.4
<jc00ke>
yopp: yeah, I guess that's the cruft he was talking about. My guess is that the messaging around this requirement is incorrect. An implementation should be able to handle things like GC however it likes.
<jc00ke>
I think this is a soft req beyond kwargs and a version number
<jc00ke>
Anyway, nbd
<yopp>
hum
<jc00ke>
darix: hmm, I haven't seen much regarding rbx on OpenSuse via RPM. Are you able to compile it manually from a clone of the repo?
<darix>
jc00ke: i am one of the main ruby packagers for opensuse. so if it fails in the package build env it will also fail when I build from the tarball
<darix>
because i would still be using the llvm packages
<jc00ke>
darix: OK, I'm not familiar with how RPMs actually work.
<yopp>
huh
<yopp>
now symbols are frozen
<yopp>
:s.instance_variable_set(:@moo, 1)
<darix>
jc00ke: from the build time ... they arent much different
<yopp>
since 2.1
<yopp>
so it's not a big deal anyway
<darix>
brixen yorickpeterse: what do you need llvm/Config/config.h for?
<yopp>
you can't modify Symbol instance, you can re-create it anytime because it's only carrying the object_id
<darix>
--llvm-shared and it looks for static libraries
diegoviola has quit [Quit: WeeChat 1.0.1]
<darix>
ah configure check failed
<darix>
configure --help should *not* overwrite configure.log :p
<jc00ke>
darix: whoa, you're right!
<darix>
ok
<darix>
the configure check for llvm-shared fails with:
<darix>
/usr/include/c++/4.8/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
<yopp>
jc00ke, actually they change object_id
<darix>
fixed by setting -std=c++11 in the CXXFLAGS
diegoviola has joined #rubinius
<yopp>
a) there is a mistake in code: lvar s references :sym1 when GC.start is called