epochs

Boey Maun Suang boeyms at macports.org
Sat Dec 29 03:52:14 PST 2007


On Thu, December 13, 2007 6:03 pm, markd at macports.org wrote:
> I was refining the guide part about epochs, and after gleaning information
> from the FreeBSD ports collection documentation I followed their lead and
> wrote the final part below for our guide.  But do we consider this a good
> practice?  Or is it only a FreeBSD thing?
>
>
> "An epoch is not needed for most ports, and good use of a port's version
> can make using an epoch unnecessary even for application distributions
> without official version numbers. For example, if an application version
> 1.5 is superseded by a snapshot release 20081022, the new release could be
> given version number 1.5.20081022, rather than 20081022, so the newer
> release will have a numericaly greater value."

(For those who want to read the above quotation in context, see Section
5.2.2.2 of the _FreeBSD Porter's Handbook_ [1].)

I think that what we (and they) want to occur could be more clearly
expressed as something like "only increase epoch when the version number
of goes down"; we could then cite the kind of example that you quote as a
particular case to be careful of, along with the rationale for doing it
the way that they describe.  In the above case, I imagine that a look at
the official version numbers would show that official releases are tagged
1.5, 1.5.1, 1.6, and so on, but that they only label snapshot releases in
between official ones by date, in which case the practice that FreeBSD
recommends could be appropriate.

I'd also like to note that:

(a) I think that our division between "foo" and "foo-devel" makes the
above scenario unlikely -- snapshot releases would clearly go into
"foo-devel", unless upstream decided that they were going to release an
"official" or "critical" update but tag it only with their snapshot
number, which seems very unlikely; and

(b) one could also consider incrementing our port's revision number
instead, as has been done previously with silent upstream updates where no
revision number change is announced at all -- though it's a bit of a
violation of the intended meaning of that number, the practical effect is
the same.  (I wouldn't recommend changing the revision number to the date
of snapshot; that violation of intended meaning would be too much for me
:) )

There might be other scenarios that one should be wary of with respect to
epoch, but I can't think of any that would be likely to arise.

I hope that helps.

Kind regards,


Maun Suang

[1]
http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-naming.html#AEN534



More information about the macports-dev mailing list