[Mageia-dev] epoch number [Was: version scheme blocks mgarepo submit]

Colin Guthrie mageia at colin.guthr.ie
Fri Oct 5 15:07:03 CEST 2012


'Twas brillig, and andre999 at 05/10/12 07:13 did gyre and gimble:
> Johnny A. Solbu a écrit :
>> On Thursday 04 October 2012 10:56, EatDirt wrote:
>>> adding an epoch number
>>> (that can not be removed later)
>>
>> I'm sure I'm not the only one confused about this epoch thing, so I'll
>> ask.
>> What is an epoch? (I think I know it's function, but still)
>>
>> And why can it not be removed once instated? No, really, why?
>>
> 
> It is like a more-than-major version, which allows
> e.g. version 3.4 with epoch 1 to be treated as more recent than
>  version 3.5 without epoch.
> If epoch once defined is removed in subsequent versions,
> these subsequent versions will be treated as older than any version with
> epoch defined, so once defined, epoch can't be removed (without changing
> the name of the package).
> Epoch can be increased like other version numbers, if the need arises.
> 
> Evidently, if a package version error is caught early enough, the use of
> epoch can be avoided.

It's also worth stating explicitly that epochs are a pain in the
backside! They should only be added when no other solution exists. e.g.
we would likely never use epoch to fix any issue in cauldron, only when
we need to fix something going from mgaN to mgaN+1.

The reason they are a pain is that they are, intentionally, hidden from
view. If you have package foo-3.5 but it has an epoch of 1, then any
package requiring foo >= 3 would have to put "Requires: foo >= 1:3" in
the spec.

Perhaps not the best example, but it's makes inter package deps a bit
trickier.

So it solves a problem, but should be used sparingly.

Col


-- 

Colin Guthrie
colin(at)mageia.org
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/


More information about the Mageia-dev mailing list