Robert Feldt <feldt / ce.chalmers.se> writes: > * Each extension has a version number and a facility for checking the > compatibility of different versions. (For example this could be > implemented in a simple class "VersionCompatibility" that would take a > version string, such as '1.2', and return the latest version of the > extension that is compatible with the required version, for > example '1.4'. This is concerned with backwards compatibility. Personally, I'd prefer an understanding that RAA modules should always be compatible with prior versions across minor revision upgrades. However, versioning is still a great idea for forwards compatibility: this module needs Net::HTTP version 1.4 or later. > * If Ruby cannot find a compatible extension locally it would go to RAA > (Ruby Application Archive) or other CPAN-like repository and query > it for the latest compatible version. It would then download and > install the package. On most people's Unix boxes, this would require that the applications should be run as root, which is not really an option. Even when this isn't the case, this could lead to all sorts of issues. However, it _would_ be nice to have a system where I could say: cran install Net::HTTP or cran install Net::HTTP -v 1.3 Even better if this automatically handled dependencies. The trick here would be allowing multiple versions of the same module on a single system, so I could be running v1.3 on some old software and 2.3 on some later stuff. Regards Dave