On 30.05.2007, at 21:30, Jim Fulton wrote:
On May 30, 2007, at 3:20 PM, Christian Theune wrote:Hi, Am Mittwoch, den 30.05.2007, 15:12 -0400 schrieb Benji York:Jim Fulton wrote:It's actually worse than that. <2.0 would admit 2.0a1. :) You'd probably need something like < 1.99.I can deal with spelling dependencies on major version X as <= X. 999.Even if developers remembered, it would be icky to have to spell outsomething like >=3.4 <=3.99 on everwhere.Not as icky (IMHO) as having distribution names with embedded major version numbers. I'm interested in other people's opinions here.I don't like version numbers encoded in package names. I consider thisto be a work-around for packaging systems that aren't rich enough. (Gentoo for example gets this right.)Could you elaborate on this?
well :) i'm co-maintainer of the net-zope herd in gentoo:read my attempt to improve the plone versioning: http:// article.gmane.org/gmane.comp.web.zope.plone.devel/3227/match=version +gentoo+batlogg
in summary: Naming release tarballs (adapted from the gentoo conventions ;-)) file names consist of three logical sections:The first section is the package name, which should only contain lowercase
letters, the digits 0-9, and any number of single hyphen ('-') orunderscore ('_') characters. Some examples are cmfplone, cmfquickinstaller,
formulator,...The second section is the version of the package, which should normally be same as the version of the contained product. The version is normally made up of two or three numbers separated by periods, such as 1.2 or 4.5.2, and may have a single letter immediately following the last digit; e.g., 1.4b or 2.6h. The package version is joined to the package name with a hyphen;
for example: foo-1.0, bar-2.4.6, etc. Important: If you're thinking of using a trailing letter in your versionstring, note that the trailing letter should not be used to signify alpha or beta status for the package, since alphas and betas are prereleases and
letter revisions are newer versions. It's very important that versionnumbers faithfully represent the version of the package so that depenency
checking is possible. The third (optional) section contains a special suffix; either _alpha,_beta, _pre (pre-release), _rc (release candidate), or _p (patch). Any of
these suffixes may be immediately followed my a number; e.g.,linux-2.4.0_pre10; Assuming identical version parts, an _alpha package is older than _beta, _beta older than _pre, _pre older than _rc, and _rc older
than _p. This section is meant to reflect upstream versions only.Note: An _rc package is older than a package without an underscore prefix (i.e. linux-2.4.0), and linux-2.4.0 is older than a package with a single
letter prefix, i.e. linux-2.4.0b. As you would expect, the linux-2.4.0b package is considered older than linux-2.4.0c.... and I suppose that we actually have a fourth section of the file name --
the .tar.gz extension itself.
Maybe there is some kind of dependency syntax that reads well thatmeans "I want this major version". Can you think of a syntax that isactually nicer than foo2?I can think of a syntax, but don't know if setuptools supports it. Perhaps I should look that up. But I wont.I read the documentation on the version numbers multiple times and can'tremember anything that supports our use case.Maybe we should as pje whether there is something like what we imagine?I think I know what the answer will be. After all, there is a syntax for getting what we want. The problem with it, IMO, and I think in other people's opinion is that it is too cumbersome.IMO, having every dependency look like: project_name >=X.y.z <X.999Is too cumbersome. Maybe we should get over that. Maybe many other people don't think it's too cumbersome. Alternatively, maybe someone can think of a prettier/more-concise syntax and sell it to PJE.I'll note that this is especially cumbersome if, as I believe, for 90% of packages, there isn't any good reason to make backward compatible changes, at least after initial development. So all packages would end up getting a dependency-specification tax even though only a few packages will need backward compatibility changes.Jim -- Jim Fulton mailto:[EMAIL PROTECTED] Python Powered! CTO (540) 361-1714 http://www.python.org Zope Corporation http://www.zope.com http://www.zope.org _______________________________________________ Zope3-dev mailing list Zope3-dev@zope.orgUnsub: http://mail.zope.org/mailman/options/zope3-dev/batlogg.lists% 40lovelysystems.com
-- "In the face of ambiguity, refuse the temptation to guess." -- The Zen of Python, by Tim Peters Jodok Batlogg, Lovely Systems Schmelzhütterstraße 26a, 6850 Dornbirn, Austria phone: +43 5572 908060, fax: +43 5572 908060-77
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Zope3-dev mailing list Zope3-dev@zope.org Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com