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

Re: hard interdependency (between -java and -jni packages)

Hash: SHA256

On 2010-09-18 12:31, Andrew Cowie wrote:
> The interdependency between libjava-gnome-java and libjava-gnome-jni is
> hard; so a >= in the versions isn't a good idea [from upstream's
> perspective]


(Context: see #588943)

I am well aware of this, this is also the case with many other -java /
- -jni packages. However a hard = ${source:Version} gives a problem if we
need to do a binNMU of the -jni package (which is just a rebuild of the
native code).

The problem is that ${source:Version} would expand to (e.g) 4.0.16-1,
but the -jni package would after the binNMU have the version 4.0.16-1+b1
(as an example) and therefore no longer satisfy the = 4.0.16-1 dependency.

That being said you have brought up an interesting issue that I would
like to take up with the rest of the Java Team: How do we ensure
consistency in upstream versions between -java and -jni packages?
Currently the Java policy only has that a -java package /should/ depend
on a -jni package.

Jetty solves this by doing a two way dependency between the -java and a
native package[1], though personally I do not like this, since it tools
like deborphan will have a harder time spotting whether or not the
package is still "used" (not to mention circular dependencies are
generally not nice).
  In a few other cases the -jni package simply has no
dependency/breaks/$relation with the -java package and this could cause
issues with partial upgrades (e.g. upgrading the -java package without
the -jni package).

Note that I intend to formulate a policy change based on this debate.

[1] e.g. libjetty-extra-java and libjetty-extra (note the latter is not
strictly a -jni package, but the issue holds in this case as well).

> (I understand why there is a -java vs -jni split in your packages, but
> the linkage between the two is private. You can't upgrade one without
> upgrading the other. There are no API/ABI stable public symbols in the
> -jni package).
> AfC
> Sydney
> Maintainer, java-gnome
> __
> This is the maintainer address of Debian's Java team
> <http://lists.alioth.debian.org/mailman/listinfo/pkg-java-maintainers>. Please use
> debian-java@lists.debian.org for discussions and questions.

Note to people involved; this debate will continue on debian-java@l.d.o;
if you want to follow this debate and are not subscribed to
debian-java@l.d.o, please just reply and ask to be explicitly CC'ed in
the debate.

Thank you in advance,
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/


Reply to: