Re: Are circular dependencies inside a source package OK?
On 27/02/2011 16:31, Lucas Nussbaum wrote:
> But then, we have a problem, because:
> - ruby-foo need one of (ruby1.8-foo, ruby1.9.1-foo, jruby-foo,
> rubinius-foo) installed to work correctly
I find this dependency tedious. If someone installs ruby-foo, how can
he expect it to work if he does not specify with which ruby interpreter
he will work ?
This means that nothing can 'depend' on ruby-foo without also
depending on a ruby<interpreter_version>-foo
Reading latter, it seems that you want that ruby-foo installs
what it needed for the default ruby implementation. So, do what
- ruby-foo-common: arch indep, no depends (or depends on other software)
- ruby<interpreter_version>-foo: arch dep, Depends: ruby-foo
- ruby-foo: arch indep, empty package, Depends: ruby<default_interpreter>-foo
> - ruby1.8-foo, ruby1.9.1-foo, jruby-foo, rubinius-foo need ruby-foo
> What we would like to do to reflect this is:
> - ruby-foo depend on the implementation-specific package for the default
> version of Ruby (so Depends: ruby1.8-foo)
> - ruby<interpreter_version>-foo Depends: ruby-foo
With your proposal, in addition to the circular dependencies, I cannot
install foo for jruby without *also* installing foo for the default
> However, that creates many small dependency cycles. I am under the
> impression that dependency cycles are considered bad, but that we have
> many of them already, and that no important part of our infrastructure
> or tools really has problems with them. Also, they are limited to a
> single source package here.
> Is there a good reason not to do the above?
> - Lucas
Vincent Danjean GPG key ID 0x9D025E87 email@example.com
GPG key fingerprint: FC95 08A6 854D DB48 4B9A 8A94 0BF7 7867 9D02 5E87
Unofficial packages: http://moais.imag.fr/membres/vincent.danjean/deb.html
APT repo: deb http://people.debian.org/~vdanjean/debian unstable main