FOSS and Interface Taxonomy levels
Nicolas Williams
Nicolas.Williams at sun.com
Wed Mar 5 13:18:12 PST 2008
On Wed, Mar 05, 2008 at 12:52:45PM -0800, John Plocher wrote:
> Nicolas Williams wrote:
> >> Volatile libraries that can be installed by the end user
> >> that have an architecture that allows the user to build
> >> self-contained silos of stuff?
> >> Probably extremely valuable
> >
> > Examples?
> >
> > Also, if such a library is "core" to more than one third-party app or
> > non-core FOSS, then how do we help prevent DLL hell?
>
>
> The key here is "self-contained silos of stuff".
OK. Then why is the recent mail utilities case not instructive? It
qualifies, IMO, as "self-contained," and it wasn't difficult (mostly
because the submitter, i-team, ARC and non-members participants
succeeded in finding a non-controversial mixture of Volatile and
Uncommitted).
Sure, finding a reasonable mixture of interface stability labels for
other cases may be difficult, but when the i-team understands the ARC
process, the interface taxonomy and its raison d'être, that should help
make things go smoothly. When the i-team does not then this thread
invariably ensues.
> WSARC 2006/130 defined a mechanism to deal with
> "Multi-Installation and Management of Layered Products"
> where one could install multiple versions of components
> in different places so as to avoid the multi-DLL hell
> problem.
>
> Think of
> "/usr/local-apache1webstack/",
> "/usr/local-apache22webstack" and
> "/usr/local-appserverwebstack"...
Multiple versions. The ARC has been averse to that. Perhaps it should
be less so. Either way, the same "find a suitable set of Uncommitted
and Volatile interfaces" advice applies, no?
> In effect, it says that, if you have multiple 3rd party apps
> that have non-resolvable conflicts with each other (or with
> stuff in the core), you install them into a silo of their own.
>
> This trades "DLL-Hell because we need multiple versions
> co-installed" for "uses more disk space".
That works for some things. OpenSSL and NSS challenge this world view.
But I think we're best off accepting some amount of DLL hell when it
comes to OpenSSL and NSS, and just ship multiple versions of them plus
warnings/guidance/whatever mitigations we can put together, + work with
the upstream communities to improve interface stability/documentation
and mitigate DLL hell.
Nico
--
More information about the opensolaris-arc
mailing list