On Wed, Mar 19, 2008 at 12:43 AM, Jyri Virkki <[EMAIL PROTECTED]> wrote:
> Danek Duvall wrote:
>  >
>  > Sure.  A cluster / metacluster / bundle / whatever is just another package
>  > that consists entirely of dependencies.  And maybe some metadata, and
>  > possibly a few other things if you want.  It could even contain filesystem
>  > objects if you really thought that was appropriate.
>
>  Are there plans to support functional dependencies, so for example a
>  package can declare it needs "a database", and both MySQL and postgres
>  packages can fulfill that dependency?

I know you probably don't mean "database" literally. However, I tend
to think such dependencies are fraught with "software peril" :-)

Let me explain.

In my experience, a program often really needs postgres, MySQL, or
Oracle specifically.

Going further, it may need specific versions of any one of those: such
as , MySQL >= 3 and < 4; or postgres, or Oracle >= 8 and < 11.

Other cases might be that a program needs /usr/bin/grep, and doesn't
care which flavour it is (GNU, etc.) as long as it is a POSIX
compliant implementation.

The other problem I have with general dependencies is that once you
satisfy that dependency, switching it can lead to problems.

For example, let's say:

* Admin A installs MySQL
* Admin A installs FooBar - a package with a "database" dependency
satisfied by MySQL
* Admin B installs postgres because of some other need
* Admin B sees MySQL and removes it (which they  could because the
"database" dependency of FooBar is satisfied by postgres) and thinks
everything is ok since there were no dependencies

Now FooBar is likely broken since it was setup to use the MySQL
database, but there were no complaints because of postgres being
installed.

-- 
Shawn Walker, Software and Systems Analyst
http://binarycrusader.blogspot.com/

"To err is human -- and to blame it on a computer is even more so." -
Robert Orben
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to