From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Albert Newsgroups: gmane.emacs.bugs Subject: bug#19502: 24.4; Emacs 24.4 on windows: the contents of the system-configuration variable has changed, but its docstring has not. I prefer the behaviour described in the docstring. Date: Sun, 4 Jan 2015 18:17:14 +0100 Message-ID: References: <837fx2a68d.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a113cc160b874a5050bd6be8f X-Trace: ger.gmane.org 1420391902 26889 80.91.229.3 (4 Jan 2015 17:18:22 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 4 Jan 2015 17:18:22 +0000 (UTC) Cc: 19502@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Jan 04 18:18:15 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Y7ooe-0007oG-7g for geb-bug-gnu-emacs@m.gmane.org; Sun, 04 Jan 2015 18:18:12 +0100 Original-Received: from localhost ([::1]:57596 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y7ood-00031t-EE for geb-bug-gnu-emacs@m.gmane.org; Sun, 04 Jan 2015 12:18:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55110) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y7ooY-00031o-UC for bug-gnu-emacs@gnu.org; Sun, 04 Jan 2015 12:18:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y7ooU-0003B5-Lr for bug-gnu-emacs@gnu.org; Sun, 04 Jan 2015 12:18:06 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:55401) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y7ooU-0003Ax-Ic for bug-gnu-emacs@gnu.org; Sun, 04 Jan 2015 12:18:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Y7ooU-0002jr-81 for bug-gnu-emacs@gnu.org; Sun, 04 Jan 2015 12:18:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Albert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 04 Jan 2015 17:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 19502 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 19502-submit@debbugs.gnu.org id=B19502.142039184210472 (code B ref 19502); Sun, 04 Jan 2015 17:18:02 +0000 Original-Received: (at 19502) by debbugs.gnu.org; 4 Jan 2015 17:17:22 +0000 Original-Received: from localhost ([127.0.0.1]:36534 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Y7onp-0002ip-B1 for submit@debbugs.gnu.org; Sun, 04 Jan 2015 12:17:22 -0500 Original-Received: from mail-oi0-f44.google.com ([209.85.218.44]:35396) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Y7oni-0002ic-MJ for 19502@debbugs.gnu.org; Sun, 04 Jan 2015 12:17:19 -0500 Original-Received: by mail-oi0-f44.google.com with SMTP id a141so11564538oig.3 for <19502@debbugs.gnu.org>; Sun, 04 Jan 2015 09:17:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=emDOz8fmaKCt8oxZg/ugAyt2lrXIfOwJCzIWBDH1dCs=; b=kYfLdspvrpb8ppbSLmumNTL6nRVhu9fTU91d8lvnZNt2FOlh1iZxuoLqtuTosUuHwS v3g7C0EviK1wGjRaXn9cSoei7I6A0pVx+lYjcimCw3Mk6+l27JkUptWUShmJ05FgT2I8 /pP4sE2WWwwC30WClt+cZRuzeI63tPK9Vr7o46pK0pymkLnizSNB8p6MA2J9c50r2MMu nhEl+wuduvzLIBd/KDp18bTP/W/jcJ7yhmHSo7UcR1OJ5iu/ZCPd1UXypXP9Dwtc0Pln CWXQAJs2qonm7cupNt+PrN2CTXZRUsZumgBouS2g0r+Jta2uW3e4YMHSlyx2kCzfdZWu ZaEg== X-Received: by 10.202.62.6 with SMTP id l6mr47507483oia.59.1420391834217; Sun, 04 Jan 2015 09:17:14 -0800 (PST) Original-Received: by 10.60.121.101 with HTTP; Sun, 4 Jan 2015 09:17:14 -0800 (PST) In-Reply-To: <837fx2a68d.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:97988 Archived-At: --001a113cc160b874a5050bd6be8f Content-Type: text/plain; charset=UTF-8 Thank you! The function x-server-version indeed serves my needs. You are right, no need to have non-standard behaviour for the system-configuration variable. In hindsight it is even documented in an obvious place. However, the wording in the documentation of x-server-version and x-server-vendor is a little confusing (the relevant snippets are included at the end of this mail): - The elisp manual says "specifically about X displays". I would expect a word about mswindows here. - The docstring of x-server-version is compatible with that, but I would again expect a word about mswindows. - The docstring of x-server-vendor seems to ONLY mention W32 and Microsoft. I would expect more or less the same text as in the elisp manual with an extra remark about W32. Best regards, Albert. >From elisp manual: "Display Feature Testing": --8><--------------- These functions obtain additional information specifically about X displays. -- Function: x-server-version &optional display This function returns the list of version numbers of the X server running the display. The value is a list of three integers: the major and minor version numbers of the X protocol, and the distributor-specific release number of the X server software itself. -- Function: x-server-vendor &optional display This function returns the "vendor" that provided the X server software (as a string). Really this means whoever distributes the X server. When the developers of X labeled software distributors as "vendors", they showed their false assumption that no system could ever be developed and distributed noncommercially. --8><--------------- And in the docstring of both of them it says: --8><--------------- x-server-version is a built-in function in `w32fns.c'. (x-server-version &optional DISPLAY) Return the version numbers of the server of DISPLAY. The value is a list of three integers: the major and minor version numbers of the X Protocol in use, and the distributor-specific release number. See also the function `x-server-vendor'. The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. [forward] --8><--------------- --8><--------------- x-server-vendor is a built-in function in `w32fns.c'. (x-server-vendor &optional DISPLAY) Return the "vendor ID" string of the W32 system (Microsoft). The optional argument DISPLAY specifies which display to ask about. DISPLAY should be either a frame or a display name (a string). If omitted or nil, that stands for the selected frame's display. [back] --8><--------------- On 4 January 2015 at 16:57, Eli Zaretskii wrote: > > Date: Sun, 4 Jan 2015 10:55:14 +0100 > > From: Albert > > > > Evaluating (insert system-configuration) gives > > in emacs 24.3: i386-mingw-nt6.2.9200 > > in emacs 24.4: i686-pc-mingw32 > > > > The important difference here is the absence of the "nt6.2.9200" part in > > emacs 24.4. I have use cases that need to know the version of the > > windows emacs is currently running on. I would therefore prefer > > something like "i686-pc-mingw32-nt6.2.9200" if that is somehow better or > > more accurate than the original string from 24.3. Perhaps the "pc" part > > is not needed? > > The native MS-Windows build of Emacs now uses the same code as on > other platforms to compute this string, so the OS version is not > included. > > I fixed the doc string, thanks for pointing out the discrepancy. > > > In emacs 24.4, the docstring for the variable system-configuration is: > > "system-configuration is a variable defined in `C source code'. > > Its value is "i686-pc-mingw32" > > > > Documentation: > > Value is string indicating configuration Emacs was built for. > > On MS-Windows, the value reflects the OS flavor and version on which > > Emacs is running." > > > > I would prefer if this docstring would remain correct. > > > > But, while checking the contents of this entire mail, I see a version > > number of 6.3.9600 reported just a few lines below. > > Exactly. So in fact the OS version in old value was redundant, and no > information is lost with this change. > > > Could it be that the windows version reported in the > > system-configuration variable of emacs 24.3 is the version under > > which that emacs was build? > > No, it reported the version of the OS where Emacs was running. > > > So it seems the old emacs 24.3 behaviour is not following the > > docstring either. > > It will in the next release. > > > Still, I would prefer it if the variable could live up to its > > current docstring, if possible. > > Given that the information you want is still available, both in the > bug report and independently (see below), why would you need that > information in system-configuration as well? > > > If that is not possible, is there another way of asking emacs on > > which windows version it is running? Is it documented somewhere > > where I could find it? The bug-reporting code obviously manages to > > do it, but when I searched for alternatives yesterday I couldn't > > find any. > > You want x-server-version (a function), it is what report-emacs-bug > calls to get that info. > --001a113cc160b874a5050bd6be8f Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Thank you!

The function x-se= rver-version indeed serves my needs. You are right,
no need to ha= ve non-standard behaviour for the system-configuration
variable. = In hindsight it is even documented in an obvious
place. However, = the wording in the documentation of x-server-version
and x-server= -vendor is a little confusing (the relevant snippets are
included= at the end of this mail):

- The elisp manual says= "specifically about X displays". I would
expect a word= about mswindows here.

- The docstring of x-server= -version is compatible with that, but I
would again expect a word= about mswindows.

- The docstring of x-server-vend= or seems to ONLY mention W32 and=C2=A0
Microsoft. I would expect = more or less the same text as in the elisp=C2=A0
manual with an e= xtra remark about W32.

Best regards,
Albert.

From elisp manual: "Displ= ay Feature Testing":
--8><---------------
Th= ese functions obtain additional information specifically about X
= displays.

=C2=A0-- Function: x-server-version &= ;optional display
=C2=A0 =C2=A0 =C2=A0This function returns the l= ist of version numbers of the X server
=C2=A0 =C2=A0 =C2=A0runnin= g the display.=C2=A0 The value is a list of three integers: the
= =C2=A0 =C2=A0 =C2=A0major and minor version numbers of the X protocol, and = the
=C2=A0 =C2=A0 =C2=A0distributor-specific release number of th= e X server software
=C2=A0 =C2=A0 =C2=A0itself.

=C2=A0-- Function: x-server-vendor &optional display
= =C2=A0 =C2=A0 =C2=A0This function returns the "vendor" that provi= ded the X server
=C2=A0 =C2=A0 =C2=A0software (as a string).=C2= =A0 Really this means whoever distributes the
=C2=A0 =C2=A0 =C2= =A0X server.

=C2=A0 =C2=A0 =C2=A0When the develope= rs of X labeled software distributors as
=C2=A0 =C2=A0 =C2=A0&quo= t;vendors", they showed their false assumption that no system could
=C2=A0 =C2=A0 =C2=A0ever be developed and distributed noncommercial= ly.
--8><---------------

And in th= e docstring of both of them it says:

--8><--= -------------
x-server-version is a built-in function in `w32fns.= c'.

(x-server-version &optional DISPLAY)

Return the version numbers of the server of DISPLAY= .
The value is a list of three integers: the major and minor
version numbers of the X Protocol in use, and the distributor-specifi= c
release number.=C2=A0 See also the function `x-server-vendor= 9;.

The optional argument DISPLAY specifies which = display to ask about.
DISPLAY should be either a frame or a displ= ay name (a string).
If omitted or nil, that stands for the select= ed frame's display.

[forward]
--8>= ;<---------------

--8><---------------
x-server-vendor is a built-in function in `w32fns.c'.

(x-server-vendor &optional DISPLAY)

Return the "vendor ID" string of the W32 system (Microsoft)= .
The optional argument DISPLAY specifies which display to ask ab= out.
DISPLAY should be either a frame or a display name (a string= ).
If omitted or nil, that stands for the selected frame's di= splay.

[back]
--8><---------------=


On 4 January 2015 at 16:57, Eli Zaretskii <<= a href=3D"mailto:eliz@gnu.org" target=3D"_blank">eliz@gnu.org> wrote:
> Date: Sun, 4 Jan 2015 10:55= :14 +0100
> From: Albert <ab.for.list= s@gmail.com>
>
> Evaluating (insert system-configuration) gives
> in emacs 24.3: i386-mingw-nt6.2.9200
> in emacs 24.4: i686-pc-mingw32
>
> The important difference here is the absence of the "nt6.2.9200&q= uot; part in
> emacs 24.4. I have use cases that need to know the version of the
> windows emacs is currently running on. I would therefore prefer
> something like "i686-pc-mingw32-nt6.2.9200" if that is someh= ow better or
> more accurate than the original string from 24.3. Perhaps the "pc= " part
> is not needed?

The native MS-Windows build of Emacs now uses the same code as on
other platforms to compute this string, so the OS version is not
included.

I fixed the doc string, thanks for pointing out the discrepancy.

> In emacs 24.4, the docstring for the variable system-configuration is:=
> "system-configuration is a variable defined in `C source code'= ;.
> Its value is "i686-pc-mingw32"
>
> Documentation:
> Value is string indicating configuration Emacs was built for.
> On MS-Windows, the value reflects the OS flavor and version on which > Emacs is running."
>
> I would prefer if this docstring would remain correct.
>
> But, while checking the contents of this entire mail, I see a version<= br> > number of 6.3.9600 reported just a few lines below.

Exactly.=C2=A0 So in fact the OS version in old value was redundant, and no=
information is lost with this change.

> Could it be that the windows version reported in the
> system-configuration variable of emacs 24.3 is the version under
> which that emacs was build?

No, it reported the version of the OS where Emacs was running.

> So it seems the old emacs 24.3 behaviour is not following the
> docstring either.

It will in the next release.

> Still, I would prefer it if the variable could live up to its
> current docstring, if possible.

Given that the information you want is still available, both in the
bug report and independently (see below), why would you need that
information in system-configuration as well?

> If that is not possible, is there another way of asking emacs on
> which windows version it is running?=C2=A0 Is it documented somewhere<= br> > where I could find it?=C2=A0 The bug-reporting code obviously manages = to
> do it, but when I searched for alternatives yesterday I couldn't > find any.

You want x-server-version (a function), it is what report-emacs-bug
calls to get that info.

--001a113cc160b874a5050bd6be8f--