[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: MRI 2.0 preview release



Lucas Nussbaum escreveu:
> On 05/11/12 at 01:24 +0000, Joshua Timberman wrote:
> > 
> > On Nov 4, 2012, at 9:39 AM, Lucas Nussbaum <lucas@lucas-nussbaum.net> wrote:
> > 
> > > Where does it install files if you "make install" ? /usr/lib/ruby/1.9.1
> > > or /usr/lib/ruby/2.0? :-)
> > 
> > Using an install prefix of '/tmp/r', it's installing to lib/ruby/2.0.0.
> > 
> > ./miniruby -I./lib -I. -I.ext/common  ./tool/rbinstall.rb --make="make" --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --data-mode=0644 --prog-mode=0755 --installed-list .installed.list --mantype="doc" --install=all --rdoc-output=".ext/rdoc"
> > installing binary commands:   /tmp/r/bin
> > installing base libraries:    /tmp/r/lib
> > installing arch files:        /tmp/r/lib/ruby/2.0.0/x86_64-linux
> > installing pkgconfig data:    /tmp/r/lib/pkgconfig
> > installing extension objects: /tmp/r/lib/ruby/2.0.0/x86_64-linux
> > installing extension objects: /tmp/r/lib/ruby/site_ruby/2.0.0/x86_64-linux
> > installing extension objects: /tmp/r/lib/ruby/vendor_ruby/2.0.0/x86_64-linux
> > installing extension headers: /tmp/r/include/ruby-2.0.0/x86_64-linux
> > installing extension scripts: /tmp/r/lib/ruby/2.0.0
> > installing extension scripts: /tmp/r/lib/ruby/site_ruby/2.0.0
> > installing extension scripts: /tmp/r/lib/ruby/vendor_ruby/2.0.0
> > installing extension headers: /tmp/r/include/ruby-2.0.0/ruby
> > installing rdoc:              /tmp/r/share/ri/2.0.0/system
> > installing capi-docs:         /tmp/r/share/doc/ruby
> > installing command scripts:   /tmp/r/bin
> > installing library scripts:   /tmp/r/lib/ruby/2.0.0
> > installing common headers:    /tmp/r/include/ruby-2.0.0
> > installing manpages:          /tmp/r/share/man/man1
> 
> That means that 2.0 can easily be co-installed with 1.9.3. Good.

Nice.  Maybe we should try to start from a clean package, then. One
think I wanted for ruby2.0 is to keep the amount of non-upstreamed
patches to an absolute minimum (ideally 0).

> > installing default gems:      /tmp/r/lib/ruby/gems/2.0.0 (cache, doc, gems, specifications)
> >                               bigdecimal 1.1.0
> >                               io-console 0.3
> >                               json 1.7.1
> >                               minitest 3.4.0
> >                               psych 1.3.4
> >                               rake 0.9.2.2
> >                               rdoc 3.9.4
> >                               test-unit 2.0.0.0
> 
> Addressing that will be interesting ;)
> Maybe we could just drop those bundled gems and depend on our own
> packages. (I don't mean that we should 'cripple' ruby by removing part
> of what is shipped by default -- I just mean that those gems should come
> from the standalone packages rather than the bundled versions)

We need to be careful to avoid circular dependencies there - those
packages would need to depend on a ruby interpreter, but the ruby 2.0
interpreter would depend on them.

Another problem is: some of these gems have native code, and they would
need to be compiled against ruby2.0. Maybe we could let the package
install these bundled gems, and once we have them packaged standalone,
let them override the bundled versions. It's more or less the same
existing situation with 1.9, which bundles rake, rubygems and whatnot
(just not using rubygems), but we let the standalone packages override
the bundled ones.

I guess if I keep thinking of this, I can come up with even more
bootstrapping issues. I'm sure there is a clever^Wsimple solution, I
just couldn't think of it yet. Ideas?

-- 
Antonio Terceiro <terceiro@debian.org>

Attachment: signature.asc
Description: Digital signature


Reply to: