On Sat, Nov 10, 2001 at 12:39:48PM +1100, Jeff Turner wrote: > On Fri, Nov 09, 2001 at 02:05:17PM -0600, Adam Heath wrote: > > Additionally, if libbar-1.1.3 breaks apps that that use > > libbar-1.1.0, then libbar-1.1.3 is broken. Please read the docs sun > > has on the subject(they are very concerned about never breaking > > backwards compatibility). > > How about when libbar-2.0 comes along, and justifiably breaks > backwards-compatibility? Must we not use all apps relying on libbar-1.x, > until they upgrade?
Shared library versioning solved this problem long ago. libc5 and libc6 can coexist in the same system. You just package .jars that break backward compatibility with a new package name. > Also, Java has hierarchical classloaders, which allow multiple > incompatible versions of classes to be loaded into the same JVM. Take > Tomcat 3.3 and 4.0 for example. Tomcat uses JAXP 1.1 and Crimson, but > webapps are free to use any incompatible jars they like (a hypothetical > JAXP 2.0, for instance). So assuming a perfect world where everything is > in a .deb, Tomcat requires libjaxp-1.1, my webapp requires libjaxp-2.0, > and there's no conflict. > > We're not in Kansas anymore, Toto :) The old rules don't always apply. I got the impression that Adam was upset at least partly about the legal issues. -- Colin Watson [EMAIL PROTECTED]