PORTVERSION and portlint

Oliver Eikemeier eik at FreeBSD.org
Fri Nov 28 04:13:43 PST 2003


Sergey Matveychuk wrote:

> Oliver Eikemeier wrote:
> 
>> and realized that 1.0.1+2003.11.27 < 1.0+2003.10.03, try
>>
>>  pkg_version -t 1.0.1+2003.11.27 1.0+2003.10.03
> 
> I think it should be fixed.

Probably it would be a good thing to have multi-version numbers, and I'm
happy to build this in my pkg_version patches.

But this is an functional enhancement, not a fix, and would require a MFC.
The plus sign is illegal and unsupported with the current package tools.

>> I would
>> keep that error, or at least issue a warning. The ports should use
>>
>> PORTVERSION=    ${VERSION_ONE}.${VERSION_TWO}
> 
> Yes, I see. But russian/apache13-modssl use
> PORTVERSION=    ${VERSION_APACHE}+${VERSION_RA}+${VERSION_MODSSL}
> 
> If we change '+' with '.' we'll get something not readable:
> 1.3.29.30.19.2.8.16
> 
> Where is apache version, nodssl version? You can't say without look at 
> port Makefile.

You're not really supposed to be able to do that, the premier purpose of
version numbers is to enable automated processing of packages for tools
like portupgrade.

On the other hand I agree that is is a nice extra if the version numbers are
human readable. You could use 1.3.29.x.30.19.x.2.8.16, which isn't as pretty
as the plus sign, but gives you 1.0.1.x.2003.11.27 > 1.0.x.2003.10.03

I think it would be nice to extend the functionality of the package tools,
but you have to do more than just declare `+' to be a legal separator, you
need:

- portmgr@ to approve the changes
- to MFC, replacing -STABLES perl pkg_version or adapt that too
- an mechanism to update the tools of older releases
- to adapt all other tools, like sysutils/portupgrade

I'm happy to provide the patches and a mechanism to get that to work on older
releases.

-Oliver




More information about the freebsd-ports mailing list