one thing that hasn't been given a great deal of consideration regarding external modules is the problem of upgrading. If you upgrade a module that's already installed, currently there's no way to know what components make up the existing version of the module. That means the upgraded version may not replace all existing components, leaving a certain amount of potentially problem causing cruft.
A good example is when a module gets refactored from one file into multiple files. It becomes an even bigger pain when you start to allow nested modules, such as Public.Parser.XML2 and Public.Parser.XML2.Schematron, for example. I imagine that there'd need to be some sort of registry that described the files comprising the module. In theory, it could be as simple as an array constant in the module that lists all of the constituents, much as we currently include the version and author for use by the Monger system.
It would be relatively simple to include this functionality in the 7.8 release of monger, if there wasn't any major objection to this.
Also, I haven't heard any objection to the idea of tagging modules in the dist so that they can be downloaded separately. I assume that everyone was at least neutral on the idea? I vaguely remember there being some sort of build environment change recommended by Grubba or Mast... what was that exactly?
Any thoughts, comments?
Bill
pike-devel@lists.lysator.liu.se