[haiku-development] Re: software organization/installation

  • From: Francisco Castro <fcr@xxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Mon, 16 Feb 2009 01:00:42 -0200

On Sunday 15 February 2009 20:54:20 David McPaul wrote:
> Unfortunately,developers are unable to create shared libraries that
> maintain backward compatability

This is not true, there are a lot of backwards compatible libraries. And if 
the library does not maintain backwards compatibility, the developers should 
increase its major version numbers. Libraries with different version numbers 
can coexist in the same system. This works in the un*x-like world.

> and it is too easy to replace a newer
> version with an older version and so break apps.

That's one of the reasons of why it's needed a package management system.

>
> Having 1 directory for all libraries leads to dll hell and without a
> good installer, dependency hell

A good installer is needed.

It's my opinion that the installer should be part of the package management 
system, the same with the "uninstaller" and the "updater".

> Having a library folder per application wastes some disk space but the
> user and developer knows that the application will just work out of
> the box.

Not only disk space, but also more RAM.

>
> If the library needs updating then the developer is likely to release
> a new version with the new library after appropriate testing.
>

And more network bandwidth every time you update them.

> The end user is also welcome to run a query to find all locations of
> the library, replace them with whatever they found on a russian web
> site and cross their fingers. :-)

You should realize that small programs depending of huge libraries are common.

Libraries must be shared between applications.

And there should be a central repository for these shared libraries.

-- 
Francisco Castro

Other related posts: