Date: Thu, 6 May 2004 15:44:27 -0700 From: Kris Kennaway <kris@obsecurity.org> To: "Jacques A. Vidrine" <nectar@freebsd.org>, Kris Kennaway <kris@obsecurity.org>, Garance A Drosihn <drosih@rpi.edu>, Oliver Eikemeier <eikemeier@fillmore-labs.com>, ports-committers@freebsd.org, cvs-ports@freebsd.org, cvs-all@freebsd.org Subject: Re: discussion on package-version numbers... (PR 56961) Message-ID: <20040506224427.GA96804@xor.obsecurity.org> In-Reply-To: <20040506220855.GI2316@madman.celabo.org> References: <4080151C.1070200@fillmore-labs.com> <20040416173857.GA50670@madman.celabo.org> <20040416174418.GC50670@madman.celabo.org> <40802354.3030202@fillmore-labs.com> <20040417152242.GA5543@madman.celabo.org> <20040506190729.GD1777@madman.celabo.org> <p0602040bbcc04f36c2aa@[128.113.24.47]> <20040506212442.GF2316@madman.celabo.org> <20040506213641.GA93452@xor.obsecurity.org> <20040506220855.GI2316@madman.celabo.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--bp/iNruPH9dso1Pn Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, May 06, 2004 at 05:08:55PM -0500, Jacques A. Vidrine wrote: > > Some ports use "p1" for "patchlevel 1", some use it for "prerelease > > version 1". Since we can't have it both ways, committers need to > > remember to use pkg_version -t and some careful foresight to avoid > > running version numbers backwards. However ultimately there will be > > continue to be mistakes made, even if version monotonicity is somehow > > enforced at commit-time. >=20 > That's true, mistakes will happen. But simpler conventions could make > the mistakes more obvious. >=20 > Strawman version grammar >=20 > <version> ::=3D <major> (<letter> (<minor>)? )? '_' <revision> ',' <e= poch> > <major> ::=3D <dotted> > <minor> ::=3D <dotted> > <dotted> ::=3D <integer> ('.' <dotted>)? > <revision> ::=3D <integer> > <epoch> ::=3D <integer> > <letter> ::=3D 'a'..'z' > <integer> ::=3D 32-bit integer >=20 >=20 > The components are compared in this order: > { epoch, major, letter, minor, revision } > with this exception: > - Certain combinations represent `prereleases'. These are > versions with a <letter> component, but no <minor> component. > All prerelease versions are less than all non-prerelease versions > with the same <epoch> and <major> components. >=20 > The troublesome ports we discussed are now tame. >=20 > 3.8.1p2 > 3.8p2 > 3.8 > 3.8b > 3.8a > 1.0.1x2003.09.16 > 1.0x2003.09.16 >=20 > Perhaps we want '+' to be a `letter' :-) >=20 > Obviously, things like 1.0rc1, 1.0rc2,... (where RC is release > candidate) would need to become 1.0a, 1.0b... But one exception sure > seems like a win. Now, what have I left out ? :-) openssl 0.9.7d > 0.9.7 > You might even be able to kill the exception if you allow > <uppercase-letter> and <lowercase-letter> to have different meanings... The more special cases, the more mistakes people will make and the more PORTEPOCH bumps that will need to be made to correct for it. Kris --bp/iNruPH9dso1Pn Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (FreeBSD) iD8DBQFAmr/LWry0BWjoQKURAifdAJ9+9+UFBI5i8yReSmbrdcATTZrbogCgkFAt 6ckgmDTz8R++m6wO9hP65jA= =dpZ9 -----END PGP SIGNATURE----- --bp/iNruPH9dso1Pn--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040506224427.GA96804>