RE: [PEAR-DEV] a case for subpackages
| From: | Lukas Smith | Date: | Mon, 25 Aug 2003 07:51:38 +0000 |
| Subject: | RE: [PEAR-DEV] a case for subpackages | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-20485@lists.php.net to get a copy of this message | ||
> From: Greg Beaver [mailto:greg@chiaraquartet.net]
> Sent: Monday, August 25, 2003 6:57 AM
> I'd like to make a case for subpackages in PEAR.
> In practical terms, this means that subpackages must be uninstalled
with
> the main package, but need not be installed with the main package.
> Subpackages by definition cannot exist as standalone packages - they
> depend on the main package to exist at all.
> Why separate subpackages from the main package?
> 1) Subpackages often have a very different stability level from the
main
> package, and users who only want stable code should not be forced to
> read documentation just to determine the stability of a package.
> 2) Upgrading a subpackage that has changes is much more efficient in
> both time and bandwidth than upgrading the entire package at once.
New
> subpackages can be released without a new release of the main package
> 3) Applications can depend on a minimal set of subpackages, reducing
> dependency bloat
Ok, I kinda follow your reasoning. However I am just a tad unsure if
this is bloat. Seperating some stuff might make sense. For example I
might have a subpackage for all the MDB alpha drivers (or maybe even per
driver). However I can obviously do that today.
The big thing as you pointed out is the uninstall. If I uninstall MDB it
should obviously complain about those driver packages as they need MDB.
So I should get a list of packages that depend on MDB. I can then run
the uninstall command with force install (I don't remember all the
existing pear commands) and it should then uninstall all of the MDB
driver packages as well.
With your modification it would probably do this silently? Dunno if this
adds to transparency for the user. I also don't know how these packages
should be listed. If we start to encourage this subpackaging the list of
installed packages can become very very long indeed (although its
growing so fast now anyways that soon people need to search most of the
times anyways if they even only have a fraction of pear packages
installed). If we don't show them we might only list them when a user
specifically wants to get the details on a package (in the list we could
have a '*' next to them to show that there are subpackages installed).
Anyways I am just thinking aloud. I don't have a final opinion just yet.
Regards,
Lukas