[Distutils] Version numbers for module distributions
Konrad Hinsen
hinsen@cnrs-orleans.fr
Thu, 10 Dec 1998 18:06:31 +0100
> There have been a few rumbles about module version numbering on and off
> the list, and I thought I should bring it all out into the open. First,
> I think I tossed off a random opinion along these lines:
[lots of arguments deleted because I agree completely]
> Now, there should also be semi-formal guidelines on what the different
> components of a version number *for modules* might mean:
Better formal ones. If you feel you need more precision to indicate
subtle variations in your code, put them into a README file!
> their documentation and test suites. If you want different levels of
> functionality, you should split up your modules accordingly and make
> several distributions. Give away foo-base-1.3.2 to anyone who wants it,
> and charge extra for foo-bronze-1.3.2, foo-silver-1.3.2, and
> foo-gold-1.3.2, each of which contain a couple of modules that add still
> more functionality to the whole system.
That's the only reasonable approach if we want to establish a
dependency verification system.
> I think a lot of "version" problems can be solved by carefully
> organizing your modules so that blocks of functionality (barebones vs
> deluxe, informix vs sybase, etc.) correspond to modules or blocks of
> modules. Hell, this is just good solid software engineering practice,
Right. But this should be explained carefully in the manual for
package developers!
> Good point! I certainly hope we don't have to deal with this, i.e. have
> module developers worry whether their module will work with Python 1.5.2
> or 1.6 or 1.6.1 (etc.).
We will have to consider this for binary distributions, because the
binary APIs do change from version to version (not always, but
sometimes). But since Python keeps a C API version number, all it
takes is to note this version number in the package meta-data.
At least for verification; distinguishing binary distributions
for different Python versions by their file name is another
question. But not really a difficult one, unless we want to support
DOS file systems!
Konrad.
--
-------------------------------------------------------------------------------
Konrad Hinsen | E-Mail: hinsen@cnrs-orleans.fr
Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-2.38.25.55.69
Rue Charles Sadron | Fax: +33-2.38.63.15.17
45071 Orleans Cedex 2 | Deutsch/Esperanto/English/
France | Nederlands/Francais
-------------------------------------------------------------------------------