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

Re: About the Ruby packages split: a concrete proposal



On Thu, Mar 03, 2005 at 12:41:13AM +0900, akira yamada wrote:
> I prepared restructured version of ruby1.8.
> It is available on http://people.debian.org/~akira/ruby1.8/

Great work! I have tested them, see the results below...

> I think that restructuring ruby1.8 can separate into two steps.
> 1st step is to merge some packages.
> 2nd step is to introduce new meta packages.
> The new ruby1.8 is for the 1st step.
> 
> (NOTE: 1.8.2-2+1 may be canceled for some reasons.)

I have experienced some problems while upgrading.  That is, after
building ruby1.8 for powerpc and installing all packages with `dpkg -i`.
I have attached a diff diff (yes :-) ) to solve two upgrade-transition
problems with libcurses-ruby1.8 and rdoc1.8/libyaml-ruby1.8.
Not that diff diffs are nice but this one indicates precisely where the
problems are and the fixes are trivial.

The problem that I still kept having was:
---
Preparing to replace libruby1.8 1.8.2-2 (using libruby1.8_1.8.2-2+1_powerpc.deb) ...
Unpacking replacement libruby1.8 ...
dpkg: dependency problems prevent configuration of irb1.8:
 irb1.8 depends on libreadline-ruby1.8 (>= 1.8.2-2+1); however:
  Package libreadline-ruby1.8 is not configured yet.
dpkg: error processing irb1.8 (--install):
 dependency problems - leaving unconfigured
---
It can well be that dpkg isn't thorough enough with its reordering of
the packages to be installed because of the mass restructuring. It
finds out everything to be OK later on, but then it is too late,
packages are already left unconfigured.

I've just tested again after putting all packages in a small package
repository and that seems to work well with aptitude/dselect/apt-get. 
So I expect there are no more problems with the 1st step!
(I upgraded these packages from a Sid/Sarge current 1.8.2-2 setup).

> Paul van Tilburg wrote:
> > What criteria did you use for this.  We tried to leave out libraries
> > with depends on other libs as well but came to the conclusion that
> > since libgdbm and libopenssl are either base or standard, everyone will
> > have those installed almost always as well.
> 
> I think that ruby1.8 + libruby1.8 should depend on minimum packages.

I agree however..  these depends are not real dependencies since it's
almost impossible to have a system without these installed anyway?
But you have a solid argument as well and they are not really the most
often used libs of stdlib anyway :)

> > AFAIK 99% the people I speak think ruby installs the interpreter and the
> > assumed base libraries (seeing apt-cache show python2.3 (where most of
> > the library doesn't seem to be split of at all) and apt-cache show perl).
> 
> For Debian environment, "the interpreter and
> the assumed base libraries" is new ruby1.8 + new libruby1.8.

Since ruby1.8 depends on libruby1.8 (and thus now whole stdlib) and this
will be reflected by ruby-defaults, I think the whole setup is very nice.

> New libruby1.8 includes "base libraries on Debian environment".
> All of extension libraries are optional on upstream release.
> Because these libraries can be omitted by configure options or
> development enveronment.

That would explain the original structuring of the package.  The
resulting package is also not that large.

Thanks,

Paul

-- 
Student @ Eindhoven                         | email: paulvt@debian.org
University of Technology, The Netherlands   | JID: paul@luon.net
>>> Using the Power of Debian GNU/Linux <<< | GnuPG key ID: 0x50064181
25677,25679c25677,25679
< +Conflicts: libsdbm-ruby1.8, libdl-ruby1.8, libpty-ruby1.8, libbigdecimal-ruby1.8, libsyslog-ruby1.8, libstrscan-ruby1.8, libiconv-ruby1.8, libracc-runtime-ruby1.8, libdrb-ruby1.8, liberb-ruby1.8, libtest-unit-ruby1.8, librexml-ruby1.8, libxmlrpc-ruby1.8, libsoap-ruby1.8, libwebrick-ruby1.8, libyaml-ruby1.8, libzlib-ruby1.8, libcurses-ruby1.8.
< +Replaces: libsdbm-ruby1.8, libdl-ruby1.8, libpty-ruby1.8, libbigdecimal-ruby1.8, libsyslog-ruby1.8, libstrscan-ruby1.8, libiconv-ruby1.8, libracc-runtime-ruby1.8, libdrb-ruby1.8, liberb-ruby1.8, libtest-unit-ruby1.8, librexml-ruby1.8, libxmlrpc-ruby1.8, libsoap-ruby1.8, libwebrick-ruby1.8, libyaml-ruby1.8, libzlib-ruby1.8, libcurses-ruby1.8.
< +Provides: libsdbm-ruby1.8, libdl-ruby1.8, libpty-ruby1.8, libbigdecimal-ruby1.8, libsyslog-ruby1.8, libstrscan-ruby1.8, libiconv-ruby1.8, libracc-runtime-ruby1.8, libdrb-ruby1.8, liberb-ruby1.8, libtest-unit-ruby1.8, librexml-ruby1.8, libxmlrpc-ruby1.8, libsoap-ruby1.8, libwebrick-ruby1.8, libyaml-ruby1.8, libzlib-ruby1.8, libcurses-ruby1.8.
---
> +Conflicts: libsdbm-ruby1.8, libdl-ruby1.8, libpty-ruby1.8, libbigdecimal-ruby1.8, libsyslog-ruby1.8, libstrscan-ruby1.8, libiconv-ruby1.8, libracc-runtime-ruby1.8, libdrb-ruby1.8, liberb-ruby1.8, libtest-unit-ruby1.8, librexml-ruby1.8, libxmlrpc-ruby1.8, libsoap-ruby1.8, libwebrick-ruby1.8, libyaml-ruby1.8, libzlib-ruby1.8, libcurses-ruby1.8
> +Replaces: libsdbm-ruby1.8, libdl-ruby1.8, libpty-ruby1.8, libbigdecimal-ruby1.8, libsyslog-ruby1.8, libstrscan-ruby1.8, libiconv-ruby1.8, libracc-runtime-ruby1.8, libdrb-ruby1.8, liberb-ruby1.8, libtest-unit-ruby1.8, librexml-ruby1.8, libxmlrpc-ruby1.8, libsoap-ruby1.8, libwebrick-ruby1.8, libyaml-ruby1.8, libzlib-ruby1.8, libcurses-ruby1.8
> +Provides: libsdbm-ruby1.8, libdl-ruby1.8, libpty-ruby1.8, libbigdecimal-ruby1.8, libsyslog-ruby1.8, libstrscan-ruby1.8, libiconv-ruby1.8, libracc-runtime-ruby1.8, libdrb-ruby1.8, liberb-ruby1.8, libtest-unit-ruby1.8, librexml-ruby1.8, libxmlrpc-ruby1.8, libsoap-ruby1.8, libwebrick-ruby1.8, libyaml-ruby1.8, libzlib-ruby1.8, libcurses-ruby1.8
25796c25796
< +Depends: ruby1.8 (>= ${Source-Version}), irb1.8 (>= ${Source-Version}), libyaml-ruby1.8 (>= ${Source-Version})
---
> +Depends: ruby1.8 (>= ${Source-Version}), irb1.8 (>= ${Source-Version}), libruby1.8 (>= ${Source-Version})

Attachment: signature.asc
Description: Digital signature


Reply to: