git: aef769614f92 - main - pkgbase: differentiate package versions for ALPHA/BETA/PRERELEASE/RC phases

Kyle Evans kevans at freebsd.org
Thu Jan 14 15:42:07 UTC 2021


On Thu, Jan 14, 2021 at 9:02 AM Emmanuel Vadot <manu at bidouilliste.com> wrote:
>
> On Thu, 14 Jan 2021 11:59:25 -0300
> Renato Botelho <garga at FreeBSD.org> wrote:
>
> > On 14/01/21 10:00, Emmanuel Vadot wrote:
> > > The branch main has been updated by manu:
> > >
> > > URL: https://cgit.FreeBSD.org/src/commit/?id=aef769614f921660cb0262412426034cf5395ae5
> > >
> > > commit aef769614f921660cb0262412426034cf5395ae5
> > > Author:     Emmanuel Vadot <manu at FreeBSD.org>
> > > AuthorDate: 2021-01-14 12:56:38 +0000
> > > Commit:     Emmanuel Vadot <manu at FreeBSD.org>
> > > CommitDate: 2021-01-14 13:00:04 +0000
> > >
> > >      pkgbase: differentiate package versions for ALPHA/BETA/PRERELEASE/RC phases
> > >
> > >      The current postfix conversions are:
> > >
> > >          CURRENT / STABLE -> .sYYYYMMDDhhmmss
> > >          ALPHAx -> .ax, so 11.3-ALPHA1 becomes 11.3.a1
> > >          BETAx -> .bx, so 12.1-BETA2 becomes 12.1.b2
> > >          RCx -> .rcx, so 13.0-RC3 becomes 13.0.rc3
> > >          PRERELEASE -> .p, so 11.3-PRERELEASE becomes 11.3.p
> > >          RELEASE -> (nothing), so 12.1-RELEASE becomes 12.1
> >
> > Wouldn't it be necessary to add timestamp information on PRERELEASE as
> > done on CURRENT/STABLE ?
>
>  Yes it would, this wasn't one of the reason for the revert but it was
> brough to me after.
>  -STABLE should always be .sYYYYMMDDhhmmss even when in the PRERELEASE
> phase.

I had a chance to play with it a little bit, and my proposal is:

1.) Drop -PRERELEASE as a non-CURRENT/STABLE versioning scheme in the
pkg versions
2.) Use .plYYYYMMDDhhmmss instead of .sYYYYMMDDhhmmss for
CURRENT/STABLE (.pl sorts before all others in the pkg version scheme
quite intentionally)
3.) Reinstate all of the others as committed here

This basically works; it's a little kludgy during a release process up
until the version on -STABLE is bumped up to the next minor if you're
trying to hop off an alpha/beta/rc back to stable, but I think that's
acceptable. It's a narrow window in which your slide over to -STABLE
is considered a downgrade since it gets bumped promptly at the
conclusion of the release cycle.

root at viper:~/pkg/libpkg# pkg version -t 13.0.a1 13.0.b1
<
root at viper:~/pkg/libpkg# pkg version -t 13.0.b1 13.0.rc1
<
root at viper:~/pkg/libpkg# pkg version -t 13.0.rc1 13.0
<

Thanks,

Kyle Evans


More information about the dev-commits-src-all mailing list