On Thu, Mar 26, 2020 at 10:34:24AM +0100, Paco Esteban wrote:
> Attached the 3 modified diffs again, and some comments inline.
> 
> On Thu, 26 Mar 2020, Jeremie Courreges-Anglas wrote:
> 
> > > Index: bsd.port.mk.5
> > > ===================================================================
> > > RCS file: /home/cvs/src/share/man/man5/bsd.port.mk.5,v
> > > retrieving revision 1.528
> > > diff -u -p -r1.528 bsd.port.mk.5
> > > --- bsd.port.mk.5 24 Mar 2020 14:59:52 -0000      1.528
> > > +++ bsd.port.mk.5 25 Mar 2020 20:07:07 -0000
> > > @@ -1650,6 +1650,10 @@ If set to
> > >  will not open changed files in an editor.
> > >  .It Ev EPOCH
> > >  Epoch number of the current package.
> > > +Used when the port version is changed but the new version is not 
> > > regarded by
> > > +.Xr packages-specs 5
> > 
> > 5 -> 7
> 
> fixed.
> 
> > >  Defaults to empty (no need for numbering changes), then
> > >  numbering starts at 0.
> > >  Gets automatically incorporated into
> > > @@ -1658,6 +1662,12 @@ as
> > >  .Sq v${EPOCH}
> > >  to form a full package-name conforming to
> > >  .Xr packages-specs 7 .
> > > +If there are dependent packages that use a version spec, this has to be
> > > +adjusted for each one or
> > > +.Ev PKGSPEC
> > > +changed on the affected package and
> > > +.Ev REVISION
> > > +bumped for all the dependencies.
> > 
> > Hmm, like Marc said this is not the place to mention PKGSPEC.
> 
> Yup, I misunderstood his message.  I've removed it.
> 
> > >  A version style marker, of the form
> > >  .Sq v0 ,
> > >  .Sq v1 ...
> > >  can be appended to the version number (after the patch level)
> > >  to denote the new numbering scheme.
> > > +This is added by setting
> > > +.Ev EPOCH
> > > +in the port Makefile.
> > > +Combined with
> > > +.Ev REVISION ,
> > > +this leaves the version ordering as follows:
> > > +.Bl -dash
> > > +.It
> > > +"0.1" is older than "0.1p0"
> > > +.It
> > > +"0.1p0" (or
> > > +.Sq p1 ,
> > > +.Sq p2 ... )
> > > +is older than "0.2"
> > > +.It
> > > +"0.2" is older than "0.1v0" (or any other version number without
> > > +.Sq v )
> > > +.It
> > > +"0.1v0" is older than "0.1p0v0".
> > > +Just as showed in the first point.
> > > +.It
> > > +"0.1p0v0" is older than "0.2v0".
> > > +The same as the second point.
> > > +.It
> > > +"0.2v0" is older than "0.1v1" (or any other version with a lower
> > > +.Sq v
> > > +value)
> > > +.El
> > > +.El
> > > +.Pp
> > 
> > I find this a bit too chatty.  Can we find a single sentence that
> > explains what happens?
> > 
> >   ...
> >   A version style marker, of the form ‘v0’, ‘v1 ...’ can be appended to the
> >   version number (after the patch level) to denote the new numbering
> >   scheme.
> >  +This marker takes precedence over the regular package version.
> > 
> > Thoughts?
> 
> Take a look at the new diff.  I removed the chatty list and merged your
> sentence with the last part of mine.  I think is clear now.  It reads
> like this:
> 
>   In some rare cases, a change to a port would cause the version number to
>   compare as older than the previous version.  This happens if an update is
>   reverted, if upstream's numbering scheme changes completely, or if their
>   usual scheme does not align with the one used by OpenBSD.  A version
>   style marker, of the form ‘v0’, ‘v1 ...’ can be appended to the version
>   number (after the patch level) to denote the new numbering scheme.  This
>   marker is added by setting EPOCH in the port Makefile and it takes
>   precedence over the regular package version.  See bsd.port.mk(5).
> 
> > > Index: faq/ports/guide.html
> > > ===================================================================
> > > RCS file: /home/cvs/www/faq/ports/guide.html,v
> > > retrieving revision 1.89
> > > diff -u -p -r1.89 guide.html
> > > --- faq/ports/guide.html  28 Sep 2019 21:35:05 -0000      1.89
> > > +++ faq/ports/guide.html  14 Mar 2020 14:39:36 -0000
> > > @@ -1131,6 +1131,8 @@ changes to patches or build flags.
> > >  If the upstream version has not changed, the package name bump is done
> > >  by incrementing <code>REVISION</code> if already present, otherwise 
> > > adding
> > >  <code>REVISION = 0</code> towards the top of the Makefile.
> > > +This will add <code>p${REVISION}</code> to <code>FULLPKGNAME</code> to 
> > > form a full
> > > +package-name conforming to packages-specs(7).
> 
> This is wrong, not sure how it get there.  I removed it.
> 
> > >  <li>
> > >  Version numbers always go forward.
> > > @@ -1138,6 +1140,8 @@ If something unexpected happens and you 
> > >  upstream numbering changes completely so that the version number appears
> > >  to go backwards, you must use <code>EPOCH</code> to make sure pkg_add(1) 
> > > sees
> > >  the package as a newer package.
> > > +This will add <code>v${EPOCH}</code> to <code>FULLPKGNAME</code> to form 
> > > a full
> > > +package-name conforming to packages-specs(7).
> > >  
> > >  <li>
> > >  If the package does not build, no bump is needed: changes to restore a 
> > > port
> > > @@ -1153,6 +1157,11 @@ The package system uses a signature mech
> > >  is fully identified by its package names, plus the dependencies against
> > >  which it was built, plus the version numbers of all shared libraries it
> > >  contains.
> > 
> > I'd be tempted to leave this as is, or only add something like what you
> > propose below.  I'm not objecting though.  :)
> 
> I've kept it for now, but not sure it adds much ...
> 
> > 
> > > +
> > > +<li>
> > > +The version comparison ordering can be summarized as:
> > > +<code>0.1 &lt; 0.1p0 &lt; 0.2 &lt; 0.1v0 &lt; 0.1p0v0 &lt; 0.2v0 &lt; 
> > > 0.1v1</code>.
> > > +Check packages-specs(7) for more detailed information.
> > >  </ul>
> 
> This is the sentence that triggered all this.  I kind of like how visual
> it is, so I would keep it.
> 
> Cheers,
> 
> -- 
> Paco Esteban.
> 0x5818130B8A6DBC03

> Index: bsd.port.mk.5
> ===================================================================
> RCS file: /home/cvs/src/share/man/man5/bsd.port.mk.5,v
> retrieving revision 1.528
> diff -u -p -r1.528 bsd.port.mk.5
> --- bsd.port.mk.5     24 Mar 2020 14:59:52 -0000      1.528
> +++ bsd.port.mk.5     26 Mar 2020 09:06:35 -0000
> @@ -1650,6 +1650,10 @@ If set to
>  will not open changed files in an editor.
>  .It Ev EPOCH
>  Epoch number of the current package.
> +Used when the port version is changed but the new version is not regarded by
> +.Xr packages-specs 7
> +as being newer.
> +Once added, it cannot be removed or go backwards.
>  Defaults to empty (no need for numbering changes), then
>  numbering starts at 0.
>  Gets automatically incorporated into

> Index: packages-specs.7
> ===================================================================
> RCS file: /home/cvs/src/share/man/man7/packages-specs.7,v
> retrieving revision 1.25
> diff -u -p -r1.25 packages-specs.7
> --- packages-specs.7  27 Oct 2014 22:45:30 -0000      1.25
> +++ packages-specs.7  26 Mar 2020 09:20:10 -0000
> @@ -144,15 +144,20 @@ then normal version, and finally
>  .El
>  .El
>  .Pp
> -In some rare cases, version numbering changes completely upstream.
> +In some rare cases, a change to a port would cause the version number to
> +compare as older than the previous version.
> +This happens if an update is reverted, if upstream's numbering scheme changes
> +completely, or if their usual scheme does not align with the one used by
> +.Ox .
>  A version style marker, of the form
>  .Sq v0 ,
>  .Sq v1 ...
>  can be appended to the version number (after the patch level)
>  to denote the new numbering scheme.
> -See
> +This marker is added by setting
>  .Ev EPOCH
> -in
> +in the port Makefile and it takes precedence over the regular package 
> version.
> +See
>  .Xr bsd.port.mk 5 .
>  .Pp
>  Flavored packages will also contain a list of flavors after the version

> Index: faq/ports/guide.html
> ===================================================================
> RCS file: /home/cvs/www/faq/ports/guide.html,v
> retrieving revision 1.89
> diff -u -p -r1.89 guide.html
> --- faq/ports/guide.html      28 Sep 2019 21:35:05 -0000      1.89
> +++ faq/ports/guide.html      26 Mar 2020 09:15:43 -0000
> @@ -1138,6 +1138,8 @@ If something unexpected happens and you 
>  upstream numbering changes completely so that the version number appears
>  to go backwards, you must use <code>EPOCH</code> to make sure pkg_add(1) sees
>  the package as a newer package.
> +This will add <code>v${EPOCH}</code> to <code>FULLPKGNAME</code> to form a 
> full
> +package-name conforming to packages-specs(7).
>  
>  <li>
>  If the package does not build, no bump is needed: changes to restore a port
> @@ -1153,6 +1155,11 @@ The package system uses a signature mech
>  is fully identified by its package names, plus the dependencies against
>  which it was built, plus the version numbers of all shared libraries it
>  contains.
> +
> +<li>
> +The version comparison ordering can be summarized as:
> +<code>0.1 &lt; 0.1p0 &lt; 0.2 &lt; 0.1v0 &lt; 0.1p0v0 &lt; 0.2v0 &lt; 
> 0.1v1</code>.
> +Check packages-specs(7) for more detailed information.
>  </ul>
>  
>  Part of the work will happen before the update itself.

Good enough for me, go for it.
There will probably be minor tweaks after the fact by our native speaker. :)

Reply via email to