Hi,

can anyone explain what's the logic behing the package
names and versions? It's really hard to make some kind
of parser for package names since there doesn't seem to
be any rules about them.

Here are few examples:

samba-3.0.13p0          -> fine.
samba-docs-3.0.13p0     -> samba_docs-3.0.13p0 ?
ImageMagick-6.0.0-2p3   -> ImageMagick-6.0.0_2p3 ?
(the ImageMagick in -current doesn't have this naming
scheme, this is from 3.7)

So why not use those underscores? And how would
you make a program that reliably compares ImageMagick-6.0.0-2p3
against ImageMagick-6.0.0-4p1 for example?

Also, what about some internal version for each port
so comparing versions would go nicely and cleanly?
For example GNU libc has a function called strverscomp().
I was told it catches nearly all cases but not every,
that's why internal version number would be the best.
The best thing is it doesn't require much from the maintainer
to keep it updated. Kind of like BIND's zone serial numbers.

Sincerely,
 Antti Harri

Reply via email to