Hi John,

On Wed, 2005-07-20 at 19:31, John Plocher wrote:

> Without this ability to manage the evolution of shared components,
> it becomes extremely difficult to reuse them, because asynchronous
> development almost guarantees that a change to the shared component
> will break a consumer, and that multiple consumers rarely depend on
> the same version.
> 
> The "solutions" that exist seem to
>       require control of the evolution of the shared components (Sun...), or
>       require control of the release process (gentoo...)
>         "rebuild the entire world", or
>       require control of the stack (blastwave...)
>         "duplicate as needed to ensure we have what we need"
>         worst case is redhat with multiple versions of every library.

As far as I understand, the main problem with multiple versions
(apart from the increased maintenance effort) is that different
versions of the same lib may end up linked to the same executable
(through dependent libs) and it'll cause unpredictable runtime 
linking and most likely a crash.

It's a long shot, but would it be possible to enhance the
linker/runtime linker to have some sort of namespacing that
would enable it to work correctly with multiple versions?

This way we could have 2 versions of those libraries where
interface stability suffers: one kept stable (bugfixes and
compatible changes only) for those who want their code to
work forever and one closely tracking the latest community
code for those who need the latest and greatest and don't
mind rebuilding.

Laca


_______________________________________________
opensolaris-discuss mailing list
opensolaris-discuss@opensolaris.org

Reply via email to