Subject: RE: bug#25548: 25.1; Wrong Emacs version for Emacs 25.1.2 (?)

From: Drew Adams <[email-masked]>
Date: Fri, 27 Jan 2017 07:40:41 -0800 (PST)

> > > It's 25.1-2, that is a second release of version 25.1. The first one
> > > was compiled without optimization.
> > > https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00293.html
> >
> > Sorry, but I still don't understand.  What's the difference between
> > 25.1-2 and 25.1.2?
> 
> They are builds of the same codebase with different compiler options.

Really?  And just where is build 25.1.2 (that's a 2, not a 1)?
Does it exist somewhere?  I have 25.1-2, but you say that 25.1.2
has different compiler options from 25.1-2.

> > Do both 25.1-1 (whatever/wherever that is) and 25.1-2 correspond to
> > 25.1.1?
> 
> They both correspond to 25.1.  There's no 25.1.1 release; 25.1.1 is
> build #1 of the 25.1 release.

So presumably 25.1.2 should be build #2 of 25.1.  Where is 25.1.2?
Why 25.1-2 instead of 25.1.2?

> > Where does a user see the version number 25.1-2 (or whatever kind of
> > number it is, if it is not a version number)?
> 
> It's not a version number.  It's a name of the zip file, and was give
> "-2" to distinguish it from the original upload.

You just said it is also the build number - build #2 of 25.1.

> > How, from Emacs itself, does a user tell the difference between
> > 25.1-1 and 25.1-2?
> 
> The value of system-configuration-options should be different.

Show does a user or Lisp code see those options from _within_
Emacs?  Where is that information given to users?

> > These were the zip files downloaded, respectively:
> >
> >  emacs-25.1-x86_64-mingw32.zip
> >  emacs-25.1-2-x86_64-w64-mingw32.zip
> >
> > What does a user (or code) look for within Emacs, to tell the
> > difference?
> 
> See above.

See above.  _Within_ Emacs.  We have Lisp functions to
determine versions, but builds?  What are the functions
for that?

> > And are these releases?  Release candidates?  Pretest builds?
> 
> These are releases.  Pretests have a 4-field versions, like
> 25.1.91.2.  Release candidates have "RC" in the name of the
> zip file.

You said these are builds of the same release, _not_ releases.
You said, I think, that 25.1-2 and 25.1.2 are the same thing,
and they are the second build of release 25.1.

> > How to know?
> 
> See the node "Version Info" in the ELisp manual.

The only thing there (that I can see) that remotely refers
to something like "25.1.2" is the undescribed, unexplained
_output_ of `(emacs-version)':

"GNU Emacs 24.5.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.16)
           ^^^^^^
        of 2015-06-01"

Where in that node is a description of what "25.1.2" or
"25.1-2" means - e.g., that it means build #2 of release 25.1?

> > Is all this supposed to be clear to users?
> 
> This information is not necessarily of importance for users.  It is
> important in bug reports, which is why report-emacs-bug includes it.
> But inquisitive users can find the information in the Emacs manuals.

I haven't seen where.  I see such a label in passing, in the
output of `emacs-version', but it is unexplained, AFAICT.

> > At the mirrors where you download these things there is no
> > description/explanation.  (They don't even tell you what the
> > difference is between zips x86 and i86.)
> 
> The explanations you are looking for are in the README file that is
> right near the zip archives.

I don't think so.  That README is similar to (but also different
from) the README.W32 that is included in the zip file.  AFAICT,
neither file describes the 25.1-2 (or whatever other number)
that appears in the zip-file name.  Searching for "zip" in each
of those readme files does not find anything that talks about this. 

> > I realize that building and uploading Emacs for Windows is a volunteer
> > effort, and I'm grateful for it.  But can we perhaps make the zip naming
> > clearer?
> 
> Did you read the README file?

I've read them both, and searched them for "zip".  Have you taken
a look yourself, in light of the question of this bug report?
Can you point me to the passage that explains the 25.1-2 in the
zip name, which I've not been able to find?  Thx.

Another question is why we have two different designations
for build 2 of release 25.1: "25.1.2" and "25.1-2".  I think
you said that those represent the same thing.  If so, why
use two different representations, Occam wonders?  And if
not, what is the difference between them?