[AC21.5] Give precise version information in Help->About XEmacs

"Stephen J. Turnbull" <[email protected]> Wed, 22 Sep 2004 10:09:06 +0900
Newsgroups gmane.emacs.xemacs.patches,gmane.emacs.xemacs.design
Organization Graduate School of Systems and Information Engineering University of Tsukuba
Message-ID <[email protected]>
APPROVE COMMIT 21.5

Useful but incomplete, so not ready for 21.4 yet.

With major releases coming as far apart as they have, and beginning
users not knowing that M-x emacs-version gives a lot more information
than Help->About XEmacs does, this should improve bug reports and
general discussion of version information.

The date information is still going to be inaccurate.  I propose that
we create a variable `emacs-release-date' either in addition to or
instead of Steve Youngs's `xemacs-extra-name', which would be
maintained by the release engineer.  We could also include information
about the initial release ("XEmacs x.y.z of yyyy-mm-dd, in the XXXX
series of x.y releases from yyyy-mm"), but this would require either
an extra variable (for the initial release date) or rare updates,
which would be easy to overlook.  So I'm on balance not in favor of
it.

I think the second hunk, which contains only the minor release (not
the patch level), is correct, although I've arranged for it to be
generated at run time so the release engineer doesn't need to update
it.  The rationale is that in general major features and Lisp API
changes of the kind that get described in NEWS in principle should not
change between patch levels.

Index: lisp/ChangeLog
===================================================================
RCS file: /Users/steve/Software/Repositories/cvs.xemacs.org/XEmacs/xemacs/lisp/ChangeLog,v
retrieving revision 1.584
diff -u -r1.584 ChangeLog
--- lisp/ChangeLog	2004/09/15 08:30:25	1.584
+++ lisp/ChangeLog	2004/09/19 14:53:47
@@ -0,0 +1,6 @@
+2004-07-12  Stephen J. Turnbull  <[email protected]>
+
+	* about.el (about-xemacs):
+	Give more precise version info.
+	Compute version numbers.
+

Index: lisp/about.el
===================================================================
RCS file: /Users/steve/Software/Repositories/cvs.xemacs.org/XEmacs/xemacs/lisp/about.el,v
retrieving revision 1.59
diff -u -r1.59 about.el
--- lisp/about.el	2003/11/06 05:11:15	1.59
+++ lisp/about.el	2004/09/08 06:08:59
@@ -359,10 +364,19 @@
 		   :format "%t"
 		   :tag-glyph xemacs-logo)
     (widget-insert "\n")
-    (let* ((emacs-short-version (format "%d.%d"
-					emacs-major-version
-					emacs-minor-version))
-	   (emacs-about-version (format "version %s; April 2001"
+    (let* ((emacs-short-version
+	    (cond (emacs-beta-version (format "%d.%d.%d"
+					      emacs-major-version
+					      emacs-minor-version
+					      emacs-beta-version))
+		  (emacs-patch-level (format "%d.%d.%d"
+					     emacs-major-version
+					     emacs-minor-version
+					     emacs-patch-level))
+		  (t (format "%d.%d"
+			     emacs-major-version
+			     emacs-minor-version))))
+	   (emacs-about-version (format "version %s of September 2004"
 					emacs-short-version)))
       (widget-insert (about-center emacs-about-version))
       (widget-create 'link :help-echo "What's new in XEmacs"
@@ -398,9 +412,12 @@
 		   :button-prefix ""
 		   :button-suffix ""
 		   "advantages")
-    (widget-insert " over GNU Emacs.  In addition, XEmacs 21.4
-provides many ")
-    (widget-create 'link :help-echo "See a list of new features in XEmacs 21.4"
+    (widget-insert (format " over GNU Emacs.  In addition, XEmacs %d.%d
+provides many " emacs-major-version emacs-minor-version))
+    (widget-create 'link
+		   :help-echo (format
+			       "See a list of new features in XEmacs %d.%d"
+			       emacs-major-version emacs-minor-version)
 		   :action 'about-news
 		   :button-prefix ""
 		   :button-suffix ""


-- 
Graduate School of Systems and Information Engineering