XEmacs -- Emacs: The Next Generation
English
German
Japanese
America
Asia
Australia
Europe
 
     Searching XEmacs
Quick Links About XEmacs Getting XEmacs Customizing XEmacs Troubleshooting XEmacs Developing XEmacs
      

XEmacs 21.5.29 "garbanzo" is released

goto announcement, summary, changes

To: xemacs-beta@xemacs.org
From: "Stephen J. Turnbull, XEmacs 21.5 Beta Engineer" <stephen@xemacs.org>
Subject: XEmacs 21.5.29 "garbanzo" is released.
Organization: The XEmacs Project



*          XEmacs 21.5.29 "garbanzo" is released.
      "garbanzo" is the thirtieth in the VEGETABLE series.


The successor to XEmacs 21.5.28 "fuki", "garbanzo" adds 8-bit ISO 8859-
conformant coding systems and "just-in-time" Unicode charsets for Mule
by Aidan Kehoe.  There are a bunch of small improvements such as
support for up to 26 mouse buttons and new icons for Windows users.
All of these are standards conforming but may be surprising or
inconvenient for some users:

- The ISO 8859 coding systems no longer translate ISO 2022 escape
  sequences.  Use iso-2022-n-with-esc instead.
- The "just-in-time" charsets do not correspond directly to any font,
  so expect glitches in display of these characters.  Bug reports and
  patches are very welcome.
- Ability to bind additional mouse buttons should not be a problem,
  even for the "fat-fingered", until they're actually used.  But there
  is potential for surprises.

The configure script has been rebuilt with autoconf 2.63.  This
version fixed a bug which can cause the script to hang or fail
incorrectly.  Unfortunately, it also enables spurious warnings like:

    configure: WARNING: unrecognized options: --with-sound,
    --with-dialogs, --with-widgets, --with-mule, --with-xim,
    --with-png, --with-optimization, --with-dynamic

You can ignore this warning, or suppress it with

    ./configure --enable-option-checking=no ...

There is also a horde of bug fixes and new Lisp APIs, along with a few
GNU syncs which should make some packages work better.  XEmacs 21.5.29
is primarily a "checkpoint" release to give users who prefer not to
live on the bleeding edge something to target.  XEmacs 21.5.29 is the
recommended version for all beta testers and 21.5 users who are not
participating actively in development, including all bug fixes and
features developed since the release of XEmacs 21.5.28 "fuki".

IMPORTANT: XEmacs has moved its repository for new development from
CVS to Mercurial, and changed hosts as well.  For technical reasons,
the "r21-5-latest-beta" tag is not available in Mercurial.  To get
the most recent beta, you need to specify its tag (for "garbanzo",
that's "r21-5-29").

If you're not familiar with the XEmacs Mercurial repository there's a
brief description in the "Availability" section below, and the full
details are available at

	     http://www.xemacs.org/Develop/hgaccess.html

If you haven't used Mercurial before, it's very easy to get used to.
It is a distributed version control system, which means that every
workspace is a branch is a repository.  You don't need to worry about
space; the whole history of XEmacs 21.5 takes up only about 20% of the
space that the source tree does, and about 10% of the combined source
tree and build products.  Even for a clone of the whole respository,
it's faster than CVS.  And once you have a clone, you can update very
quickly, and all operations like diff and log are local: no network
delays.  Finally, if you make changes to your workspace, you can just
check them in locally and Mercurial will handle merging and keeping
your versions separate from the "official" ones.


This is the development line.  The current series started with XEmacs
21.5.0 (an alias for XEmacs 21.4.0 "Solid Vapor", the first release in
the current stable line).  21.5 is the code base for introduction of
major new subsystems and fixes to design bugs that experience shows will
introduce instability.  So far the main effort has been on improved
support for Unicode, updates to the build infrastructure, and development
of new features in memory allocation.

For general information about XEmacs, the developers, and the user
community, see our home page,

		       http://www.xemacs.org/

* XEmacs 21.5.29 is "beta" software. 

The usual "no warranty" disclaimer (see etc/COPYING, sections 10 and 11)
applies.  At this point in time, it is the version that most developers
are using for their daily work.  However, it is certain that many bugs
remain and new ones will be introduced as development proceeds.  Be sure
to take care to safe your work often and follow a regular backup regime.

* Availability

Anonymous ftp:

             ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.5

See http://www.xemacs.org/Install/ for more information about building
from source.

If you already have a 21.5.28 source tree, a patchkit is available in
xemacs-21.5.28-21.5.29.patch.gz.  This does not update .elcs or .infos.
They will be rebuilt when you make XEmacs.  If you have an earlier
version, you can repeatedly apply patchkits.

Also, if you don't have the packages yet, see

        http://www.xemacs.org/Documentation/packageGuide.html.

Anonymous ftp:

             ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.5

See http://www.xemacs.org/Install/ for more information about building
from source.

If you already have a 21.5.28 source tree, a patchkit is available in
xemacs-21.5.28-21.5.29.patch.gz.  This does not update .elcs or .infos.
They will be rebuilt when you make XEmacs.  If you have an earlier
version, you can repeatedly apply patchkits.

Also, if you don't have the packages yet, see

        http://www.xemacs.org/Documentation/packageGuide.html.


Changes in XEmacs 21.5.29 "garbanzo"

goto announcement, summary, changes

ChangeLogs for XEmacs 21.5.29 "garbanzo"

goto announcement, summary, changes

ChangeLog Entries from ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2009-02-11  Jerry James  <james@xemacs.org>

	* config.guess:
	* config.sub: Update to 2009-02-03 versions.

2009-01-31  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.ac: Adopt Martin's suggestion of declaring argv as
	char ** (from <18643.15864.667930.542671@gargle.gargle.HOWL>).

2008-12-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.ac (xemacs_cc_cc_mismatch): Fix my syntax errors.

2008-12-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* .hgignore: Add terminating newline to .hgignore.

2008-12-27  Aidan Kehoe  <kehoea@parhasard.net>

	* configure.ac: Vladimir Ivanovic's change of 2008-09-17 was
	effective, but not correct. The original issue was that m4
	stripped [], so "char *v[]" in configure.ac became "char *v" in
	configure. His change to configure.ac rendered the declaration
	"char **v[]", which is effective but confusing; this change
	renders it "char **v".
	* configure: Regenerate.

2008-10-25  Stephen J. Turnbull  <stephen@xemacs.org>

	* INSTALL: Give better pointers to package documentation.

2008-10-25  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.ac (xemacs_cc_cc_mismatch): Improve g++ detection.

2008-09-17  Vladimir G. Ivanovic  <vladimir@acm.org>

	* configure:    Fixed two typos in args of main: char *v -> char **v
	* configure.ac: Fixed two typos in args of main: char *v -> char **v

2008-08-03  Mats Lidell  <matsl@xemacs.org>

	* configure.ac: Fix typo xft_gauge to xft_gauges

	* configure.ac (XE_COMPLEX_ARG): Use different defaults for
	with-xft and without-xft.

2008-07-06  Ville Skyttä  <scop@xemacs.org>

	* configure.ac (xe_fst):
	New, to replace m4_fst which disappeared in autoconf 2.62 (#370).
	(XE_EXPAND_COMPLEX_OPTIONS): Use xe_fst.

2008-05-12  Michael Sperber  <mike@xemacs.org>

	* configure.ac: 
	A number of the checks that tried to determine whether an explicit
	path was specified were wrong.
	Also, add an AC_SUBST for INFOPATH.

2008-05-07  Aidan Kehoe  <kehoea@parhasard.net>

	* configure.ac (XE_EXPAND_VARIABLE): Call AC_SUBST on
	SHEBANG_PATHNAME, as suggested by Michael Sperber in
	y9ly7aj1wfc.fsf@deinprogramm.de.
	* Makefile.in.in: Regenerate.
	* configure: Ditto.

2008-01-20  Aidan Kehoe  <kehoea@parhasard.net>

	* Makefile.in.in (SHEBANG_PROGNAME): 
	New variable; a symbol link to the XEmacs binary to tell it it
	should read a script from stdin. 
	* configure.ac (XE_EXPAND_VARIABLE): 
	Set SHEBANG_PROGNAME. 
	* configure: 
	Regenerate.

2008-04-01  Andreas Schwab  <schwab@suse.de>

	Thanks to Mike Fabian for posting a patch to the mainline, to Martin
	Buchholz for writing the ChangeLog, and to Aidan Kehoe for finding
	the 2003-01-27 ChangeLog.  Tested against Xaw3d. -- stephen

	* configure.ac (athena_3d):
	AC_CHECK_LIB must always take a function as
	argument, never a global variable.  Some linkers can tell the
	difference.  So change:
	threeDClassRec ==> XawSme3dComputeTopShadowRGB

2008-02-15  Marcus Crestani  <crestani@xemacs.org>

	* configure.ac: Look for all x86 machines to determine which write
	barrier to use on MacOSX.
	* configure : Rebuild.

2008-02-12  Jerry James  <james@xemacs.org>

	* install.sh: Rename to install-sh and update to latest FSF version.

2008-01-25  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.ac (--with-database): 'gnudbm' -> 'gdbm' in docstrings.

2008-01-25  Michael Sperber  <mike@xemacs.org>

	* Makefile.in.in:
	* configure.ac:
	* version.sh.in: Use Mercurial tip hash to identify version
	instead of old CVS method.

2008-01-17  Aidan Kehoe  <kehoea@parhasard.net>

	* configure.ac:
	If using a version of the gdbm library that sticks dbm_open in
	libgdbm_compat.so, also link to that library. 
	Correct a thinko with DBM version 4 checks. Both from Hans de
	Graaff, in 
	http://mid.xemacs.org/20050812092756.6850.qmail@graaff.xs4all.nl
	and
	http://mid.xemacs.org/pan.2007.06.24.10.10.57@gentoo.org; thank you
	Hans!
	* configure:
	Regenerate.

2008-01-01  Stephen J. Turnbull  <stephen@xemacs.org>

	* Makefile.in.in (mkpkgdir): Fix incorrect comment convention.

2007-12-26  Stephen J. Turnbull  <stephen@xemacs.org>

	* Makefile.in.in (mkpkgdir): Ensure only one late package directory.

2007-12-26  Stephen J. Turnbull  <stephen@xemacs.org>

	* Makefile.in.in (check-available-packages): Say where to install.
	(mkpkgdir): 

2007-12-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* Makefile.in.in (mkpkgdir):
	(check-available-packages):
	(install-bootstrap-packages):
	(install-nonmule-packages):
	(install-all-packages):
	New targets supporting bundled packages.

	* .hgignore: Ignore tarballs in etc/bundled-packages/.

2007-12-08  Jerry James  <james@xemacs.org>

	* config.guess:
	* config.sub: Sync with the latest upstream versions.

2007-12-12  Aidan Kehoe  <kehoea@parhasard.net>

	* configure.ac :
	Check for FcConfigGetRescanInterval, FcConfigSetRescanInterval.
	* configure :
	Rebuild.

2007-08-27  Mike Sperber  <mike@xemacs.org>

	* configure.ac: Try to use pkg-config for finding Xft includes and
	libraries.  If that fails, search also in /usr/local.

2007-08-12  Mike Sperber  <mike@xemacs.org>

	* Makefile.in.in (datarootdir): Add.
	* configure.ac (infodir): Now in terms of $(datarootdir).
	(mandir): Ditto, making it usually point to $(prefix)/share/man,
	conformant with the GNU Coding Standards.

2007-07-31  Mike Sperber  <mike@xemacs.org>

	* configure.ac: Don't divert `share' to `lib' for datadir.
	Also, define AC_DATAROOTDIR_CHECKED to shut up autoconf.

ChangeLog Entries from etc/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2008-08-10  Aidan Kehoe  <kehoea@parhasard.net>

	* HELLO: Add a coding cookie, now the UTF-8 sequences prevent the
	file being recognised as ISO-2022-7 automatically.

2008-08-05  Aidan Kehoe  <kehoea@parhasard.net>

	* HELLO: Encode the Arabic using UTF-8 sequences, not ISO-8859-6. 

2008-02-21  Stephen J. Turnbull  <stephen@xemacs.org>

	* README: Add descriptions of Daniel Polansky's icons.

2008-02-21  Daniel Polansky  <danielpolansky@gmail.com>

	Two images for one icon for XEmacs, one 16x16 and 32x32.
	Also, a Microsoft Windows icon file is attached.
	Itemized:
	- 16x16 icon in PNG
	- 32x32 icon in PNG
	- Both bundled as a Microsoft Windows icon.

	The images are modeled on XEmacs violet logotype, as found at
	http://www.xemacs.org/. The images are copyright (c) 2005 by
	Daniel Polansky, and licensed under GNU General Public Licence V2
	or later at your option.

	* xemacs-X-16.png:
	* xemacs-X-32.png:
	* xemacs-X.ico:
	New files.

2008-02-20  Stephen J. Turnbull  <stephen@xemacs.org>

	* README: Give more accurate descriptions of image files.

2007-12-26  Stephen J. Turnbull  <stephen@xemacs.org>

	* bundled-packages/README: Document restriction on --with-late-packages.

2007-12-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* bundled-packages/README: Documentation for bundled packages.
	* bundled-packages/test.sh: Test suite for bundled packages.

2007-11-22  Vin Shelton  <acs@xemacs.org>

	* photos/vin.png:
	* photos/vinm.png: Updated.

2004-12-03  Shyamal Prasad  <shyamal@member.fsf.org>

	* xemacs.1: Now describe $HOME/.xemacs/init.el as the
        preferred init file. Fixed excessive space insertion 
        in the description of the '-vanilla' option

2007-09-19  Didier Verna  <didier@lrde.epita.fr>

	* photos/dv.png: Remove.
	* photos/didier.png: Add.

2007-07-28  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode/unicode-consortium/BIG5.TXT:
	Don't map any characters to U+FFFD; for round trip compatibility,
	map those that were mapped to U+FFFD to the Unicode private use
	area.

ChangeLog Entries from lib-src/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2008-12-27  Aidan Kehoe  <kehoea@parhasard.net>

	* make-docfile.c (main): Allow more than one -d argument, followed
	by a directory to change to.
	(put_filename): Don't strip directory information; with previous
	change, allows retrieval of Lisp function and variable origin
	files from #'built-in-symbol-file relative to lisp-directory. 
	(scan_lisp_file): Don't add an extraneous newline after the file
	name, put_filename has added the newline already. 

2008-05-21  Aidan Kehoe  <kehoea@parhasard.net>

	* make-mswin-unicode.pl:
	Check %WindowsSdkDir%, %MSSddk% for the Windows header files too. 

2008-05-14  Vin Shelton  <acs@xemacs.org>

	* winclient.c:  Create CONNECT_RETRIES and increase retry count
	from 5 to 10.

2008-05-13  Aidan Kehoe  <kehoea@parhasard.net>

	* make-docfile.c (scan_file):
	Pass READ_BINARY to scan_lisp_file, scan_c_file; avoids an
	assertion failure with Visual C++ 2005 Express Edition, and is
	logically more coherent, given that our Lisp and C files are saved
	with Unix line endings. 

2007-08-27  Mike Sperber  <mike@xemacs.org>

	* config.values.in (datarootdir):  Add.

2007-08-12  Mike Sperber  <mike@xemacs.org>

	* Makefile.in.in (datarootdir): Add.

2007-05-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* etags.c: Sync to pot_etags_version 17.33.
	Reverts part of 2007-03-24 patch: no longer displays
	pot_etags_version in usage message.

2007-05-22  Jerry James  <james@xemacs.org>

	* ellcc.c (do_init_mode): Plug memory leak.

ChangeLog Entries from lisp/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2009-04-01  Stephen J. Turnbull  <stephen@xemacs.org>

	* lisp-mnt.el:  Update FSF address.
	Improve header comment.
	Remove long-obsolete commented code.
	(lm-crack-address, lm-report-bug):
	Add #### remarks calling for use of superior external functions.
	(lm-synopsis):
	Convert interactive spec to use "F" specifier.
	Adjust docstring to reality.

2009-03-08  Stephen J. Turnbull  <stephen@xemacs.org>

	* cus-edit.el (custom-face-prompt): Fix typo and improve
	readability in comment.

2009-03-01  Aidan Kehoe  <kehoea@parhasard.net>

	* x-compose.el: 
	Document an XIM bug, and how one might work around it. 
	(define-compose-map): 
	Revise this macro, call it with compose-caron-map,
	compose-macron-map, compose-breve-map, compose-dot-map,
	compose-doubleacute-map, compose-ogonek-map, compose-hook-map,
	compose-horn-map as well as the previous existing maps. 
	(compose-map): 
	Add entries for caron, macron, doubleacute, ogonek, breve and
	abovedot to this map. 
	Add an assert, this code assumes that a non-Mule build has no
	character codes above U+00FF. 
	Incorporate all the precomposed Latin characters in
	UnicodeData.txt that we can into the maps, deciding at runtime on
	which exactly depending on whether this is a non-Mule or a Mule
	build.
	Remove a commented-out old X11 bug workaround. 
	Use #'flet instead of defun + unintern for
	#'alias-colon-to-doublequote.
	Correct #'electric-diacritic to work with the keyboard macro
	versions of the maps. 
	(compose-help): 
	This has been turned off since 1994; no-one appears to have
	noticed, since the normal help mechanism offers similar
	functionality and is actually maintained. Removed entirely. 
	Remove a superflous setting of a default value for ctl-arrow. 
	* x-init.el (x-initialize-compose): 
	Support the new dead key maps we just added to x-compose.el with
	autoloads here. 

2009-02-22  Aidan Kehoe  <kehoea@parhasard.net>

	* bytecomp.el (byte-compile-force-escape-quoted): New variable,
	used to force `byte-compile-insert-header' to treat the output as
	having characters above ?\xFF. 
	(byte-compile-from-buffer): 
	If the compiled output contains characters above ?\xFF, and
	byte-compile-dynamic-docstrings or byte-compile-dynamic is non-nil
	(or we're using an inappropriate coding system) recompile the
	file, turning off the dynamic features and using a more
	appropriate header. 
	(byte-compile-insert-header): Pay attention to
	byte-compile-force-escape-quoted. 

2009-02-18  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (check-coding-systems-region): 
	Return null on success, not t. See
	http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=1723

2009-02-17  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-cmds.el (finish-set-language-environment): 
	Correct this function, don't try to format non-control characters
	with ^ followed by their value plus (char-int ?@).

2009-02-17  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el (unicode-query-coding-region): 
	Avoid eval-when-compile where that gives incorrect results when
	compiled on a non-Mule XEmacs but run on a Mule XEmacs.  Fixes
	problems seen by
	20a807210902131835o2f25930apaffabb6b62a95e5f@mail.gmail.com ,
	thank you Vin!
	(An equivalent way to get the efficiency of the eval-when-compile
	would be to provide two defvars, evaluated at dump time, but this
	code will be in C soon enough, and we can use the relevant
	preprocessor constants there.)	

2009-02-02  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el (describe-char-unicodedata-file):
	Back out Stephen's change of 2009-01-01, 16c9098dd3d2; do a
	Mercurial merge, add this ChangeLog entry.
	See also http://mid.xemacs.org/8763jbsyr7.fsf@xemacs.org .

2009-02-02  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el (macintosh): 
	Add GNU Emacs' name for this coding system as an alias. 

2009-02-13  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-cmds.el (init-mule-at-startup): 
	Actually use leim-list-file-name, don't load a hardcoded
	leim-list.el in this function. 

2009-02-11  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (query-coding-string): 
	Correct the order of arguments passed to #'query-coding-region. 
	(unencodable-char-position): 
	Handle string offsets correctly, they're one less than buffer
	offsets. Handle START and END correctly if passed a string. 

2009-02-08  Aidan Kehoe  <kehoea@parhasard.net>

	* cl-macs.el (delete-duplicates): 
	Add a new compiler macro, inlining this function if it's called
	with a literal #'eq or #'equal test arguments and no other
	keywords.
	* font-lock.el (font-lock-unique): 
	Remove this function. 
	* font-lock.el (font-lock-prepend-text-property): 
	(font-lock-append-text-property): 
	Use #'delete-duplicates instead of #'font-lock-unique.
	* font.el (font-unique):
	Remove this function.
	* font.el (font-combine-fonts-internal): 
	(x-font-families-for-device): 
	(xft-font-families-for-device): 
	(ns-font-families-for-device): 
	Use #'delete-duplicates instead of #'font-unique.
	* fontconfig.el (fc-delete-duplicates): 
	* fontconfig.el (fc-filter): 
	Remove these functions. 	
	* fontconfig.el (fc-find-available-font-families): 
	Replace #'fc-delete-duplicates with #'delete-duplicates,
	#'fc-filter with #'delete-if-not.
	* format.el (format-make-relatively-unique): 
	Document that this is equivalent to #'nset-exclusive-or with a
	test of #'equal.

2009-02-07  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el (describe-text-sexp):
	pp is in packages, use cl-prettyprint instead. 
	* mule/mule-coding.el (make-8-bit-generate-helper): 
	Don't uselessly bind args-out-of-range, thank you the byte
	compiler. 	
	* mule/mule-coding.el (8-bit-fixed-query-coding-region): 
	Don't uselessly bind previous-fail, thank you the byte compiler.
	* tty-init.el (make-device-early-tty-entry-point): 
	Set make-device-early-tty-entry-point-called-p, not 
	pre-tty-win-initted, thank you the byte compiler. 
	* unicode.el (unicode-query-coding-region): 
	Don't uselessly bind invalid-sequence-p, thank you the
	byte-compiler. 

2009-02-07  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (query-coding-clear-highlights): 
	Rename the BUFFER argument to BUFFER-OR-STRING, describe it as
	possibly being a string in its documentation. 
	(default-query-coding-region): 
	Add a new IGNORE-INVALID-SEQUENCESP argument, document that this
	function does not support it. 
	Bind case-fold-search to nil, we don't want this to influence what the
	function thinks is encodable or not.
	(query-coding-region):
	Add a new IGNORE-INVALID-SEQUENCESP argument, document what it
	does; reflect this new argument in the associated compiler macro. 
	(query-coding-string): 
	Add a new IGNORE-INVALID-SEQUENCESP argument, document what it
	does. Support the HIGHLIGHT argument correctly.
	* unicode.el (unicode-query-coding-region): 
	Add a new IGNORE-INVALID-SEQUENCESP argument, document what it
	does, implement this. Document a potential problem. 
	Use #'query-coding-clear-highlights instead of reimplementing it
	ourselves. 
	Remove some debugging messages. 
	* mule/arabic.el (iso-8859-6): 
	* mule/cyrillic.el (iso-8859-5): 
	* mule/greek.el (iso-8859-7): 
	* mule/hebrew.el (iso-8859-8): 
	* mule/latin.el (iso-8859-2): 
	* mule/latin.el (iso-8859-3): 
	* mule/latin.el (iso-8859-4): 
	* mule/latin.el (iso-8859-14): 
	* mule/latin.el (iso-8859-15): 
	* mule/latin.el (iso-8859-16): 
	* mule/latin.el (iso-8859-9): 
	* mule/latin.el (windows-1252): 
	* mule/mule-coding.el (iso-8859-1): 
	Avoid the assumption that characters not given an explicit mapping 
	in these coding systems map to the ISO 8859-1 characters 
	corresponding to the octets on disk; this makes it much more 
	reasonable to implement the IGNORE-INVALID-SEQUENCESP argument to 
	query-coding-region. 
	* mule/mule-cmds.el (set-language-info): 
	Correct the docstring. 
	* mule/mule-cmds.el (finish-set-language-environment): 
	Treat invalid Unicode sequences produced from 
	invalid-sequence-coding-system and corresponding to control 
	characters the same as control characters in redisplay. 
	* mule/mule-cmds.el: 
	Document that encode-coding-char is available in coding.el 
	* mule/mule-coding.el (make-8-bit-generate-helper): 
	Change to return the both the encode-program generated and the 
	relevant non-ASCII charset; update the docstring to reflect this. 
	* mule/mule-coding.el 
	(make-8-bit-generate-encode-program-and-skip-chars-strings): 
	Rename this function; have it return skip-chars-strings as well as 
	the encode program. Have these skip-chars-strings use ranges for 
	charsets, where possible. 
	* mule/mule-coding.el (make-8-bit-create-decode-encode-tables): 
	Revise this to allow people to specify explicitly characters that 
	should be undefined (= corresponding to keys in 
	unicode-error-default-translation-table), and treating unspecified 
	octets above #x7f as undefined by default. 
	* mule/mule-coding.el (8-bit-fixed-query-coding-region): 
	Add a new IGNORE-INVALID-SEQUENCESP argument, implement support 
	for it using the 8-bit-fixed-invalid-sequences-skip-chars coding 
	system property; remove some debugging messages. 
	* mule/mule-coding.el (make-8-bit-coding-system): 
	This function is dumped, autoloading it makes no sense. 
	Document what happens when characters above #x7f are not
	specified, implement this. 
	* mule/vietnamese.el: 
	Correct spelling. 

2009-02-04  Aidan Kehoe  <kehoea@parhasard.net>

	* help.el: 
	(describe-function-1): 
	* byte-optimize.el: 
	Remove any reference to mocklisp as an active technology.

2009-02-04  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el:
	Specify windows-1250 as the invalid-sequence-coding-system for the
	iso-8859-2 languages; actually *use* the
	invalid-sequence-coding-system for German and the other iso-8859-1
	language environments.

2009-02-04  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (force-coding-system-equivalency): 
	Document this macro and the motivation for it. 

2009-01-15  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (force-coding-system-equivalency):
	Move three functions that we don't want to advertise to being
	anonymous lambdas instead.
	* glyphs.el :
	Remove #'define-constant-glyph and some functions it uses, replace
	the latter with anonymous lambdas and the former and its uses with
	a call to loop.
	Do the same with #'define-obsolete-pointer-glyph and the functions
	it uses.
	(init-glyphs): Untern this symbol once the associated function has
	been called; it's only needed at dump time, not at runtime.

2009-02-04  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (query-coding-region): 
	Revert this to being a defun, add a compiler macro without
	needless binding. 
	(query-coding-string): 
	Correct a bug here, string indices are zero- not one-based. 
	* mule/general-late.el (unicode-query-coding-skip-chars-arg):
	Correct the algorithm used to initialise this variable. 

2009-02-04  Aidan Kehoe  <kehoea@parhasard.net>

	* help.el (describe-function-1): 
	Distinguish between special forms and subrs; don't bind
	autoload-file, #'symbol-file returns it like any other function
	file name.

2009-01-31  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-cmds.el (finish-set-language-environment): 
	Treat control characters specially in the
	invalid-sequence-coding-system handling, display them using the
	caret notation. 

2009-01-31  Aidan Kehoe  <kehoea@parhasard.net>

	* frame.el (display-graphic-p): 
	Call #'display-device on the DISPLAY argument, ensuring that the
	argument to #'device-on-window-system-p is correct.

2009-01-18  Ville Skyttä  <scop@xemacs.org>

	* font.el (font-*-p): Docstring spelling fix.
	(set-font-*-p): Ditto.

	* modeline.el (modeline-3d-p): Fix docstring copy-pasto.

2009-01-13  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-cmds.el (set-language-environment-coding-systems): 
	Fix a cosmetic bug; the relationship between
	file-name-coding-system and the file-name coding system alias
	established in coding.el wasn't being maintained. See Katsumi
	Yamaoka's comment in http://mid.xemacs.org/b4m4p03bt43.fsf@jpl.org .

2009-01-11  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el: Correct a comment, we now have #'syntax-after in
	syntax.el.
	(subr-arity): New.
	Docstring and API taken initially from GNU's data.c, revision
	1.275, GPLv2.

2009-01-01  Stephen J. Turnbull  <stephen@xemacs.org>

	* descr-text.el (describe-char-unicodedata-file):
	Nuke build-breaking computation from defcustom initializer.

2008-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* make-docfile.el: 
	Use absolute source file names when checking if DOC is out of
	date, don't use relative paths that may not be related to the
	current directory.	

2008-12-28  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (query-coding-region): 
	(query-coding-string): 
	Make these defsubsts, they're short enough and they're called
	explicitly rarely enough that it make some sense. The alternative
	would be compiler macros that avoid the binding of the arguments. 
	(unencodable-char-position): 
	Document where the docstring and API are from. 
	Correct a special case for zero--check-argument-type returns nil
	when it succeeds, we can't usefully chain its result in an and
	here. 
	(check-coding-systems-region): New. API taken from GNU; docstring
	and implementation are independent. 
	(encode-coding-char): 
	Add an optional third argument, as used by recent GNU. Document
	the origen of the docstring. 
	(default-query-coding-region): Add a short docstring to the
	non-Mule implementation of this function. 
	* unicode.el: 
	Don't set the query-coding-function property for unicode coding
	systems if we're on non-mule. Unintern
	unicode-query-coding-region, unicode-query-coding-skip-chars-arg
	in the same context. 

2008-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* frame.el (display-mouse-p): 
	(display-popup-menus-p): 
	(display-images-p): 
	(display-selections-p): 
	(display-visual-class): 
	Make all these functions more general, do not hard code device
	type symbols where that is inappropriate. 

2008-12-28  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (default-query-coding-region): 
	Declare using defun*, so we can #'return-from to it on
	encountering a safe-charsets value of t. Comment out a few
	debug messages. 
	(query-coding-region): 
	Correct the docstring, it deals with a region, not a string.
	(unencodable-char-position): 
	Correct the implementation for non-nil COUNT, special-case a zero
	value for count, treat it as one. Don't rely on dynamic scope when
	calling the main lambda.
	* unicode.el (unicode-query-coding-region): 
	Comment out some debug messages here. 
	* mule/mule-coding.el (8-bit-fixed-query-coding-region): 
	Comment out some debug messages here. 

	* code-init.el (raw-text): 
	Add a safe-charsets property to this coding system. 
	* mule/korean.el (iso-2022-int-1): 
	* mule/korean.el (euc-kr): 
	* mule/korean.el (iso-2022-kr): 
	Add safe-charsets properties for these coding systems. 
	* mule/japanese.el (iso-2022-jp): 
	* mule/japanese.el (jis7): 
	* mule/japanese.el (jis8): 
	* mule/japanese.el (shift-jis): 
	* mule/japanese.el (iso-2022-jp-1978-irv): 
	* mule/japanese.el (euc-jp): 
	Add safe-charsets properties for all these coding systems. 
	* mule/iso-with-esc.el: 
	Add safe-charsets properties to all the coding systems in
	here. Comment on the downside of a safe-charsets value of t for
	iso-latin-1-with-esc.
	* mule/hebrew.el (ctext-hebrew): 
	Add a safe-charsets property for this coding system. 
	* mule/devanagari.el (in-is13194-devanagari): 
	Add a safe-charsets property for this coding system. 
	* mule/chinese.el (cn-gb-2312): 
	* mule/chinese.el (hz-gb-2312): 
	* mule/chinese.el (big5): 
	Add safe-charsets properties for these coding systems. 
	* mule/latin.el (iso-8859-14): 
	Add an implementation for this, using #'make-8-bit-coding-system.
	* mule/mule-coding.el (ctext): 
	* mule/mule-coding.el (iso-2022-8bit-ss2): 
	* mule/mule-coding.el (iso-2022-7bit-ss2): 
	* mule/mule-coding.el (iso-2022-jp-2): 
	* mule/mule-coding.el (iso-2022-7bit): 
	* mule/mule-coding.el (iso-2022-8): 
	* mule/mule-coding.el (escape-quoted): 
	* mule/mule-coding.el (iso-2022-lock): 
	Add safe-charsets properties for all these coding systems. 

2008-12-27  Aidan Kehoe  <kehoea@parhasard.net>

	* loadhist.el (symbol-file): 
	Use #'defun*, not #'defun, to allow the checks for autoloaded
	functions and variables to call #'return-from correctly. Use
	#'return-from instead of #'return throughout the function. 

2008-12-27  Aidan Kehoe  <kehoea@parhasard.net>

	* loadup.el (load-history): 
	Add the contents of current-load-list to load-history before
	clearing it. Move the variable declarations earlier in the file to
	a format understood by make-docfile.c. 
	* custom.el (custom-declare-variable): Add the variable's symbol
	to the current file's load history entry correctly, don't use a
	cons. Eliminate a comment that we don't need to worry about, we
	don't need to check the `initialized' C variable in Lisp.
	* bytecomp.el (byte-compile-output-file-form): 
	Merge Andreas Schwab's pre-GPLv3 GNU change of 19970831 here;
	treat #'custom-declare-variable correctly, generating the
	docstrings in a format understood by make-docfile.c.
	* loadhist.el (symbol-file): Correct behaviour for checking
	autoloaded macros and functions when supplied with a TYPE
	argument. Accept fully-qualified paths from
	#'built-in-symbol-file; if a path is not fully-qualified, return
	it relative to lisp-directory if the filename corresponds to a
	Lisp file, and relative to (concat source-directory "/src/")
	otherwise.
	* make-docfile.el (preloaded-file-list): 
	Rationalise some let bindings a little. Use the "-d" argument to
	make-docfile.c to supply Lisp paths relative to lisp-directory,
	not absolutely. Add in loadup.el explicitly to the list of files
	to be processed by make-docfile.c--it doesn't make sense to add it
	to preloaded-file-list, since that is used for purposes of
	byte-compilation too. 

2008-12-22  Aidan Kehoe  <kehoea@parhasard.net>

	* loadhist.el (symbol-file): 
	Add support for differentiating between variables and functions to
	#'symbol-file. 
	* help.el (describe-function-1): 
	(describe-variable): 
	Call #'symbol-function explicitly with a 'defun or 'defvar
	argument, depending on whether we're looking for a variable or a
	function. 
	* cus-face.el (custom-declare-face): 
	Record information about the face in the load history; code taken
	from GNU, pre-GPLv3 revision 1.45.

2008-10-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* bytecomp.el (byte-compile-file): Protect encoding from latin-unity.

2008-10-28  Stephen J. Turnbull  <stephen@xemacs.org>

	* version.el (xemacs-betaname): Fix docstring typo.  (Thanks, Ville!)

2008-09-30  Stephen J. Turnbull  <stephen@xemacs.org>

	* version.el (xemacs-betaname):
	Document relation to other version variables.

2008-09-27  Stephen J. Turnbull  <stephen@xemacs.org>

	* subr.el (with-string-as-buffer-contents):
	Document initial position of point.

2008-08-31  Aidan Kehoe  <kehoea@parhasard.net>

	* window.el (only-window-p): New.
	Check if WINDOW is the only window in some context, normally its
	frame.
	(one-window-p): 
	Implemented this in terms of #'only-window-p, calling it on the
	selected window. 
	(window-buffer-height): Uncomment this, make it work. 
	(count-screen-lines): Support a BUFFER argument. 
	(fit-window-to-buffer): Uncomment this, correct its implementation
	to work with XEmacs. 
	* help.el (temp-buffer-resize-mode): New. Name taken from GNU,
	implementation our own.
	* (resize-temp-buffer-window): New. GNU-compatible alias for
	#'shrink-window-if-larger-than-buffer.
	* dumped-lisp.el (preloaded-file-list): Move easy-mmode before
	help, now that the latter uses #'define-minor-mode.
	* frame.el: Point to #'temp-buffer-resize-mode in a comment.
	Some of this code is from GNU; help.el CVS version 1.327 of
	2007-03-21, window.el CVS version 1.122, of 2007-06-24. Both these
	are GPLV2 or later. 

2008-08-27  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el (skip-chars-quote): 
	Correct the implementation, following the docstring of
	#'skip-char-forward more closely rather than the documentation of
	character classes in the Lispref. 

2008-08-23  Aidan Kehoe  <kehoea@parhasard.net>

	* custom.el: Move #'custom-variable-p to C, since it's now called
	from #'user-variable-p. 

2008-08-23  Aidan Kehoe  <kehoea@parhasard.net>
	
	* mule/mule-coding.el (make-8-bit-coding-system): 
	* mule/general-late.el (posix-charset-to-coding-system-hash): 
	Use #'skip-chars-quote as appropriate. 

2008-08-09  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el (skip-chars-quote): New.
	Given STRING, return a string that means that all characters in
	STRING will be skipped when passed to #'skip-chars-forward,
	#'skip-chars-backward. 

2008-08-09  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/cyril-util.el: Remove. Use the version in packages instead.

2008-08-08  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el: 
	* mule/mule-cmds.el: 
	* mule/latin.el: 
	* mule/cyrillic.el: 
	Rework the various identifiers using error-sequence to use
	invalid-sequence instead.

2008-08-05  Aidan Kehoe  <kehoea@parhasard.net>

	* specifier.el (current-display-table): Initialise this here, not
	in x-init.el, since we want it even on non-X builds to use the
	support for displaying Unicode error sequences according to the
	current locale.
	* mule/mule-cmds.el (set-language-info): 
	Document error-sequence-coding-system, used to describe how to
	display characters that are not valid Unicode on disk. 
	* mule/mule-cmds.el (finish-set-language-environment): 
	Implement error-sequence-coding-system. 
	* unicode.el (unicode-error-sequence-warning-face): 
	New face, to make it possible to distinguish invalid Unicode
	sequences from the characters given by the valid Unicode
	sequences. 
	* mule/cyrillic.el ("Russian"): 
	("Ukrainian"): 
	("Bulgarian"): 
	("Belarusian"): 
	("Cyrillic-ALT"): Add support for error-sequence-coding-system for
	all these languages.
	* mule/latin.el: 
	Add support for error-sequence-coding-system for the
	Latin-alphabet language environments.

2008-08-05  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/iso-with-esc.el (greek-iso-8bit-with-esc): 
	(arabic-iso-8bit-with-esc): 
	Add these two here. Move the implementation of the
	'arabic-iso8859-6  character set here, with commentary on why that
	is reasonable. 
	* mule/arabic.el (iso-8859-6): 
	Add iso-8859-6, windows-1256 implementations using
	make-8-bit-coding-system. Remove our non-standard Mule character
	sets. 
	* unicode.el (load-unicode-tables): Remove Arabic since it's no
	longer dumped.
	* mule/mule-msw-init-late.el: Remove Arabic.
	* mule/mule-category.el (predefined-category-list): Remove
	Arabic. 

2008-07-26  Aidan Kehoe  <kehoea@parhasard.net>

	* x-init.el (x-initialize-compose): 
	Rewrite to use #'loop, as does similar code in x-win-sun.el,
	x-win-xfree86.el. Locally bind function-key-map to the correct
	value for the device's console.
	* x-win-xfree86.el (x-win-init-xfree86): 
	Locally bind function-key-map to the correct value for the
	device's console.
	* x-win-sun.el (x-win-init-sun): 
	Locally bind function-key-map to the correct value for the
	device's console.

2008-07-20  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el (describe-char-unicode-data): 
	Correct three calls to #'error; it doesn't take #'message style
	format strings and arguments.

2008-07-19  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el (describe-property-list): Move the (require
	'hyper-apropos) call to top level, this isn't the only function
	that uses the relevant face. 
	(describe-char): Wrap the Unihan field descriptions if they are
	longer than the windows width minus 50.
	Rename the created buffer to reflect the character's position as
	well as its value. 

2008-07-07  Aidan Kehoe  <kehoea@parhasard.net>

	Patch to make it up to the device-specific code whether
	various Lisp functions should be called during device creation,
	not relying on the startup code to decide this. Also, rename
	initial-window-system to initial-device-type (which makes more
	sense in this scheme), always set it. 

	* startup.el (command-line):
	Use initial-device-type, not initial-window-system; just call
	#'make-device, leave the special behaviour to be done the first
	time a console type is initialised to be decided on by the
	respective console code.

	* x-init.el (x-app-defaults-directory): Declare that it should be
	bound.
	(x-define-dead-key): Have the macro take a DEVICE argument.
	(x-initialize-compose): Have the function take a DEVICE argument,
	and use it when checking if various keysyms are available on the
	keyboard.
	(x-initialize-keyboard): Have the function take a DEVICE argument,
	allowing device-specific keyboard initialisation.
	(make-device-early-x-entry-point-called-p): New.
	(make-device-late-x-entry-point-called-p): New.  Rename
	pre-x-win-initted, x-win-initted.
	(make-device-early-x-entry-point): Rename init-pre-x-win, take the
	call to make-x-device out (it should be called from the
	device-creation code, not vice-versa).
	(make-device-late-x-entry-point): Rename init-post-x-win, have it
	take a DEVICE argument, use that DEVICE argument when working out
	what device-specific things need doing. Don't use
	create-console-hook in core code.
	* x-win-xfree86.el (x-win-init-xfree86): Take a DEVICE argument;
	use it. 
	* x-win-sun.el (x-win-init-sun): Take a DEVICE argument; use it. 
	* mule/mule-x-init.el: Remove #'init-mule-x-win, an empty
	function. 

	* tty-init.el (make-device-early-tty-entry-point-called-p): New.
	Rename pre-tty-win-initted.
	(make-device-early-tty-entry-point): New.
	Rename init-pre-tty-win.
	(make-frame-after-init-entry-point): New.
	Rename init-post-tty-win to better reflect when it's called. 

	* gtk-init.el (gtk-early-lisp-options-file): New.
	Move this path to a documented variable. 
	(gtk-command-switch-alist): Wrap the docstring to fewer than 79
	columns. 
	(make-device-early-gtk-entry-point-called-p): New.
	(make-device-late-gtk-entry-point-called-p): New.
	Renamed gtk-pre-win-initted, gtk-post-win-initted to these.
	(make-device-early-gtk-entry-point): New. 
	(make-device-late-gtk-entry-point): New.
	Renamed init-pre-gtk-win, init-post-gtk-win to these.
	Have make-device-late-gtk-entry-point take a device argument, and use
	it; have make-device-early-gtk-entry-point load the GTK-specific
	startup code, instead of doing that in C. 
	(init-gtk-win): Deleted, functionality moved to the GTK device
	creation code. 	
	(gtk-define-dead-key): Have it take a DEVICE argument; use this
	argument. 
	(gtk-initialize-compose): Ditto. 

	* coding.el (set-terminal-coding-system): 
	Correct the docstring; the function isn't broken. 

2008-06-29  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el (describe-char-unicode-data): 
	Don't leak the Unihan database handle when looking up non-Han
	characters. 

2008-06-04  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el (describe-property-list): 
	#'require hyper-apropos, since we use hyper-apropos-face

2008-05-25  Aidan Kehoe  <kehoea@parhasard.net>

	* descr-text.el: New.
	Taken from GNU's GPLV2 version of 2007-02-14, with modifications
	for XEmacs support and extensions for Unihan.txt support and
	db/dbm caches.
	* simple.el (what-cursor-position): 
	Support an optional prefix argument, as does GNU, calling
	#'describe-char to giving more detail on the character at point,
	notably from UnicodeData and (in our case, optionally) Unihan.txt.
	* syntax.el (syntax-after): 
	Make this available for the sake of #'describe-char. 
	* mule/mule-cmds.el (iso-2022-control-alist):
	Make this available, for the sake of #'encoded-string-description
	and #'describe-char. 
	* mule/mule-cmds.el (encoded-string-description):
	Make this available, for the sake of #'describe-char.
	* unicode.el (unicode-error-default-translation-table): 
	Make this a char table of type generic, not of type char. Makes it
	possible to have the relevant logic in #'describe-char reasonably
	clear; also, and this is undocumented, makes it much easier to
	implement #'frob-unicode-errors-region. I should document this,
	and revise #'frob-unicode-errors-region. 

2008-05-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-coding.el (make-8-bit-choose-category): 
	Merge my change of 2008-05-14 to the query-coding-region code.

2008-05-14  Stephen J. Turnbull  <stephen@xemacs.org>

	* subr.el (add-to-list): Fix Aidan's last commit.

2008-05-14  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el (add-to-list): Implement the same logic with a more
	concise syntax; thank you Stephen, in 
	http://mid.xemacs.org/87ablomdwx.fsf@uwakimon.sk.tsukuba.ac.jp .

2008-02-25  bpalmer  <bpalmer@gmail.com>

	* subr.el(add-to-list): add support for `compare-fn' to sync with
	emacs.

2008-05-14  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-coding.el (make-8-bit-choose-category):=20
	Control-1 characters extend from #x80 to #x9F (inclusive),
	not from #x80 to #xBF.

2008-05-13  Aidan Kehoe  <kehoea@parhasard.net>

	* printer.el (generic-print-region): 
	(generic-print-buffer): 
	Use #'valid-device-type-p instead of #'valid-specifier-tag-p to
	check if the msprinter device is available, now that msprinter is
	always available as a specifier tag. 

2008-05-11  Aidan Kehoe  <kehoea@parhasard.net>

	* disp-table.el (make-display-table): 
	Update the example code to make it more general, and more
	compatible with GNU. Also, I previously said #xFF when I meant
	?\xFF; correct this.
	* mule/cyril-util.el (standard-display-cyrillic-translit): 
	Make the selection of the default language more sensible; change
	the API a little to make a sensible default Cyrillic language
	available, checking current-language-environment. 

2007-07-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/cyril-util.el:
	* mule/cyril-util.el (cyrillic-encode-koi8-r-char): Removed.
	* mule/cyril-util.el (cyrillic-encode-alternativnyj-char):
	Removed.  No-one uses these functions in google.com/codesearch,
	GNU have a comment doubting their utility, and their
	implementation is trivial. 
	* mule/cyril-util.el (cyrillic-language-alist):
	Reformatted.
	* mule/cyril-util.el (standard-display-table)): Removed. It wasn't
	used anyway. 
	* mule/cyril-util.el (standard-display-cyrillic-translit):
	Rewrite it to work with character tables as display tables, and
	not to abort with an error.

2007-07-21  Aidan Kehoe  <kehoea@parhasard.net>

	* disp-table.el:
	* disp-table.el (make-display-table): Moved earlier in the file in
	a weak attempt at making syncing with GNU easier. 
	* disp-table.el (frob-display-table):
	Autoload it, accept TAG-SET, for editing specifiers.
	* disp-table.el (describe-display-table):
	Have it handle character sets. 	
	* disp-table.el (standard-display-8bit-1):
	* disp-table.el (standard-display-8bit):
	* disp-table.el (standard-display-default-1):
	* disp-table.el (standard-display-ascii):
	* disp-table.el (standard-display-g1):
	* disp-table.el (standard-display-graphic):
	* disp-table.el (standard-display-underline):
	* disp-table.el (standard-display-european):
	Rework them all to use put-char-table, remove-char-table instead
	of aset. Limit standard-display-g1, standard-display-graphic to
	TTYs; have standard-display-underline work on X11 too. 
	
	* font.el (font-caps-display-table):
	Use put-char-table instead of aset when editing a display table.
	* x-init.el:
	* x-init.el (tab):
	Create the initial display table as a char-table, not a vector. 

2008-01-20  Aidan Kehoe  <kehoea@parhasard.net>

	* startup.el (command-line-do-script): New.
	(command-switch-alist): Use command-line-do-script.
	New argument, compatible with GNU; --script or -script says "treat
	the following argument as a file to load in batch mode".

2008-05-07  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el (windows-1250): Add the Central European Windows
	coding system. 
	* mule/mule-win32-init.el: Don't use the Windows-specific CP1250
	implementation, rely on that in latin.el instead. 

2008-05-11  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el (query-coding-clear-highlights): 
	New function--clear any face information added by
	`query-coding-region'. 
	(default-query-coding-region): Use it.

2008-04-13  Henry S. Thompson <ht@inf.ed.ac.uk>, Mike Sperber  <mike@xemacs.org>

	* window-xemacs.el (save-window-excursion/mapping,
	set-window-configuration/mapping): Add.  These function return an
	alist mapping the window objects from the original window
	configuration to the window objects corresponding to them in the
	restored configuration.
	(set-window-configuration): 
	(saved-window): 
	(root-window->saved-window): 
	(really-set-window-configuration): 
	(restore-saved-window): Record the mapping for above functions.

2008-04-12  Henry S. Thompson <ht@inf.ed.ac.uk>

	* window-xemacs.el (real-split-window, real-delete-window): Define
	these to the original definitions of `split-window' and
	`delete-window', and use them in the window-configuration code to
	make sure it doesn't get affected by advice to these functions.
	
2008-04-10  Aidan Kehoe  <kehoea@parhasard.net>

	* help.el (describe-function-1): 
	Rely on #'symbol-file to tell which file an autoloaded function
	belongs to, don't special-case them.

2008-03-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* custom.el (custom-theme-reset-internal): Fix call to get (symbol
	and property were reversed).

2008-03-12  Mike Sperber  <mike@xemacs.org>

	* window-xemacs.el (restore-saved-window): Restore window
	parameters right after splitting, rather than after traversing the
	other children.

2008-03-07  Michael Sperber  <mike@xemacs.org>

	* gnuserv.el (gnuserv-temp-file-regexp): Quote the temp-directory
	part.

2008-03-05  Didier Verna  <didier@xemacs.org>

	Fix auto-formatting of comments in auto-fill-mode.

	* newcomment.el (comment-indent): Don't insert a space at bol.
	* newcomment.el (comment-indent-new-line): Bind
	block-comment-start to comment-start in order to preserve the
	formatting of previous comment lines.

2008-03-05  Didier Verna  <didier@xemacs.org>

	Ease customization of face(s) under point.
	Suggested by Andreas Rohler.

	* cus-edit.el (custom-face-prompt): New (interactive call). Offer
	a prefix for choosing a face amongst those at point instead of all
	of them.
	* cus-edit.el (customize-face-1): New. Factor out from the
	functions below.
	* cus-edit.el (customize-face): Use it.
	* cus-edit.el (customize-face-other-window): Ditto.

2008-02-16  Michael Sperber  <mike@xemacs.org>

	* autoload.el (autoload-make-autoload-operators,
	autoload-make-autoload-complex-operators): Move autoload operator
	definitons to autoload-operators.el in xemacs-base package.
	Continue to work with older packages.

2008-02-03  Aidan Kehoe  <kehoea@parhasard.net>

	* iso8859-1.el (ascii-case-table):
	Correct the order of the arguments to #'put-case-table-pair.

2008-01-25  Michael Sperber  <mike@xemacs.org>

	* build-report.el (build-report-version-file-regexp): Adjust to
	handle Mercurial hash.

2008-01-21  Aidan Kehoe  <kehoea@parhasard.net>

	* info.el (Info-suffix-list):
	Support LZMA compression, as used--oddly--by Mandriva Linux.
	* coding.el (decode-coding-string): 
	(encode-coding-string): Accept GNU's NOCOPY argument for
	these. Todo; write compiler macros to use it. 
	(query-coding-warning-face): New face, to show unencodable
	characters. 
	(default-query-coding-region-safe-charset-skip-chars-map): 
	New variable, a cache used by #'default-query-coding-region. 
	(default-query-coding-region): Default implementation of
	#'query-coding-region, using the safe-charsets and safe-chars
	coding systemproperties. 
	(query-coding-region): New function; can a given coding system
	encode a given region? 
	(query-coding-string): New function; can a given coding system
	encode a given string? 
	(unencodable-char-position): Function API taken from GNU; return
	the first unencodable position given a string and coding system. 
	(encode-coding-char): Function API taken from GNU; return CHAR
	encoded using CODING-SYSTEM, or nil if CODING-SYSTEM would trash
	CHAR. 
	((unless (featurep 'mule)): Override the default
	query-coding-region implementation on non-Mule. 
	* mule/mule-coding.el (make-8-bit-generate-helper): Eliminate a
	duplicate comment. 
	(make-8-bit-choose-category): Simplify implementation. 
	(8-bit-fixed-query-coding-region): Implementation of
	#'query-coding-region for coding systems created with
	#'make-8-bit-coding-system. 
	(make-8-bit-coding-system): Initialise the #'query-coding-region
	implementation for these character sets. 
	(make-8-bit-coding-system): Ditto for the compiler macro version
	of this function. 
	* unicode.el (unicode-query-coding-skip-chars-arg): New variable,
	used by unicode-query-coding-region, initialised in
	mule/general-late.el. 
	(unicode-query-coding-region): New function, the
	#'query-coding-region implementation for Unicode coding systems. 
	Initialise the query-coding-function property for the Unicode
	coding systems to #'unicode-query-coding-region.
	* mule/mule-charset.el (charset-skip-chars-string): New
	function. Return a #'skip-chars-forward argument that skips all
	characters in CHARSET. 
	(map-charset-chars): Function synced from GNU, modified to work
	with XEmacs. Map FUNC across the int value charset ranges of
	CHARSET. 

2008-01-21  Aidan Kehoe  <kehoea@parhasard.net>

	* info.el (Info-suffix-list): 
	Support LZMA compression, as used--oddly--by Mandriva Linux. 

2008-01-17  Mike Sperber  <mike@xemacs.org>

	* files.el (insert-directory): Bind `coding-system-for-read' to
	the `file-name' coding system.  (Previously, the default ended up
	being undecided, which doesn't work well for UTF-8-based locales,
	for example.)

2008-01-16  Aidan Kehoe  <kehoea@parhasard.net>

	* keydefs.el (global-map):
	Bind '(shift delete) to #'kill-primary-selection, as described by
	Glynn Clements in
	16434.49191.47038.991206@cerise.nosuchdomain.co.uk of 2004-02-08.

2008-01-14  Jerry James  <james@xemacs.org>

	* font-lock.el (font-lock-add-keywords): Adapt to differences in
	Emacs and XEmacs compiled font-lock lists.
	* font-lock.el (font-lock-remove-keywords): Ditto.
	* font-lock.el (font-lock-set-defaults-1): Make changes specified
	by font-lock-keywords-alist and font-lock-removed-keywords-alist.

2008-01-14  Aidan Kehoe  <kehoea@parhasard.net>

	* bytecomp.el (byte-compile-output-file-form):
	Bind print-gensym-alist to nil, as we do within
	byte-compile-output-docform.

2008-01-04  Michael Sperber  <mike@xemacs.org>

	* code-files.el (insert-file-contents):
	(load): Don't call `substitute-in-file-name' on the file name.

2008-01-03  Aidan Kehoe  <kehoea@parhasard.net>

	* cus-edit.el (custom-save-all):
	If the directory containing the custom file doesn't exist, try to
	create it. Fixes Nick's Crabtree's bug of
	5fb265820712140145w512fa3bbh355cf76f7e2cf792@mail.gmail.com ;
	thank you Nick.
	* menubar-items.el (default-menubar):
	In the code to edit the user's init file, try to create the
	containing directory if it doesn't exist.

2008-01-02  Aidan Kehoe  <kehoea@parhasard.net>

	* gtk-init.el (init-post-gtk-win):
	Trust the X11 code to give us decent default fonts.

2008-01-02  Aidan Kehoe  <kehoea@parhasard.net>

	* x-iso8859-1.el: Removed.
	* gtk-iso8859-1.el: Removed.
	These haven't been used in a year and a half. No need to keep them
	around.

2008-01-02  Mike Sperber  <mike@xemacs.org>

	* minibuf.el (mouse-read-file-name-1): Use `window-height' instead
	of `frame-height' to be consistent with `split-window''s
	calculations.  Bind `window-min-height' for the whole thing to
	avoid geometry problems with the buttons window.

2008-01-02  Mike Sperber  <mike@xemacs.org>

	* minibuf.el (mouse-read-file-name-1): Make the buttons in the
	dialog frame occupy `window-min-height' lines to avoid problems
	when the window configuration changes---as it does with
	`resize-minibuffer-mode'.

2007-12-31  Aidan Kehoe  <kehoea@parhasard.net>

	* menubar-items.el (default-menubar):
	Byte compile the specified lambdas. Correct some compile time
	warnings uncovered by this.
	* menubar-items.el (tutorials-menu-filter):
	If a language environment doesn't have an associated POSIX locale
	specified--which indicates we don't want it used except by those
	who know what they're doing--don't show its tutorial in the menu.
	* behavior.el (behavior-menu-filter):
	Byte compile the lambdas in the generated menu.

2007-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* iso8859-1.el: (provide 'iso8859-1) again, because one file uses
	it in the packages.

2007-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el (with-case-table): New.
	Idea and implementation taken from GNU's code of April 2007,
	before GPL V3 was implied. Thank you GNU.
	* iso8859-1.el (ascii-case-table): New.
	Idea taken from GNU.
	* iso8859-1.el :
	Change Jamie's implicit compile-time call to a macro literal into
	something comprehensible to and maintainable by mortals, using to
	cl.el's #'loop.
	* iso8859-1.el (ctl-arrow):
	Initialise it to something more comprehensible.

2007-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* loadhist.el (symbol-file):
	Accept a new TYPE argument, compatible with GNU, saying
	whether function or variable definitions should be searched for.
	Implement the functionality for autoloads, handling TYPE
	correctly.
	Pass the TYPE argument to built-in-symbol-file correctly.
	Document that TYPE is not implemented for non-autoloaded Lisp
	definitions. Our load-history doesn't have the relevant metadata.

2007-12-25  Aidan Kehoe  <kehoea@parhasard.net>

	* glyphs.el (init-glyphs):
	Revert part of Didier's 2007-10-15 commit, which broke
	#'make-image-specifier with string arguments, and more noticeably
	truncation-glyph, continuation-glyph, octal-escape-glyph,
	control-arrow-glyph.

2007-12-23  Mike Sperber  <mike@xemacs.org>

	* font.el (xft-font-create-object): Use
	`fc-pattern-get-or-compute-size' instead of
	`fc-pattern-get-size'.

	* fontconfig.el (fc-pattern-get-or-compute-size): Add.

2007-12-22  Stephen J. Turnbull  <stephen@xemacs.org>

	Factor out lists of operators specially treated by `make-autoload'.

	* autoload.el (autoload-make-autoload-operators): New.
	(autoload-make-autoload-complex-operators): New.
	(make-autoload): Use them.

2007-12-18  Mike Sperber  <mike@xemacs.org>

	* autoload.el (process-one-lisp-autoload): Insert <immediate> into
	the section header for immediate autoloads, to make sure the
	upstream doesn't think there aren't any autoloads at all.

2007-12-19  Mike Sperber  <mike@xemacs.org>

	* startup.el (ask-about-user-init-file-migration-p): Factored out
	check.
	(maybe-migrate-user-init-file):
	(migrate-user-init-file): Don't do a backup of ~/.emacs anymore.
	Instead, make only a manual adjustment of the file, if at all,
	i.e. don't go through customize magic anymore.
	(unmigrate-user-init-file): Don't use customize to set
	`load-home-init-file' anymore.
	(set-load-home-init-file): Add; performs the modification
	previously done through customize.
	(unmigrate-user-init-file): Use `set-load-home-init-file' instead
	of customize.
	(command-line-1): Only wait for the first event if we're not going
	to ask about migration.

2007-12-18  Aidan Kehoe  <kehoea@parhasard.net>

	* help.el (describe-function-1):
	Give details of bindings for commands, taking into account
	global-window-system-map and global-tty-map when bindings differ
	compared to the global map.

2007-12-17  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el (integer-to-bit-vector): New.
	* subr.el (bit-vector-to-integer): New.
	Provide naive implementations using the Lisp reader for these.

2007-12-14  Aidan Kehoe  <kehoea@parhasard.net>

	* process.el (substitute-env-vars):
	Merge an example from GNU's docstring.
	* process.el (setenv):
	Pass nil as the default abbrev table to the #'read-from-minibuffer
	call, instead of passing the current value of the variable. Bug
	introduced by an incorrect sync from GNU by Ben; reported by
	Thomas Mittelstaedt in 47626712.40609@cadenas.de.

	Document the #'set-time-zone-rule call when TZ is set. Push the
	old value on to the beginning of setenv-history. (Both merged from
	GNU.) Document that we don't do the coding-system frobbing at this
	level that GNU does.

	Provide a commented-out, sample implementation of GNU's
	#'environment; document why I think we shouldn't include it.

2007-12-11  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el :
	Specify tutorial-coding-system using dotted cons notation, since
	it's not a list. Prevents an error in help-with-tutorial for these
	languages.

2007-12-09  Aidan Kehoe  <kehoea@parhasard.net>

	* abbrev.el (write-abbrev-file):
	Write FILE using escape-quoted, as a coding system. Add a coding
	cookie to specify exactly what coding system was used
	(escape-quoted is aliased to binary on non-Mule). Thank you for
	the bug report, Uwe Brauer.

	This bug would have been resolved ages ago if we had merged
	Dave Love's 2002 changes from GNU. Nope, I didn't merge the whole
	file when doing this.

2007-12-09  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el (load-unicode-mapping-tables):
	Call #'set-default-unicode-precedence wrapped with
	#'declare-fboundp, to avoid warnings on non-Mule builds.

	* unicode.el (ccl-encode-to-ucs-2):
	* unicode.el (unicode-error-sequence-regexp-range):
	* unicode.el (frob-unicode-errors-region):
	* unicode.el (unicode-error-translate-region):
	Unconditionally provide these functions and variables at top
	level in the code, to make them available to make-docfile. For the
	INITVALUE args to #'defvar, conditionalise on (featurep 'mule);
	ditto for the code that tests the lookup tables and provides the
	WGL4 characters as jit-ucs-charset-0 characters.

	Unintern the function and variable symbols if (featurep 'mule) is
	not true, so their function definitions and so on get garbage
	collected at dump time in non-Mule builds.

	* obsolete.el (add-menu-item):
	* obsolete.el (add-menu):
	* obsolete.el (add-menu):
	* obsolete.el (package-get-download-menu):
	Provide these functions at top level, in order to make them
	available to make-docfile.c, which has trouble interpreting byte
	code. Unintern their symbols if the menubar feature is not
	available, which means they will be garbage collected on
	non-menubar builds.

2007-12-09  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el:
	Create clones of the English language environment with UTF-8 and
	Windows-1252 as the associated coding system, for Joachim Schrod's
	use case of f8q022$3o3$1@sea.gmane.org.

2007-12-04  Aidan Kehoe  <kehoea@parhasard.net>

	* keydefs.el:
	Bind mouse wheel movements by default, to a lambda that calls the
	autoloaded #'mwheel-install and then #'mwheel-scroll with the
	appropriate event.

2007-12-07  Vin Shelton  <acs@xemacs.org>

	* about.el: Minor bio update to test hg repository.

2007-12-05  Aidan Kehoe  <kehoea@parhasard.net>

	* code-files.el (write-region):
	Use a more concise and probably less confusing docstring from
	Stephen. See
	87ve84323s.fsf@uwakimon.sk.tsukuba.ac.jp.

	Not following his suggestion of keeping the CODING-SYSTEM name for
	the last argument, given that that would make reworking the
	body of the necessary, and that I introduced a short-lived bug the
	last time I did that.

2007-12-03  Aidan Kehoe  <kehoea@parhasard.net>

	* bytecomp.el (byte-compile-file-form-custom-declare-variable):
	Instead of using a keyword argument that's incompatible with 21.4,
	modify the byte compiled init code to change the variable's
	standard-value property itself.

2007-12-04  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/iso-with-esc.el:
	* mule/iso-with-esc.el ('iso-latin-1-with-esc): New.
	Provide the variable-length rarely-used ISO 2022 compatible coding
	systems for Latin (that is, iso-8859-[1-16]) again, to address
	Stephen's veto.

2007-12-04  Aidan Kehoe  <kehoea@parhasard.net>

	* autoload.el (make-autoload):
	Support auto-autoloads for coding systems.

2007-12-01  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-coding.el (iso-8859-1):
	* mule/latin.el (iso-8859-2):
	* mule/latin.el (iso-8859-3):
	* mule/latin.el (iso-8859-4):
	* mule/cyrillic.el (iso-8859-5):
	* mule/greek.el (iso-8859-7):
	* mule/hebrew.el (iso-8859-8):
	* mule/latin.el (iso-8859-9):
	* mule/latin.el (iso-8859-15):
	* mule/latin.el (iso-8859-16):
	Move the various ISO 8859 coding systems away from the ISO 2022
	implementation to a #'make-8-bit-coding-system implementation;
	this has the handy side-effect of adressing most of the
	unification problems the old implementation had.

	Add aliases for GNU compatibility.

	Still no warning on the imminent corruption of data, though. I'm
	working on it.
	* mule/greek.el (windows-1253):
	Unconditionally provide this coding system.

2007-12-01  Aidan Kehoe  <kehoea@parhasard.net>

	* bytecomp.el (byte-compile-output-file-form):
	Bind print-gensym to a cons, to tell the Lisp printer not to clear
	print-gensym-alist on exit from #'print. This is appropriate
	because #'byte-compile-output-file-form may be called multiple
	times for a given output file, and re-using the
	#1=#:... placeholders in that context is inappropriate.

2007-11-29  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-coding.el (make-8-bit-generate-helper):
	Don't use 128 as a magic constant, instead make a let-binding to
	in in the eval-when-compile clause, and pass that bound value
	through to the run-time code. Fixes a bug where the compile-time
	and run-time code didn't share this value.
	* mule/mule-coding.el (make-8-bit-coding-system):
	Mark the coding systems created by this code as such, for the sake
	of automated testing of their round-trip compatibility.

2007-11-28  Aidan Kehoe  <kehoea@parhasard.net>

	* simple.el:
	* simple.el (xemacs-default-composefunc-dont-nag): New.
	Variable to be bound when using the xemacs-default-composefunc
	and when nagging should be avoided (notably when submitting bug
	report).

2007-11-28  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-cmds.el (create-variant-language-environment):
	Set tutorial-coding-system to correspond to the original coding
	system when creating the variant language environment.

2007-11-27  Aidan Kehoe  <kehoea@parhasard.net>

	* bytecomp.el (byte-compile-file-form-custom-declare-variable):
	Byte compile the default value for #'custom-declare-variable (and
	thence defcustom) calls; pass the uncompiled value as the value of
	a :default keyword, to be used in the customize UI if the byte
	compiled init value differs from the non byte compiled init
	value.

	GNU don't do these things. The advantages of doing it our way are
	a) the byte compilation warnings and b) since our interpreter is
	proportionately so much slower than theirs, we are penalised more
	strongly when we interpret code, especially when
	#'custom-declare-variable calls cluster, as they tend to do.
	* cus-edit.el (customize-changed-options):
	Wrap the #'interactive call to be less than 80 columns.
	Wrap the code to less than 80 columns.
	* cus-edit.el (custom-variable-menu):
	* cus-edit.el (custom-face-menu):
	* cus-edit.el (custom-group-menu):
	Expose the lambda expressions in these variables to the byte
	compiler.
	* custom.el (custom-initialize-changed):
	Correct the docstring; change the defun to defsubst, since calls
	to this are only done from one function, and calls to that
	function cluster.
	* custom.el (custom-declare-variable):
	Document the :default argument to #'custom-declare-variable;
	implement it.

2007-11-27  Aidan Kehoe  <kehoea@parhasard.net>

	* byte-optimize.el (byte-optimize-featurep):
	Remove a useless let binding that was a hangover from an earlier
	version of the code. Eliminates a byte-compile time warning.

2007-11-22  Vin Shelton  <acs@xemacs.org>

	* about.el (about-hacker-contribution): Updated my bio.

2007-11-15  Aidan Kehoe  <kehoea@parhasard.net>

	* code-files.el (write-region):
	Call #'find-coding-system on the (possible) coding system argument
	before checking it with #'coding-system-p; the latter function
	gives false results when passed coding system names as symbols.

	Preserve the old order of determination of the coding system
	better.

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el (unicode-error-default-translation-table):
	* unicode.el (unicode-error-sequence-regexp-range):
	* unicode.el (frob-unicode-errors-region):
	Make these variables and the single function available to
	make-docfile, by moving them to the start of the line. This
	conflicts with normal indentation of Lisp, unfortunately.

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* subr.el (string-to-sequence):
	* subr.el (string-to-list):
	* subr.el (string-to-vector):
	(append STRING nil) is faster than (mapcar #'identity STRING),
	(vconcat STRING) is faster than (mapcar #'identity STRING). Change
	from GNU.

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* code-files.el (write-region):
	Provide a new arg, CODING-SYSTEM-OR-MUSTBENEW, for compatibility
	both with GNU (where it has the MUSTBENEW meaning) and earlier
	XEmacs code (where it has the CODING-SYSTEM meaning).
	* files.el:
	* files.el (normal-backup-enable-predicate):
	* files.el (auto-save-file-name-transforms):
	Correct the docstrings of #'normal-backup-enable-predicate,
	#'auto-save-file-name-transforms.
	* files.el (make-temp-file): New.
	Merge from GNU.
	* subr.el:
	Document that #'make-temp-name is now in files.el.

2007-11-08  Aidan Kehoe  <kehoea@parhasard.net>

	* cus-edit.el (custom-save-all):
	Merge Jason Spiro's fix of
	c241693f0710021645g642f145n5925c7a35e7b2c58@mail.gmail.com , to
	avoid corruption of the custom-set-variables and custom-set-fonts
	calls in ~/.emacs if XEmacs doesn't understand any part of the
	syntax of ~/.emacs .

2007-10-31  Mike Sperber  <mike@xemacs.org>

	* autoload.el (make-autoload): Add `defclass' and `defmethod' as
	defmacro-like operators.  This is need to enable compilation of
	packages that depend on eieio.

2007-10-26  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/general-late.el:
	Now that all the dumped coding systems are available, decode
	Installation-string using the value for
	Installation-file-coding-system at dump time.

2007-10-26  Aidan Kehoe  <kehoea@parhasard.net>

	* dumped-lisp.el (preloaded-file-list):
	Allow version.el to be compiled.
	* help.el (describe-installation):
	Use and-boundp instead of (and (boundp ...); don't decode
	Installation-string. Call #'error with a DATUM arg.
	* loadup.el:
	* loadup.el (Installation-string): Removed.
	Moved to version.el.
	* loadup.el (really-early-error-handler):
	Move the initialization of Installation-string to version.el too.
	* update-elc-2.el (update-elc-ignored-files):
	* update-elc-2.el (batch-update-elc-2):
	Remove version.el from the ignored files; if Mule is available,
	always recompile it, since Installation-file-coding-system depends
	on relatively complex Mule code.
	* update-elc.el (unbytecompiled-lisp-files):
	Remove version.el.
	* version.el:
	* version.el (Installation-file-coding-system): New.
	Variable reflecting the native coding system at build time, to
	better work out Installation-string.
	* version.el (Installation-string): New.
	Moved from loadup.el; documented in more detail.

2007-10-26  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el:
	"pl" is the normal POSIX language code for Polish, not "po"; if a
	tutorial is provided, set tutorial-coding-system explicitly based
	on the language environment coding system, to override confusion
	that can arise with the variant language environments.

2007-10-01  Aidan Kehoe  <kehoea@parhasard.net>

	* byte-optimize.el:
	* byte-optimize.el (byte-optimize-ever-present-features): New.
	* byte-optimize.el (byte-optimize-featurep): New.
	Optimise calls to (featurep 'xemacs) to t, since our byte code
	refuses to run on GNU Emacs. Also optimises away checks for cl,
	cl-extra, cl-19 and backquote, a conservative list of those
	features that have been available in every XEmacs build since the
	last time our opcodes changed.

2007-10-14  Aidan Kehoe  <kehoea@parhasard.net>

	* coding.el:
	Use raw-text, not no-conversion for iso-8859-1 on non-Mule;
	preserves the line ending autodetection, but doesn't do coding
	system autodetection. Thank you Stephen.

2007-10-15  Didier Verna  <didier@xemacs.org>

	* glyphs.el (init-glyphs): Use more sensible image conversion
	rules for tty consoles (don't inline images, explicitely recognize
	more image types). Avoid images on stream consoles altogether.

2007-10-13  Aidan Kehoe  <kehoea@parhasard.net>

	* cmdloop.el (yes-or-no-p):
	Only call #'yes-or-no-p-dialog-box if it's bound. Eliminates a
	compile-time warning; should not actually avoid any run-time
	errors.
	* coding.el:
	* coding.el ('automatic-conversion): Removed.
	On non-Mule builds, alias 'iso-8859-1 to 'no-conversion, not
	'undecided, since the latter does coding system autorecognition
	that is useless and leads to stack overflows without Mule. Delete
	'iso-8859-2 as an alias on non-Mule
	* faces.el (face-font-instance):
	Only call get-charset if it's bound.
	* faces.el (xpm-color-symbols):
	Only modify xpm-color-symbols if it's bound.
	* map-ynp.el (map-y-or-n-p):
	Check that #'get-dialog-box-response is bound before calling it.
	* menubar.el:
	List #'menu-split-long-menu as an autoload, for those builds that
	don't use it at runtime but nonetheless have to compile code that
	uses it.
	* minibuf.el (mouse-read-file-name-1):
	Only use scrollbar-width if it's bound.
	* obsolete.el:
	Only provide #'add-meu-item, #'add-menu,
	#'package-get-download-menu if the menubar feature is available at
	runtime.
	* obsolete.el (find-non-ascii-charset-string):
	Only call #'charset-in-string if it's bound; else give nil.
	* obsolete.el (find-non-ascii-charset-region):
	Only call #'charset-in-region if it's bound; else give nil.
	* select.el (activate-region-as-selection):
	Only call #'mouse-track-rectangle-p if it's bound.
	* select.el (select-make-extent-for-selection):
	Ditto.
	* simple.el (zmacs-make-extent-for-region):
	Only call #'default-mouse-track-next-move-rect if it's bound.
	* simple.el (zmacs-activate-region):
	Use and-boundp rather than (and (boundp ...))) when checking for a
	variable.
	* unicode.el (featurep):
	Don't bind res, which is not used, in the loop.

2007-10-06  Stephen J. Turnbull  <stephen@xemacs.org>

	* x-faces.el (x-color-list-internal): Should return a list of
	strings.  Make it so.

2007-10-03  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el (featurep):
	Comment out the assertion until the issue in
	18179.49815.622843.336527@parhasard.net is fixed.  This doesn't
	remove any functionality, just a check.

2007-10-02  Aidan Kehoe  <kehoea@parhasard.net>

	* code-files.el (insert-file-contents):
	Document that START and END are zero-based, in contrast to buffer
	offsets, and give an example of their use.

2007-09-09  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el (unicode-error-default-translation-table):
	New. A char table mapping from Unicode error octets (as
	represented in XEmacs) to ASCII, Control-1 and latin-iso8859-1.

	* unicode.el (unicode-error-sequence-regexp-range):
	Correct it, add a build-time check that it matches every possible
	error octet.

	* unicode.el (frob-unicode-errors-region) New.
	Apply a supplied function to each set of error sequences in a
	region.
	* unicode.el (unicode-error-translate-region) New.
	Translate the error octets in a region to the corresponding
	ASCII, control-1 and latin-1 characters.

2007-10-02  Didier Verna  <didier@xemacs.org>

	* objects.el (make-face-boolean-specifier): Fix docstring, really
	make a face-boolean specifier (not a color one).

2007-09-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* subr.el (replace-regexp-in-string): Handle SUBEXP arg properly.

2007-09-30  Aidan Kehoe  <kehoea@parhasard.net>

	* x-faces.el:
	* x-faces.el ('x-resource)): Removed.
	Specifier tag moved to specifier.el to ensure availability on
	non-X builds.
	* specifier.el:
	Provide x, tty, mswindows, msprinter, gtk and carbon as device
	tags that never match on builds that don't support them.
	* specifier.el ('x-resource)): New.
	Moved here from x-faces.el

2007-09-26  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Introduce
	ftp.cn.xemacs.org.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-09-25  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Add new mirrors in
	The Netherlands and China.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-09-20  Didier Verna  <didier@xemacs.org>

	Improvements in user options interactive prompting. This mainly
	involves the following: before this patch, options of type 'group
	or 'checklist were prompted by full sexp, without taking a
	possible default value into account. Now, the user interaction
	features individual prompting _with completion_ for each group or
	checklist member. For group options, an optional default value is
	also handled on an individual group member basis.

	* cus-edit.el (customize-set-value): Suppress the final ": " from
	created prompts.
	(customize-set-variable): Ditto.
	(customize-save-variable): Ditto.
	(custom-prompt-variable): Add final ": " to prompts if needed.

	* wid-edit.el (widget-prompt-spaceify): New. Add trailing space to
	string if needed.
	(widget-prompt): New. Construct a prompt for a widget.
	(widget-prompt-value): Use it; make prompt argument optional.
	(widget-default-prompt-value): Add final ": " to prompt.
	(widget-field-prompt-internal): Ditto.
	(widget-sexp-prompt-value): Ditto.
	(widget-file-prompt-value): Ditto.
	(widget-symbol-prompt-internal): Ditto.
	(widget-choice-prompt-value): Ditto.
	(widget-boolean-prompt-value): Ditto.
	(widget-checklist-prompt-value): New. Prompt value with completion.
	(checklist): Make the widget aware of it.
	(widget-group-prompt-value): New. Prompt value with completion;
	handle default value individually for each group member.
	* wid-edit.el (group): Make the widget aware of it.

2007-09-19  Didier Verna  <didier@xemacs.org>

	Update my personal info.
	* about.el (xemacs-hackers): Use 'didier instead of 'dv.
	* about.el (about-other-current-hackers): Ditto.
	* about.el (about-url-alist): Add my musical website.
	* about.el (about-personal-info): Update my entry.
	* about.el (about-hacker-contribution): Ditto.

2007-09-09  Norbert Koch  <viteno@xemacs.org>

	* byte-optimize.el: Revert last patch from Steve Youngs.

2007-09-02  Steve Youngs  <steve@sxemacs.org>

	* byte-optimize.el (byte-optimize-featurep): New.  Optimise
	feature 'sxemacs to nil and 'xemacs to t.  This is along the same
	lines as GNU/Emacs where they optimise both 'xemacs and 'sxemacs
	to nil.  It has the added advantage of suppressing byte-compiler
	warnings in most cases.

	* package-get.el (package-get-pgp-available-p): Removed.
	(package-get-require-signed-base-updates): Ditto.
	(package-entries-are-signed): Ditto.
	(package-get-pgp-signed-begin-line): Ditto.
	(package-get-pgp-signature-begin-line): Ditto.
	(package-get-pgp-signature-end-line): Ditto.
	(package-get-update-base-from-buffer): Remove the PGP nonsense.

2007-08-29  Didier Verna  <didier@xemacs.org>

	* files.el (files-fetch-hook-value): Preserve locality of hooks by
	working on copies.

2007-08-29  Mike Sperber  <mike@xemacs.org>

	* setup-paths.el (paths-emacs-data-root-p): Use "share" instead of
	"lib" as the subdirectory to look for when testing for a data
	root.

2007-08-25  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/chinese.el ("Chinese-GB"):
	* mule/chinese.el ("Chinese-BIG5"):
	* mule/japanese.el ("Japanese"):
	These three language environments have associated lambda
	expressions to determine whether the current locale matches and
	and what the native-coding-system should be.  These used to be
	stored uncompiled, since they were specified deep in the ALIST
	argument to a #'set-language-info-alist call; this change moves
	them into #'set-language-info calls where the byte-compiler can
	compile them. Shouldn't make a huge difference, but startup time
	is an issue for us.

	* mule/cyrillic.el (windows-1251):
	Unconditionally provide windows-1251 using
	make-8-bit-coding-system.

	* mule/latin.el:
	Add a setup-function and an exit-function to the Turkish language
	environment to change and restore the standard case table,
	respectively. This reflects case conventions in Turkish, where
	dotless i and dotted i are distinct characters with distinct case
	forms. Add windows-1252, Mac Roman as coding systems.

	* mule/mule-cmds.el:
	* mule/mule-cmds.el (set-language-environment):
	* mule/mule-cmds.el (finish-set-language-environment):
	Check setup-function and exit-function's validity with
	#'functionp, not fboundp. It doesn't make a lot of sense to
	exclude lambdas from being specified as setup-function and
	exit-functions. Update a comment to reflect the that
	posix-charset-to-coding-system-hash is no longer initialised at
	compile time.
	* mule/mule-coding.el:
	* mule/mule-coding.el (define-translation-hash-table):
	Call check-argument-type on the two arguments instead of an
	explicit error in a conditional, for the sake of better style.
	* mule/mule-coding.el (make-8-bit-choose-category): New.
	Function that looks at a make-8-bit-coding-system decode table and
	decides on an appropriate category for the associated coding
	system.
	* mule/mule-coding.el (make-8-bit-coding-system):
	Use make-8-bit-choose-category to make the coding category for the
	generated coding systems a bit more sane.

	* mule/mule-win32-init.el:
	Move to a loop-with-destructuring-bind syntax for the creation of
	Windows-specific coding systems. Specify the coding category of
	the created coding systems, and create aliases of the form cpNNNN
	for the compatibility with GNU. Use our own implementations
	instead of the Windows ones for several coding systems, for the
	sake of greater cross-platform compatibility.

2007-08-25  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el (load-unicode-tables):
	Explicitly set the default unicode-precedence-list after loading
	the unicode tables, to move the Western character sets before the
	East Asian ones by default.
	* unicode.el :
	Avoid overflowing 80 characters per line with the CCL
	program. Make unicode-error-sequence-zero and
	unicode-error-sequence-regexp-range available to user code that
	wants to work with Unicode error sequences. Decode those
	characters in WGL4 that are not available in other Western
	character sets at dump time into jit-ucs-charset-0, in the
	interest of avoiding them getting East Asian fonts and width
	information when decoding from Unicode.

2007-08-20  Mike Sperber  <mike@xemacs.org>

	* window-xemacs.el (root-window->saved-window):
	(restore-saved-window-parameters): Don't save the point of the
	current buffer, as per the docstring.

2007-08-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/vietnamese.el ("Vietnamese"): Remove vscii and viqr from
	the coding-system slot of the language environment for Vietnamese;
	they're no longer available as coding systems in XEmacs, and they
	were never widely used.

2007-08-21  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Update download
	sites in Japan.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-08-16  Vin Shelton  <acs@xemacs.org>

	* font-lock.el: Add defvar for font-lock-warning-face.  Original
	patch from Hans de Graaff.

2007-08-18  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Update mirror sites.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-08-16  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Mirror site update.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-08-09  Mike Sperber  <mike@xemacs.org>

	* startup.el (migrate-user-init-file): Create backup of
	`user-init-file' before migrating.
	* startup.el (maybe-migrate-user-init-file): Print
	information about backup file.
	(maybe-create-compatibility-dot-emacs): Follow above change.

2007-08-07  Mike Sperber  <mike@xemacs.org>

	* setup-paths.el (paths-find-doc-directory):
	(paths-find-exec-directory):
	(paths-find-lisp-directory):
	(paths-find-mule-lisp-directory):
	(paths-construct-info-path):
	(paths-find-data-directory):
	* packages.el (packages-find-installation-package-directories):
	* find-paths.el (paths-for-each-emacs-directory):
	(paths-find-emacs-directories):
	(paths-find-emacs-directory):
	(paths-for-each-site-directory):
	(paths-find-site-directory):
	(paths-find-site-directories):
	(paths-for-each-version-directory):
	(paths-find-version-directories):
	(paths-find-version-directory): Generalize to multiple bases.
	(paths-find-architecture-directory): Use above to give roots
	precedence over bases.  This means, for example, that a directory
	in an in-place root will always get precedence over an installed
	root.

2007-08-06  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-coding.el (make-8-bit-coding-system):
	Eliminate byte compiler warnings for the generated coding systems.
	* mule/mule-msw-init-late.el (l):
	* mule/mule-x-init.el (x-use-halfwidth-roman-font):
	Add a couple of declare-fboundp calls for functions we know will
	be bound on a Windows build, to silence the byte compiler.

2007-08-06  Aidan Kehoe  <kehoea@parhasard.net>

	* diagnose.el (show-memory-usage):
	* diagnose.el (show-object-memory-usage-stats):
	* diagnose.el (show-mc-alloc-memory-usage):
	* diagnose.el (show-gc-stats):
	Only call sort-numeric-fields when it's bound. It will be, for
	anyone who has any business calling these functions; it's in
	xemacs-base.
	* font.el:
	Tell the byte compiler about a few more functions that are
	available and called on an XFT build, and unavailable and not
	called elsewhere.

	* gtk-font-menu.el (gtk-reset-device-font-menus):
	Improve the logic here; don't check for Mule, check whether
	#'charset-registries is bound with an if-fboundp call.

	* gtk-iso8859-1.el (x-iso8859-1):
	character-set-property is no longer used, on any platform.
	* gtk.el (gtk-import-function-internal):
	Tell the byte compiler about some functions that are available on
	the GTK build and not elsewhere.

	* help.el (help-symbol-function-context-menu):
	* help.el (help-symbol-variable-context-menu):
	* help.el (help-symbol-function-and-variable-context-menu):
	* help.el (help-find-source-or-scroll-up):
	* help.el (help-mouse-find-source-or-track):
	Only offer find-function, find-variable if they're available as
	functions.

	* iso8859-1.el:
	This file sets the case table for Latin 1, not the syntax table.

	* msw-font-menu.el:
	* msw-font-menu.el (mswindows-parse-font-style):
	Tell the byte compiler about a few functions that are available
	and called on msw builds, and not elsewhere.

	* occur.el (occur-engine):
	Use Ben's (if-fboundp ...) macro when calling (or otherwise)
	#'jit-lock-mode.

	* paragraphs.el (forward-paragraph):
	multiple-lines is set but not used; comment it out for the sake of
	the byte-compiler.

	* paragraphs.el (forward-sentence):
	Only call #'constrain-to-field if it's bound; give a more relevant
	error message if it isn't.
	* subr.el (check-argument-range):
	Call signal-error with the correct signature.
	* x-font-menu.el (charset-registries):
	Make the byte compiler aware of a pile of functions that are
	available on, and only called on, certain builds.

2007-08-06  Aidan Kehoe  <kehoea@parhasard.net>

	* font.el (x-font-create-object):
	When handed an XFT font name string, parse it as such.
	* font.el (font-xft-font-regexp):
	Don't check for the existence of xft-font-regexp; accept escaped
	dashes, colons and commas in font family names.

2007-08-04  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el:
	* unicode.el (utf-32):
	* unicode.el (utf-32-little-endian):
	Add UTF-32 coding systems.

	* unicode.el (decode-char):
	Only accept valid Unicode in this function.

2007-08-02  Mike Sperber  <mike@xemacs.org>

	* startup.el (startup-setup-paths): Fix typo in init expression
	for `emacs-roots'.

2007-07-31  Mike Sperber  <mike@xemacs.org>

	* find-paths.el (paths-for-each-site-directory):
	(paths-find-site-directory):
	(paths-find-site-directories):
	(paths-for-each-version-directory):
	(paths-find-version-directory):
	(paths-find-version-directories): Add `arch-dependent-p' argument
	to distinguish between `lib' and `share'.
	(paths-find-architecture-directory): Follow above change.
	* packages.el (packages-find-installation-package-directories): Ditto.
	* setup-paths.el (paths-find-site-lisp-directory):
	(paths-find-site-module-directory):
	(paths-find-lisp-directory):
	(paths-find-mule-lisp-directory):
	(paths-find-module-directory):
	(paths-find-data-directory): Ditto.

2007-08-01  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/cyrillic.el:
	* mule/cyrillic.el ("Russian"):
	* mule/cyrillic.el ("Ukrainian"):
	* mule/cyrillic.el ("Bulgarian"):
	* mule/cyrillic.el ("Belarusian"):
	Add POSIX locale information for all four languages. Remove
	information about specific coding systems in the docstrings, since
	this information is inaccurate if a variant language environment
	is being used.

	* mule/greek.el:
	* mule/latin.el (for):
	Add POSIX locale information, provide Windows-1253 as well.

	* mule/mule-coding.el (make-8-bit-generate-helper):
	Fix a bug that was biting me with windows-1251. I need to include
	tests in tests/automated/mule-tests.el that check that all the
	coding-systems created with make-8-bit-coding-system are
	reversible, since all of them should be.

2007-07-28  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-coding.el (make-8-bit-create-decode-encode-tables):
	Don't creat JIT mappings for U+0080-U+00FF at dump time.

2007-07-28  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.el:
	Assert that the ccl-encode-to-ucs-2 vector corresponds to the
	compiled program at byte-compile time. Display non-BMP characters
	as U+FFFD.

2007-07-28  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Document Chile and
	update Denmark download site.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-07-27  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-ccl.el:
	* mule/ccl.el:
	Renamed mule-ccl.el to ccl.el, for compatibility with GNU now we
	no longer dump it.
	* mule/mule-coding.el (require):
	* mule/chinese.el (progn):
	Reflect this renaming in a couple of require calls.

2007-07-23  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/general-late.el (posix-charset-to-coding-system-hash):
	Pick up coding system aliases as well as their canonical names
	when initialising this hash.
	* mule/mule-cmds.el (parse-posix-locale-string):
	Interpret @cyrillic to mean that the coding system for a language
	environment is Windows-1251.

2007-07-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/chinese.el:
	* mule/cyrillic.el:
	* mule/cyrillic.el (cyrillic-koi8-r-decode-table): Removed.
	* mule/cyrillic.el (cyrillic-koi8-r-encode-table): Removed.
	* mule/cyrillic.el (cyrillic-alternativnyj-decode-table): Removed.
	* mule/cyrillic.el (cyrillic-alternativnyj-encode-table): Removed.
	* mule/cyrillic.el (cyrillic-koi8-r-to-external-code-table):
	Removed.

	* mule/cyrillic.el (ccl-decode-koi8): Removed.
	* mule/cyrillic.el (ccl-encode-koi8): Removed.
	* mule/cyrillic.el (ccl-decode-alternativnyj): Removed.
	* mule/cyrillic.el (ccl-encode-alternativnyj): Removed.
	* mule/cyrillic.el
	(cyrillic-alternativnyj-to-external-code-table): Removed.
	* mule/cyrillic.el ("Cyrillic-ISO"): Langenv added.
	* mule/cyrillic.el ("Ukrainian"): Langenv added.
	* mule/cyrillic.el ("Bulgarian"): Langenv added.
	* mule/cyrillic.el ("Belarusian"): Langenv added.

	* mule/cyrillic.el (koi8-r):
	* mule/cyrillic.el (koi8-ru):
	* mule/cyrillic.el (koi8-t):
	* mule/cyrillic.el (koi8-c):
	* mule/english.el ("English"):
	* mule/ethiopic.el (ccl-encode-ethio-font):
	* mule/ethiopic.el (ethiopic):
	* mule/japanese.el (for):
	* mule/korean.el (for):
	* mule/latin.el (iso-8859-15):
	Use a normal quote; there's no need for a backquote.
	* mule/mule-ccl.el:
	* mule/mule-ccl.el (ccl-command-table):
	* mule/mule-ccl.el (ccl-extended-code-table):
	* mule/mule-ccl.el (ccl-embed-data):
	* mule/mule-ccl.el (ccl-compile-lookup-integer): New.
	* mule/mule-ccl.el (ccl-compile-lookup-character): New.
	* mule/mule-ccl.el (ccl-dump-ex-cmd):
	* mule/mule-ccl.el (ccl-dump-lookup-int-const-tbl): New.
	* mule/mule-ccl.el (ccl-dump-lookup-char-const-tbl): New.
	* mule/mule-ccl.el (define-ccl-program):
	* mule/mule-ccl.el (ccl):
	* mule/mule-ccl.el (ccl-execute-with-args): Removed.
	* mule/mule-charset.el:
	* mule/mule-charset.el ('charset-columns): Removed.
	* mule/mule-charset.el ('charset-final): Removed.
	* mule/mule-charset.el ('charset-graphic): Removed.
	* mule/mule-charset.el ('charset-doc-string): Removed.
	* mule/mule-coding.el:
	* mule/mule-coding.el (define-translation-hash-table): New.
	* mule/mule-coding.el (make-8-bit-private-use-start): New.
	* mule/mule-coding.el (make-8-bit-generate-helper): New.
	* mule/mule-coding.el (make-8-bit-generate-encode-program): New.
	* mule/mule-coding.el (make-8-bit-create-decode-encode-tables): New.
	* mule/mule-coding.el (make-8-bit-generate-decode-program): New.
	* mule/mule-coding.el (make-8-bit-coding-system): New.
	* mule/viet-util.el (viet-encode-viscii-char):
	* mule/vietnamese.el:
	* mule/vietnamese.el (?v):
	* mule/vietnamese.el (viscii):
	* mule/vietnamese.el (viet-viscii-decode-table): Removed.
	* mule/vietnamese.el (viet-viscii-encode-table): Removed.
	* mule/vietnamese.el (viet-vscii-decode-table): Removed.
	* mule/vietnamese.el (viet-vscii-encode-table): Removed.
	* mule/vietnamese.el (ccl-decode-viscii): Removed.
	* mule/vietnamese.el (leading-code-private-11): Removed.
	* mule/vietnamese.el (ccl-encode-viscii): Removed.
	* mule/vietnamese.el (ccl-encode-viscii-font): Removed.
	* mule/vietnamese.el (ccl-decode-vscii): Removed.
	* mule/vietnamese.el (ccl-encode-vscii): Removed.
	* mule/vietnamese.el (ccl-encode-vscii-font): Removed.
	* mule/vietnamese.el (viet-viscii-to-external-code-table):
	Removed.

	Provide make-8-bit-coding-system, a way to construct a fixed-width
	XEmacs CCL coding system given a map from 8-bit characters to
	Unicode. Such generated CCL coding systems do not have the Latin
	deunification problem of iso-8859-15, for example. For most users,
	most of the time, only a small minority of code conversions will
	require a hash table lookup, so performance is good.

	Provide a compiler macro version of same, used when
	make-8-bit-coding-system is called with literal arguments, since
	at dump time the unicode conversion tables are not available,
	whereas during compilation of dumped files they are.

	Rework cyrillic.el to use make-8-bit-coding-system. Add support
	for previously trashed characters in KOI8-R, add support for
	KOI8-u, re-add support for Windows-1251 when not building on
	win32, add support for previously trashed characters in
	Alternativnyj, add support for koi8-ru (unified Russian,
	Belarusian and Ukrainian), add support for koi8-t (Tajik), koi8-c
	\(languages of the Caucasus), koi8-o (archaic Russian, Old Church
	Slavonic). Add language environments for Russian, Bulgarian,
	Belarusian and Cyrillic-KOI8RU.

	Remove the ascii-right-to-left charset, which never worked.

	Move to syntactic integers in CCL, when semantic integers were
	represented by character.

	Remove superflous calls to (modify-syntax-entry [...] "w"), since
	character syntax now defaults to word.

	Add support for lookup-integer, lookup-character in mule-ccl.el,
	based on Dave Love's work for GNU.

	Remove ccl-execute-with-args; ccl-execute-on-string ably does the
	same job, and no-one's using it on google.com/codesearch.

	Correct the documentation for read-multibyte-character and
	write-multibyte-character.

	Rework vietnamese.el to use make-8-bit-coding-system. Remove
	the viqr coding system, since it never worked. Don't use a CCL
	program to display VISCII; rely on our Unicode conversion
	instead.

	Rework viet-encode-viscii-char, now
	viet-viscii-to-external-code-table is no longer available.

2007-07-21  Aidan Kehoe  <kehoea@parhasard.net>

	* dumped-lisp.el (preloaded-file-list):
	It's not necessary to dump mule-ccl.el; the functionality from it
	that's used in other dumped files is available in macro form.
	* unicode.el (ccl-encode-to-ucs-2):
	Update ccl-encode-to-ucs-2 to reflect the changes made to
	mule-ccl.c. NB; this change needs to be made to
	fsf-compat-unicode.el too.

2007-07-16  Aidan Kehoe  <kehoea@parhasard.net>

	* isearch-mode.el (isearch-exit):
	Don't highlight matches if we're currently executing a keyboard
	macro.

2007-07-16  Aidan Kehoe  <kehoea@parhasard.net>

	* x-init.el (x-initialize-keyboard):
	Treat Cygwin and X.org as XFree86 on startup.

2007-06-19  Ron Isaacson  <Ron.Isaacson@morganstanley.com>

	* frame.el (other-frame): Stop other-frame cycling through all frames.

2007-06-19  Ron Isaacson  <Ron.Isaacson@morganstanley.com>

	* modeline.el (modeline-update-tty-frame-specifier): Don't use
	non-existent function frame-tty-p.

2007-06-23  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Add and announce
	web and ftp mirrors in Greece.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-06-22  Aidan Kehoe  <kehoea@parhasard.net>

	* files.el (revert-buffer):
	* files.el (recover-file):
	Pass NOMODIFY to set-buffer-file-coding-systems after reverting a
	buffer and after recovering a file.

2007-06-21  Aidan Kehoe  <kehoea@parhasard.net>

	* msw-faces.el:
	Accept numbers, indeed anything other than a colon, as legitmate
	in a font family as parsed by mswindows-font-regexp. Fixes the
	problem reported in puftoj6l.fsf@isoware.de of six years ago.

2007-06-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/devan-util.el (devanagari-reorder-glyphs-for-composition):
	* mule/ethio-util.el (ethio-fidel-to-sera-buffer):
	'(lambda ...) -> #'(lambda ..), for the sake of style and the byte
	compiler.

2007-06-21  Aidan Kehoe  <kehoea@parhasard.net>

	* build-report.el (build-report-delete):
	* cus-edit.el (custom-face):
	* custom.el (custom-theme-reset-variables):
	* fontconfig.el (fc-find-available-font-families):
	* fontconfig.el (fc-find-available-weights-for-family):
	* select.el (select-convert-from-integer):
	* x-faces.el (x-find-smaller-font-xft):
	* x-faces.el (x-find-larger-font-xft):
	'(lambda ...) -> #'(lambda ..), for the sake of style and the byte
	compiler.

2007-06-12  Adrian Aichner  <adrian@xemacs.org>

	* package-get.el (package-get-download-sites): Add mirror in Saudi
	Arabia.
	* package-get.el (package-get-pre-release-download-sites): Ditto.

2007-05-29  Adrian Aichner  <adrian@xemacs.org>

	* abbrev.el (expand-region-abbrevs): Downcase word before
	abbreviation lookup, since `inverse-add-abbrev', `add-abbrev',
	`define-mode-abbrev', and `define-global-abbrev' also downcase to
	normalize abbreviations.

2007-06-03  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/mule-cmds.el:
	* mule/mule-cmds.el (system-type-file-name-coding): New.
	* mule/mule-cmds.el (set-language-environment-coding-systems):
	Check system-type-file-name-coding for an entry before making the
	file-name coding system alias equivalent to the native coding
	system alias.

2007-05-25  Mike Sperber  <mike@xemacs.org>

	* startup.el (startup-setup-paths): Print the configure-xxx
	variables as well.

2007-05-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule/latin.el:
	The character set associated with the Turkish language environment
	is latin-iso8859-9, not latin-iso8859-5. Who thought up the Latin
	5 vs. ISO 8859-9 distinction anyway?

ChangeLog Entries from lwlib/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2008-11-02  Stephen J. Turnbull  <stephen@xemacs.org>

	G++ 4.3 complains a lot about implicit conversions of string
	literals (const char *) to char *.  Shut it up.

	* xt-wrappers.h: New file.
	Contains wrappers for Xt functions and macros for C++
	type-correctness and/or convenience.

	* lwlib.h:
	* lwlib-Xm.c:
	* lwlib-Xaw.c:
	#include xt-wrappers.h.

	* xlwcheckbox.c:
	* xlwgauge.c:
	* xlwmenu.c:
	* xlwradio.c:
	* xlwscrollbar.c:
	* xlwtabs.c:
	#include xt-wrappers.h.
	Cast class name to String.
	Cast action names to String.
	Rewrite resources to use Xt_RESOURCE.

	* lwlib.h (lw_get_value_arg):
	* lwlib.c (lw_get_value_arg):
	Declare String argument const.

	* lwlib-Xaw.c (xaw_actions):
	Cast to string.

	* lwlib-Xaw.c (xaw_update_scrollbar):
	* lwlib-Xaw.c (xaw_update_one_widget):
	* lwlib-Xaw.c (xaw_update_one_value):
	* lwlib-Xaw.c (make_dialog):
	* lwlib-Xaw.c (xaw_generic_callback):
	* lwlib-Xaw.c (wm_delete_window):
	* lwlib-Xaw.c (xaw_create_scrollbar):
	* lwlib-Xaw.c (xaw_create_button):
	* lwlib-Xaw.c (xaw_create_label):
	* lwlib-Xaw.c (xaw_create_progress):
	* lwlib-Xaw.c (xaw_create_text_field):
	* lwlib-Xaw.c (xaw_creation_table):
	* lwlib-Xlw.c (xlw_create_menubar):
	* lwlib-Xlw.c (xlw_create_popup_menu):
	* lwlib-Xlw.c (xlw_create_scrollbar):
	* lwlib-Xlw.c (xlw_update_scrollbar):
	* lwlib-Xlw.c (xlw_create_tab_control):
	* lwlib-Xlw.c (build_tabs_in_widget):
	* lwlib-Xlw.c (xlw_create_clip_window):
	* lwlib-Xlw.c (xlw_update_one_widget):
	* lwlib-Xm.c (xm_update_label):
	* lwlib-Xm.c (xm_update_pushbutton):
	* lwlib-Xm.c (xm_update_progress):
	* lwlib-Xm.c (xm_update_toggle):
	* lwlib-Xm.c (xm_update_radiobox):
	* lwlib-Xm.c (make_menu_in_widget):
	* lwlib-Xm.c (update_one_menu_entry):
	* lwlib-Xm.c (xm_update_scrollbar):
	* lwlib-Xm.c (xm_update_one_value):
	* lwlib-Xm.c (make_dialog):
	* lwlib-Xm.c (recenter_widget):
	* lwlib-Xm.c (recycle_instance):
	* lwlib-Xm.c (make_menubar):
	* lwlib-Xm.c (make_scrollbar):
	* lwlib-Xm.c (xm_create_button):
	* lwlib-Xm.c (xm_create_progress):
	* lwlib-Xm.c (xm_create_text_field):
	* lwlib-Xm.c (xm_create_label):
	* lwlib-Xm.c (xm_create_combo_box):
	* lwlib-Xm.c (xm_popup_menu):
	* lwlib-Xm.c (set_min_dialog_size):
	* lwlib-Xm.c (do_call):
	* lwlib-Xm.c (xm_generic_callback):
	* xlwcheckbox.c (offset):
	* xlwgauge.c (offset):
	* xlwgauge.c (actionsList):
	* xlwmenu.c (xlwMenuResources):
	* xlwmenu.c (xlwMenuActionsList):
	* xlwmenu.c (xlwMenuClassRec):
	* xlwmenu.c (nameResource):
	* xlwmenu.c (parameterize_string):
	* xlwradio.c (actionsList):
	* xlwscrollbar.c (offset):
	* xlwscrollbar.c (actions):
	Use Xt_SET_ARG, Xt_SET_VALUE, and Xt_GET_VALUE instead of raw Xt
	equivalents.

2008-10-26  Stephen J. Turnbull  <stephen@xemacs.org>

	* lwlib-Xm.c (xm_update_progress): Set all values!

2007-09-15  Jerry James  <james@xemacs.org>

	* xlwmenu.c (XlwMenuDestroy): Release XftFont resources
	* xlwtabs.c (TabsDestroy): Ditto

ChangeLog Entries from man/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2009-04-02  Stephen J. Turnbull  <stephen@xemacs.org>

	* internals/internals.texi: s/@urlref/@uref/g.
	(Lstreams): Add urefs to David Beasley tutorials.

2009-02-26  Stephen J. Turnbull  <stephen@xemacs.org>

	* xemacs-faq.texi (Q3.0.12): New node for Meta key on Mac.
	(Top):
	(Editing):
	(Q3.0.11):
	(Q3.1.1):
	Fix up Next/Prev/Menu references.

2009-02-04  Aidan Kehoe  <kehoea@parhasard.net>

	* xemacs/xemacs.texi (Top): 
	* xemacs/misc.texi (Emulation): 
	* xemacs/building.texi (Lisp Libraries): 
	(Compiling Libraries): 
	Remove any reference to mocklisp as an active technology.
	Also remove documentation of the related #'set-gosmacs-bindings,
	which is no longer available.

2008-10-04  Stephen J. Turnbull  <stephen@xemacs.org>

	* xemacs-faq.texi (Q5.0.7): Fix broken instructions on use of
	antialiased fonts.

2008-08-31  Aidan Kehoe  <kehoea@parhasard.net>

	* xemacs-faq.texi (Q5.0.7): Add a section on how one can use
	antialiased fonts under X11; thank you Giacomo Boffi. 
	(Q1.0.3): Clarify pronunciation using a serious phonetic
	alphabet. 

2008-07-26  Ville Skyttä  <scop@xemacs.org>

	* xemacs/custom.texi, xemacs/frame.texi, xemacs/mule.texi,
	xemacs/packages.texi, xemacs/programs.texi, xemacs/trouble.texi:
	Spelling fixes.

2008-07-26  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/objects.texi (Character Type):
	Document the error provoked when the reader sees an over-long
	hexadecimal constant.

2008-07-26  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/variables.texi (Extent): 
	Correct a misspelling of macros, add a needed space. Thank you
	John Paul Wallington, thank you Stephen Turnbull. 

2008-05-29  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/objects.texi (Equality Predicates): 
	Expand on bignum equality; correct an omitted word in the last
	commit. 

2008-05-27  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/objects.texi (Equality Predicates): 
	Cross reference to the section on comparison of numbers when
	talking about using #'eq with integers; also mention that
	#'eq gives t when passed identical integers, and that #'char= is
	also available there.

2008-05-21  Aidan Kehoe  <kehoea@parhasard.net>

	* internals/internals.texi (Ben's README): 
	Add a couple of @itemize / @end itemize pairs, to prevent
	#'batch-texinfo-format choking on the input. 

2008-01-20  Aidan Kehoe  <kehoea@parhasard.net>

	* xemacs/cmdargs.texi (Command Switches): 
	Describe --script, -script. 

2008-02-27  Stephen J. Turnbull  <stephen@xemacs.org>

	* internals/internals.texi (Discussion -- KKCC):
	(Discussion -- Incremental Collector):
	New nodes.
	(Top):
	(Discussion -- Garbage Collection):
	(Discussion -- Pure Space):
	Adjust pointers and menus for new nodes.

	(lrecords): Remark that lcrecords are obsolete.

2007-12-17  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/strings.texi (Formatting Strings):
	Document %b for binary output.

2007-12-10  Ville Skyttä  <scop@xemacs.org>

	* internals/internals.texi: Spelling fixes.

2007-12-07  Ville Skyttä  <scop@xemacs.org>

	* beta.texi, emodules.texi, term.texi, termcap.texi, texinfo.texi,
	widget.texi, xemacs-faq.texi: Spelling fixes.

2007-11-28  Aidan Kehoe  <kehoea@parhasard.net>

	* internals/internals.texi (Ibytes and Ichars):
	Cross reference to the Mule docs describing these typedefs,
	instead of saying Not yet documented. 

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/objects.texi (String Type):
	Describe how one can include a trailing backslash in a raw string,
	by means of the Unicode escape syntax. 

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* xemacs/keystrokes.texi (Character Representation):
	Clarify the description of which characters are displayed as
	themselves and which as octal escapes bzw. "control" characters
	with an initial caret. 

2007-10-15  Adrian Aichner  <adrian@xemacs.org>

	* Makefile (info_files): Sync nt/xemacs.mak and man/Makefile.
	Sort enries to easy future syncs.

2007-09-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/searching.texi (Replacing Match): Document the escapes
	for changing case in `replace-match'.  Document the change to
	STRBUFFER to permit subexpressions in string replacement.

2007-09-30  Adrian Aichner  <adrian@xemacs.org>

	* Makefile (TEXI2HTML_NOSPLIT): New.
	* Makefile ($(HTMLDIR)/beta.html): Use TEXI2HTML_NOSPLIT.
	* Makefile ($(HTMLDIR)/xemacs-faq.html): Ditto.

2007-09-30  Adrian Aichner  <adrian@xemacs.org>

	* Makefile (TEXI2HTML): Refactor TEXI2HTML for use by
	xemacsweb/Documentation/Makefile.

2007-08-25  Adrian Aichner  <adrian@xemacs.org>

	* internals/internals.texi (Through Version 18): Fix error in
	Emacs Timeline URL.
	* internals/internals.texi (Better Rendering Support -- Configuration with the Interim Patches):

2007-06-27  Aidan Kehoe  <kehoea@parhasard.net>

	* lispref/variables.texi (Extent):
	Mention that lexical scope is available using lexical-let and
	lexical-let* in cl-macs, instead of ignoring them entirely. 

2007-05-21  Ville Skyttä  <scop@xemacs.org>

	* internals/internals.texi: Fix corrupted/oddly encoded chars.
	* lispref/ldap.texi: Ditto.

ChangeLog Entries from modules/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2008-02-12  Jerry James  <james@xemacs.org>

	* canna/install-sh: Update to latest FSF version.
	* ldap/install-sh: Ditto.
	* postgresql/install-sh: Ditto.
	* sample/external/install-sh: Ditto.
	* sample/internal/install-sh: Ditto.

2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* canna/canna_api.c (Fcanna_set_bunsetsu):
	(Fcanna_initialize):
	Suppress warnings about loss of precision on amd64.

2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* ldap/eldap.h: Declare that we use deprecated API.
	Thanks to Mats Lidell <matsl@xemacs.org> for the report & patch:
	<871wgnqunm.fsf@spencer.lidell.homelinux.net>.

ChangeLog Entries from netinstall/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2007-08-12  Mike Sperber  <mike@xemacs.org>

	* Makefile.in.in (datarootdir): Add.

ChangeLog Entries from nt/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2009-02-06  Vin Shelton  <acs@xemacs.org>

	* xemacs.mak: Add support for Visual Studio 2005 manifests.

2008-05-13  Aidan Kehoe  <kehoea@parhasard.net>

	* xemacs.mak (PROGRAM_DEFINES): 
	Provide SHEBANG_PROGNAME on Win32 too. 

2008-01-25  Michael Sperber  <mike@xemacs.org>

	* xemacs.mak (version.sh): Generate version.sh via Mercurial.

2008-01-24 Mike Sperber   <mike@xemacs.org>

	* config.inc.samp: Fix URL for optional libraries.
	* xemacs.mak (PATH_PREFIX): Set PATH_PREFIX to the value of INSTALL_DIR.
	* xemacs.mak (PATH_DEFINES): Fix setting of PATH_DEFINES.
	* xemacs.mak (DEBUG_FLAG_COMPILE_DEBUG): Comment out -RTC1: it
	even crashes with VC 8.
	* xemacs.mak: Comment out echo line that leads to
	command-line-too-long error on some Windowses.

2008-01-18  Vin Shelton  <acs@xemacs.org>

	* xemacs.mak: Use debug version of Intel's libm, if appropriate.

2008-01-17  Vin Shelton  <acs@xemacs.org>

	* config.inc.samp: Added USE_INTEL_COMPILER to support the Intel
	compiler.
	* xemacs.mak: Use USE_INTEL_COMPILER.

2007-10-15  Adrian Aichner  <adrian@xemacs.org>

	* xemacs.mak (INFO_FILES): Sync nt/xemacs.mak and man/Makefile
	(adding beta.info).
	* xemacs.mak (LISPREF_SRCS): Ditto.  Adding packages.texi.

ChangeLog Entries from nt/installer/Wise/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

ChangeLog Entries from src/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2009-03-08  Ville Skyttä  <scop@xemacs.org>

	* glyphs-gtk.c (init_image_instance_from_gdk_pixmap): Apply the
	2008-03-05 change from Dominique Quatravaux here as well even
	though the code is not enabled at the moment.

2009-02-04  Stephen J. Turnbull  <stephen@xemacs.org>

	* eval.c (skip_debugger): Fix typo in preceding comment.

2009-02-11  Jerry James  <james@xemacs.org>

	* number-gmp.c (bigfloat_to_string): Fix broken string conversion.

2009-02-10  Aidan Kehoe  <kehoea@parhasard.net>

	* lread.c (Fload_internal): 
	Make load-file-name-internal readonly for Lisp code; make
	load-file-name a modifiable copy. 
	(init_lread): 
	Initialised Vload_file_name_internal, Vload_file_name to nil on
	each post-dump start.

2009-02-02  Stephen J. Turnbull  <stephen@xemacs.org>

	* frame-x.c (x_init_frame_2): Update comment per new info from HT.

2009-02-02  Stephen J. Turnbull  <stephen@xemacs.org>

	* frame-x.c (x_init_frame_2): Placate openbox by calling
	update_frame_icon.  Suggested by Henry S. Thompson
	<ht@inf.ed.ac.uk> in <f5btz7ghm5k@hildegard.inf.ed.ac.uk>.

2009-01-31  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.c (unicode_convert): 
	Correct little-endian UTF-16 surrogate handling. 

2009-01-16  Aidan Kehoe  <kehoea@parhasard.net>

	* chartab.c (print_table_entry): 
	Print char table values correctly, eliminating some confusion
	between symbols and strings.

2009-01-10  Aidan Kehoe <kehoea@parhasard.net>

	* objects-msw.c (mswindows_font_spec_matches_charset_stage_2): 
	Accept msprinter as well as mswindows devices here. 

2008-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* device-x.c (Fx_get_font_path): 
	Free the font path once we're finished with it. 

2008-12-28  Aidan Kehoe  <kehoea@parhasard.net>

	* file-coding.c (Fmake_coding_system): 
	Document our use of the safe-chars and safe-charsets properties,
	and the differences compared to GNU. 
	(make_coding_system_1): Don't drop the safe-chars and
	safe-charsets properties. 
	(Fcoding_system_property): Return the safe-chars and safe-charsets
	properties when asked for them.
	* file-coding.h (CODING_SYSTEM_SAFE_CHARSETS): 
	* coding-system-slots.h: 
	Make the safe-chars and safe-charsets slots available in these
	headers. 

2008-12-27  Aidan Kehoe  <kehoea@parhasard.net>

	* doc.c (Fbuilt_in_symbol_file): 
	Return a subr's filename immediately if we've found it. Check for
	compiled function and compiled macro docstrings in DOC too, and
	return them if they exist. 
	The branch of the if statement focused on functions may have
	executed, but we may still want to check variable bindings; an
	else clause isn't appropriate.

2008-12-27  Vin Shelton  <acs@xemacs.org>

	* syswindows.h: Don't define wide character interfaces for Cygwin
	1.7 and up.

2008-12-22  Aidan Kehoe  <kehoea@parhasard.net>

	* symbols.c (Fdefine_function): 
	* eval.c (define_function): 
	Record explicitly that we're defining a function in the load
	history, in both these files. 

2008-12-22  Aidan Kehoe  <kehoea@parhasard.net>

	* faces.c (Fbuilt_in_face_specifiers): 
	Document that we're returning a copy. 

2008-12-21  Aidan Kehoe  <kehoea@parhasard.net>

	* faces.c (Fbuilt_in_face_specifiers): 
	Don't simply warn the user not to modify
	Vbuilt_in_face_specifiers, enforce this by returning a copy of the
	list. 

2008-11-02  Stephen J. Turnbull  <stephen@xemacs.org>

	G++ 4.3 complains a lot about implicit conversions of string
	literals (const char *) to char *.  Shut it up.

	* console-x.h:
	* EmacsFrame.c:
	* EmacsManager.c:
	* EmacsShell-sub.c:
	#include ../lwlib/xt-wrappers.h.
	Cast class name to String.
	Cast action names to String.
	Rewrite resources to use Xt_RESOURCE.

	* console-x.h:
	Move Xt_SET_VALUE and Xt_GET_VALUE to ../lwlib/xt-wrappers.h.

	* console-x.h (describe_XRectangle):
	* input-method-xlib.c (describe_XRectangle):
	* emacs.c (argmatch):
	* emacs.c (check_compatible_window_system):
	* emodules.c (Fload_module):
	* emodules.c (Funload_module):
	* event-stream.c (external_debugging_print_event):
	* file-coding.h (struct subsidiary_type):
	* file-coding.c (struct subsidiary_type):
	* file-coding.c (setup_eol_coding_systems):
	* file-coding.c (make_coding_system_1):
	* file-coding.c (make_internal_coding_system):
	* gif_io.c (GifErrorString:
	* gif_io.c (GetGifError):
	* input-method-xlib.c (XIM_init_frame):
	* mule-coding.c (ccl_putprop):
	* print.c (printing_major_badness):
	* redisplay.c (generate_fstring_runes):
	Declare String or char * argument or variable as const.

	* EmacsFrame.c (EmacsFrameSetCharSize):
	* EmacsShell-sub.c (update_size_hints_internal):
	* EmacsShell-sub.c (SuperClassRootGeometryManager):
	* device-x.c (emacs_options):
	* device-x.c (compute_x_app_name):
	* device-x.c (have_xemacs_resources_in_xrdb):
	* device-x.c (x_init_device):
	* event-Xt.c (x_fallback_resources):
	* event-Xt.c (widgetActionsList):
	* event-Xt.c (emacs_Xt_event_add_widget_actions):
	* frame-x.c (x_wm_set_cell_size):
	* frame-x.c (x_wm_set_variable_size):
	* frame-x.c (x_set_frame_text_value):
	* frame-x.c (x_initialize_frame_size):
	* frame-x.c (x_create_widgets):
	* frame-x.c (x_set_frame_icon):
	* frame-x.c (x_set_frame_position):
	* frame-x.c (x_update_frame_external_traits):
	* glyphs-x.c (x_redisplay_widget):
	* glyphs-x.c (update_tab_widget_face):
	* glyphs-x.c (x_widget_instantiate):
	* glyphs-x.c (x_button_instantiate):
	* glyphs-x.c (x_progress_gauge_redisplay):
	* glyphs-x.c (x_tab_control_redisplay):
	* menubar-x.c (make_dummy_xbutton_event):
	Use Xt_SET_ARG, Xt_SET_VALUE, and Xt_GET_VALUE instead of raw Xt
	equivalents.
	Declare String or char * argument or local variable as const.
	Cast string literals to char* (or equivalent).

	* input-method-xlib.c:
	Use Xt_RESOURCE.

2008-11-25  Stephen J. Turnbull  <stephen@xemacs.org>

	* elhash.c (hash_table_data_validate):
	* elhash.c (decode_hash_table_rehash_size):
	* elhash.c (decode_hash_table_rehash_threshold):
	Document side effects used in these functions.

2008-11-20  Stephen J. Turnbull  <stephen@xemacs.org>

	* console-x-impl.h (struct x_frame): Clarify comment.

2008-11-01  Stephen J. Turnbull  <stephen@xemacs.org>

	* regex.c (re_search_2): Fix at_dot by changing charpos to bytepos.
	From Julian Bradfield <18654.1143.304851.782755@krk.inf.ed.ac.uk>.

2008-11-01  Stephen J. Turnbull  <stephen@xemacs.org>

	* mule-ccl.c (ccl_driver): Fix off-by-one error.
	By Julian Bradfield in <18691.16568.526264.972026@krk.inf.ed.ac.uk>.

2008-10-25  Stephen J. Turnbull  <stephen@xemacs.org>

	* lisp.h (static_pro): Cast out a warning.
	g++ 4.3 complains about the conversion of const char to char.
	These end up in a dynarray, so we would need to define a whole new
	class of dynarray just to handle the const char stuff.

2008-08-27  Aidan Kehoe  <kehoea@parhasard.net>

	* symbols.c (Fuser_variable_p): 
	(map_varalias_chain): 
	Use EQ() and !EQ(), don't compare two Lisp_Objects using == and
	!=. Fixes the union build, thank you Robert Delius Royar. 

2008-08-23  Aidan Kehoe  <kehoea@parhasard.net>

	* eval.c (Fuser_variable_p): Moved to symbols.c
	* symbols.c (Fcustom_variable_p): Moved here from custom.el. 
	(user_variable_alias_check_fun): Mapper function used in
	`user-variable-p'. 
	(Fuser_variable_p): Moved here from eval.c, to allow it to examine
	the variable alias chain. Expanded to check each entry in the
	variable alias chain for signs of being a user variable;
	documentation updated, noting the differences between GNU's
	behaviour and ours (ours is a little more sensible)
	(map_varalias_chain): New.
	Given a C function, call it at least once for each symbol in a
	symbol's varalias chain, signalling an error if there's a cycle,
	and returning immediately if the function returns something other
	than Qzero. 
	(Fdefvaralias): Correct the use of the word "alias" in the
	docstring and in the argument name. Motivate this in a
	comment. Add support for a DOCSTRING argument, something GNU has
	too, and document this
	* gc.c (vars_of_gc): Start the docstring of
	`garbage-collection-messages' with an asterisk, to indicate that
	it's a user variable. 

2008-08-09  Aidan Kehoe  <kehoea@parhasard.net>

	Integrate Romain Francoise' 2005-09-14 (pre-GPLV3) GNU change,
	which can allow much better performace with some stupid
	filesystems:
	* fileio.c (write_region_inhibit_fsync): New variable.
	(Fwrite_region): Use it to skip call to fsync.
	(syms_of_fileio): Initialize it.

2008-08-10  Aidan Kehoe  <kehoea@parhasard.net>

	* objects-xlike-inc.c (charset_table): Remove the entry for
	Vcharset_arabic_iso8859_7, thank you Robert Delius Royar.

2008-08-05  Aidan Kehoe  <kehoea@parhasard.net>

	* mule-charset.c (complex_vars_of_mule_charset): 
	Remove Vcharset_arabic_iso8859_7.
	* lisp.h: Remove Vcharset_arabic_iso8859_7.
	See commentary in lisp/mule/iso-with-esc.el for motivation. 

2008-08-03  Mats Lidell  <matsl@xemacs.org>

	* config.h.in: Renamed USE_XFT_GAUGE to USE_XFT_GAUGES in sync
	with configure.ac.

2008-07-20  John Paul Wallington  <jpw@pobox.com>

	* nt.c (Fmswindows_short_file_name, Fmswindows_long_file_name):
	Remove their interactive specs; they shouldn't be called interactively.

2008-07-17  Aidan Kehoe  <kehoea@parhasard.net>

	* redisplay.c (init_redisplay): 
	Don't set window-system to 'stream if running noninteractively,
	revert to the documented behaviour. 

2008-07-16  Aidan Kehoe  <kehoea@parhasard.net>

	* lread.c (read_escape): 
	Error if we're handed an over-long hex character escape, something
	which arises reasonably frequently in code written for GNU. 

2008-07-07  Aidan Kehoe  <kehoea@parhasard.net>

	Patch to make it up to the device-specific code whether
	various Lisp functions should be called during device creation,
	not relying on the startup code to decide this. Also, rename
	initial-window-system to initial-device-type (which makes more
	sense in this scheme), always set it. 
	
	* redisplay.c (Vinitial_device_type): New.
	(Vinitial_window_system): Removed.
	Rename initial-window-system to initial-device type, making it
	a stream if we're noninteractive. Update its docstring. 

	* device-x.c (Qmake_device_early_x_entry_point,
	Qmake_device_late_x_entry_point): New. 
	Rename Qinit_pre_x_win, Qinit_post_x_win. 
	(x_init_device): Call #'make-device-early-x-entry-point earlier,
	now we rely on it to find the application class and the
	app-defaults directory. 
	(x_finish_init_device): Call #'make-device-late-x-entry-point with
	the created device. 
	(Vx_app_defaults_directory): Always make this available, to
	simplify code in x-init.el. 

	* device-tty.c (Qmake_device_early_tty_entry_point): New. 
	Rename Qinit_pre_tty_win, rename Qinit_post_tty_win and move to
	frame-tty.c as Qmake_frame_after_init_entry_point.
	(tty_init_device): Call #'make-device-early-tty-entry-point before
	doing anything. 
	* frame-tty.c (Qmake_frame_after_init_entry_point): New.
	* frame-tty.c (tty_after_init_frame): Have it call the
	better-named #'make-frame-after-init-entry-point function
	instead of #'init-post-tty-win (since it's called after frame, not
	device, creation).

	* device-msw.c (Qmake_device_early_mswindows_entry_point, 
	Qmake_device_late_mswindows_entry_point): New.
	Rename Qinit_pre_mswindows_win, Qinit_post_mswindows_win. 
	(mswindows_init_device): Call
	#'make-device-early-mswindows-entry-point here, instead of having
	its predecessor call us. 
	(mswindows_finish_init_device): Call
	#'make-device-early-mswindows-entry-point, for symmetry with the
	other device types (though it's an empty function).

	* device-gtk.c (Qmake_device_early_gtk_entry_point,
	Qmake_device_late_gtk_entry_point): New.
	Rename Qinit_pre_gtk_win, Qinit_post_gtk_win. 
	(gtk_init_device): Call #'make-device-early-gtk-entry-point; don't
	load ~/.xemacs/gtk-options.el ourselves, leave that to lisp.
	(gtk_finish_init_device): Call #'make-device-late-gtk-entry-point
	with the created device as an argument. 

2008-07-10  Aidan Kehoe  <kehoea@parhasard.net>

	* redisplay-msw.c (mswindows_text_width_single_run): 
	Explicitly check for the null font instance, and return zero if
	so. Avoids the crash documented in
	http://mid.xemacs.org/18473.32468.712317.149457@parhasard.net .

2008-05-27  Aidan Kehoe  <kehoea@parhasard.net>

	* editfns.c (Ftranslate_region):  
	Correct a thinko in the last commit; I meant #'get-char-table, not
	#'put-char-table. 

2008-05-25  Aidan Kehoe  <kehoea@parhasard.net>

	* chartab.c (Fmake_char_table): 
	Document the default return values for the various char table
	types. 
	* editfns.c (Ftranslate_region): Document why `generic' char tables
	are preferable to `char' char tables for this function. 

2008-05-21  Aidan Kehoe  <kehoea@parhasard.net>

	* fileio.c (Fmake_symbolic_link):
	Document behaviour when the underlying OS doesn't support symbolic
	links. 

2008-05-13  Aidan Kehoe  <kehoea@parhasard.net>

	* emacs.c (SHEBANG_EXE_PROGNAME_LENGTH):
	Use WEXTSTRING separately on the two concatenated strings,
	avoiding an error on Win32. 

2008-05-13  Aidan Kehoe  <kehoea@parhasard.net>

	* config.h.in (_CRT_NONSTDC_NO_DEPRECATE): 
	Define this, to avoid warnings about using standard POSIX and C9X
	functions on Win32; fixes part of Matthew Persico's problems of
	9ea6aaa80805081832r1a3308e9wb6d2bfea7457379f@mail.gmail.com .

2008-01-20  Aidan Kehoe  <kehoea@parhasard.net>

	* config.h.in: Add SHEBANG_PROGNAME.
	* emacs.c (main_1): 
	If we've been called using SHEBANG_PROGNAME, rewrite our arguments
	to add a --script argument. 
	Also, handle the --script argument by setting noninteractive and
	vanilla. 
	* lread.c (Fload_internal): 
	If the first two characters of a file are #!, replace them with ;!
	before they get to the Lisp reader. 

2008-04-26  Mike Sperber  <mike@xemacs.org>

	* window.c (set_window_pixsize): Round up when we're shrinking,
	down when we're growing * to make sure that pairs of grow / shrink
	meant to * cancel out actually do cancel out.  This fixes a
	problem with `resize-minibuffer-mode' where successive grow/shrink
	actions are meant to cancel out, but previously didn't.

2008-04-05  Aidan Kehoe  <kehoea@parhasard.net>

	* depend: 
	Regenerate with LF line endings, not CRLF. 

2008-03-15  Michael Sperber  <mike@xemacs.org>

	* lread.c (read1): Signal an error on ?\<newline>, thus preventing
	an assertion failure higher up.

2008-03-11  Stephen J. Turnbull  <stephen@xemacs.org>

	* specifier.c (CHECK_INSTANCE_ENTRY): Fix typo in comment.

2008-03-05  Dominique Quatravaux  <domq@cpan.org>

	* glyphs-gtk.c (init_image_instance_from_gdk_image):
	(gtk_colorize_image_instance):
	Use IMAGE_INSTANCE_PIXMAP_MASK (an lvalue), not
	IMAGE_INSTANCE_GTK_MASK (an rvalue).

2008-03-05  Dominique Quatravaux  <domq@cpan.org>

	* console-gtk.c (gtk_perhaps_init_unseen_key_defaults): Fix typo.

2008-02-28  Didier Verna  <didier@xemacs.org>

	* specifier.h (struct specifier_methods): Fix instantiate_method
	prototype to match the changes below.

2008-02-26  Didier Verna  <didier@xemacs.org>

	* specifier.c (CHECK_INSTANCE_ENTRY): See below.
	* specifier.c (specifier_instance_1): Propagate the no_fallback
	flag to ...
	* specifier.c (specifier_instance_from_inst_list): ... here, and
	in turn propagate it to the <specifier>_instantiate methods.
	* glyphs.c (image_instantiate): Handle the no_fallback flag.
	* objects.c (color_instantiate): Ditto.
	* objects.c (font_instantiate): Ditto.
	* objects.c (face_boolean_instantiate): Ditto.
	* specifier.c (specifier_matching_foo_from_inst_list): Update call
	to specifier_instance_from_inst_list accordingly.

2008-02-11  Aidan Kehoe  <kehoea@parhasard.net>

	* search.c (search_buffer):
	In the event that a character is not representable in the buffer,
	fail immediately. Prevents an assertion failure in the code to
	deal with whether Boyer-Moore search can be used for such
	characters.

2008-02-03  Jerry James  <james@xemacs.org>

	* redisplay.c (generate_displayable_area): If a line has been
	generated in place in the dynarray, use Dynarr_increment instead
	of Dynarr_add.
	* redisplay.c (regenerate_window): Ditto.

2008-02-01  Jerry James  <james@xemacs.org>

	* event-Xt.c (emacs_Xt_event_handler): Remove unnecessary call to
	SET_EVENT_MAGIC_X_EVENT.  See xemacs-beta message
	<870180fe080131201011b191ae5g1d70cbd2136f570c@mail.gmail.com>.

2008-01-30  Aidan Kehoe  <kehoea@parhasard.net>

	* search.c (debug-xemacs-searches):
	New variable, available on debug builds. Used in
	tests/automated/case-tests.el.
	(search_buffer): Only store the charset_base for characters with
	translations. Correct some comments, correct some checks. If
	debug_xemacs_searches is non-zero, record which search was used.
	(boyer_moore): Remove an assertion that was incorrect. Remove its
	documentation. Correct an assertion dealing with equivalence
	tables; we may end up looking through the equivalence table if a
	non-ASCII non-case character was searched for.

2008-01-25  Michael Sperber  <mike@xemacs.org>

	* emacs.c (vars_of_emacs): Zap mention of CVS.

2008-01-24 Mike Sperber   <mike@xemacs.org>

	* make-src-depend (PrintDeps): Fix Perl code that no longer works
	with Perl 5.10.

2008-01-21  Aidan Kehoe  <kehoea@parhasard.net>

	* elhash.c (Fputhash): Document the return value.
	(Fclrhash): Ditto.

2007-12-26  Aidan Kehoe  <kehoea@parhasard.net>

	* casetab.c:
	Extend and correct some case table documentation.
	* search.c (search_buffer):
	Correct a bug where only the first entry for a character in the
	case equivalence table was examined in determining if the
	Boyer-Moore search algorithm is appropriate.

	If there are case mappings outside of the charset and row of the
	characters specified in the search string, those case mappings can
	be safely ignored (and Boyer-Moore search can be used) if we know
	from the buffer statistics that the corresponding characters cannot
	occur.

	* search.c (boyer_moore):
	Assert that we haven't been passed a string with varying
	characters sets or rows within character sets. That's what
	simple_search is for.

	In the very rare event that a character in the search string has a
	canonical case mapping that is not in the same character set and
	row, don't try to search for the canonical character, search for
	some other character that is in the the desired character set and
	row. Assert that the case table isn't corrupt.

	Do not search for any character case mappings that cannot possibly
	occur in the buffer, given the buffer metadata about its
	contents.

2008-01-19  Aidan Kehoe  <kehoea@parhasard.net>

	* dired.c (Ffile_attributes): If bignums are available, use them
	for the file size when necessary. If they are not, be clearer
	about the check for whether the file size can fit in a Lisp
	integer.

2008-01-18  Jerry James  <james@xemacs.org>

	* device-x.c (x_init_device): Don't write to path or read from
	format when neither has been initialized.

2008-01-16  Aidan Kehoe  <kehoea@parhasard.net>

	* elhash.c (internal_hash):
	Make short lists with the same contents in a different order hash
	distinctly. Gives better performance for things like three-element
	lists describing colours. Thank you Sebastian Freundt!

2008-01-15  Aidan Kehoe  <kehoea@parhasard.net>

	* print.c (prin1_to_string): New.
	The guts of Fprin1_to_string, without resetting
	Vprint_gensym_alist.
	(Fprin1_to_string):
	Call prin1_to_string, wrapped with RESET_PRINT_GENSYM calls.
	* doprnt.c (emacs_doprnt_1):
	Call prin1_to_string, not Fprin1_to_string (dos veces). Avoids an
	inappropriate reset of print-gensym-alist.

2008-01-12  Aidan Kehoe  <kehoea@parhasard.net>

	* rangetab.c (Fmap_range_table):
	Clarify docstring. (If FUNCTION doesn't touch any range-table
	entry, things will also be correct.)

2008-01-09  Aidan Kehoe  <kehoea@parhasard.net>

	* config.h.in:
	Check that __STDC_VERSION__ is defined before examining its
	value. Eliminates a Cygwin warning.

2008-01-08  Aidan Kehoe  <kehoea@parhasard.net>

	* text.h (MAX_XETCHAR_SIZE): Remove, eliminating a redefinition
	warning on Win32.
	* dumper.c (pdump_load):
	Don't use PATH_MAX_EXTERNAL, instead allocate enough for the path
	+ DUMP_SLACK (space for .dmp and version information), already
	used on Win32 and #defined to be 100.

2008-01-08  Jerry James  <james@xemacs.org>

	* config.h.in (INLINE_HEADER): adapt to C99 inline semantics.

2008-01-07  Jerry James  <james@xemacs.org>

	* xemacs.def.in.in: Clarify the copyright and license.

2008-01-03  Aidan Kehoe  <kehoea@parhasard.net>

	* fileio.c (Fmake_temp_name): Correct the comment to cross
	reference to make-temp-file, and not to this function.

2008-01-03  Stephen J. Turnbull  <stephen@xemacs.org>

	* doc.c (Fbuilt_in_symbol_file): Improve style.

2008-01-02  Aidan Kehoe  <kehoea@parhasard.net>

	* emacs.c (main_1):
	Call the new vars_of_console_gtk function.
	* console-gtk.c (vars_of_console_gtk): New.
	* console-gtk.c (gtk_perhaps_init_unseen_key_defaults):
	Correct the initialisation of the hash table, on the model of the
	MSW and TTY builds.

2008-01-02  Aidan Kehoe  <kehoea@parhasard.net>

	* doc.c (Fbuilt_in_symbol_file):
	Don't check is fun zero in the condition, check that it's not
	nil. Fixes the union build; thank you Stephen.

2008-01-02  Mike Sperber  <mike@xemacs.org>

	* window.c (set_window_pixsize): Factor in the modeline when
	looking at window_min_width.  Remove obsolete comment about
	incorrect use of `default_face_height_and_width'.
	(change_window_height): Remove obsolete comment about
	incorrect use of `default_face_height_and_width'.

2007-12-30  Aidan Kehoe  <kehoea@parhasard.net>

	* doc.c (Fbuilt_in_symbol_file):
	Take a new TYPE argument, specifying whether the function or
	variable definition of the symbol should be searched for.
	Handle built-in macros correctly.

2007-12-24  Aidan Kehoe  <kehoea@parhasard.net>

	* event-xlike-inc.c (x_keysym_to_character):
	* event-xlike-inc.c (gtk_keysym_to_character):
	Unify the typed character if possible, following the current value
	for the unicode precedence list.

2007-12-24  Aidan Kehoe  <kehoea@parhasard.net>

	* symbols.c (Fintern_soft):
	Provide a new optional third argument, DEFAULT, for those who want
	to check if "nil" is a symbol or not. (More realistically, general
	code that may get handed "nil" should probably use this argument.)

2007-12-23  Aidan Kehoe  <kehoea@parhasard.net>

	* objects-tty.c (tty_find_charset_font):
	* objects-msw.c (mswindows_font_spec_matches_charset_stage_2):
	* objects-msw.c (mswindows_font_spec_matches_charset_stage_1):
	* objects-xlike-inc.c (x_font_spec_matches_charset):
	* objects-xlike-inc.c (gtk_font_spec_matches_charset):
	If the charset is not specified when calling the
	font_spec_matches_charset device method, its value is Qnil, not
	Qunbound. See
	http://mid.xemacs.org/E1EfbmW-00029r-5G@iwi191.iwi.uni-sb.de and
	Ben Wing's patch of
	http://mid.xemacs.org/439FA06B.3090007@xemacs.org.

2007-12-22  Aidan Kehoe  <kehoea@parhasard.net>

	* database.c (Fopen_database):
	Actually respect the CODESYS argument; don't require EOL
	autodetection from the coding system, because autodetection mostly
	fails with reads of small amounts of data. It might be possible
	with an implicit #'map-database on open, though I don't think
	that's a great idea.
	* database.c (print_database):
	Give the coding system used for text conversion when printing a
	database object.

2007-12-20  Jerry James  <james@xemacs.org>

	* sound.c: Fix unused parameter warnings when HAVE_ALSA_SOUND.

2007-12-18  Kenny Chien <Kenny.Chien@morganstanley.com>

	* extw-Xt.c (extw_wait_for_response): Don't use undocumented
	internal Xt functions, avoiding inconsistent behavior between
	different Solaris versions.

2007-12-18  Aidan Kehoe  <kehoea@parhasard.net>

	* symbols.c (Fspecial_form_p):
	Following commentary from Jerry James, don't error if not passed a
	subr.

	Flesh out the docstring; give details of what a subr is, what a
	special form is, and why one should probably not write special
	forms oneself.

2007-12-18  Aidan Kehoe  <kehoea@parhasard.net>

	* symbols.c (Fspecial_form_p): New.
	For the use of advice.el, and perhaps other files; is SUBR a
	special form?

2007-12-17  Aidan Kehoe  <kehoea@parhasard.net>

	* doprnt.c (emacs_doprnt_1):
	Add support for formatted printing of both longs and bignums as
	base 2.
	* editfns.c (Fformat):
	Document the new %b escape for #'format.
	* lisp.h:
	Make ulong_to_bit_string available beside long_to_string.
	* lread.c:
	Fix a bug where the integer base was being ignored in certain
	contexts; thank you Sebastian Freundt. This is necessary for
	correct behaviour of #'integer-to-bit-vector and
	#'bit-vector-to-integer, just added to subr.el
	* print.c (ulong_to_bit_string): New.
	Analagous to long_to_string, but used all the time when %b is
	encountered, since we can't pass that to sprintf.

2007-12-12  Aidan Kehoe  <kehoea@parhasard.net>

	* config.h.in:
	Make the results of the checks for
	FcConfigGetRescanInterval, FcConfigSetRescanInterval
	available.
	* font-mgr.h:
	If FcConfigSetRescanInterval and FcConfigGetRescanInterval are not
	available as functions, #define them to map to their old
	misspelled names.
	* font-mgr.c (Ffc_config_get_rescan_interval):
	* font-mgr.c (Ffc_config_set_rescan_interval):
	Use the correct spelling in
	FcConfigGetRescanInterval, FcConfigSetRescanInterval

2007-12-11  Aidan Kehoe  <kehoea@parhasard.net>

	* glyphs-eimage.c:
	Merge Ron Isaacson's patch of
	3ggprxj7ifh.wl_Ron.Isaacson@morganstanley.com , originally from
	Gennady Khokhorin. Prevents library incompatibilities on Win32.

2007-12-11  Aidan Kehoe  <kehoea@parhasard.net>

	* fileio.c (Fsubstitute_in_file_name):
	On encountering non-existent environment variables or incorrect
	syntax for specifying environment variables (as is routine on
	Windows) don't error, instead pass the original strings through.

2007-12-05  Stephen J. Turnbull  <stephen@xemacs.org>

	* search.c (simple_search): Fix underrun in reverse search.
	(search_buffer): Clarify decision to use boyer_moore or not.

2007-12-06  Aidan Kehoe  <kehoea@parhasard.net>

	* tests.c (Ftest_data_format_conversion):
	Move those tests that expect that iso-8859-2 is ISO
	2022-compatible to testing iso-latin-2-with-esc instead.

2007-12-02  Ron Isaacson  <ron.isaacson@morganstanley.com>

	* frame.c (change_frame_size):
	(change_frame_size_1):
	Must reset pending flag per-frame, so do it in the latter.

2007-12-04  Aidan Kehoe  <kehoea@parhasard.net>

	* file-coding.c:
	* file-coding.c (find_coding_system):
	C-accessible version of #'find-coding-system that doesn't
	necessarily call the autoload code, for use in
	#'autoload-coding-system (which we allow to overwrite autoloaded
	coding systems) and make_coding_system_1 (which has to).
	* file-coding.c (Ffind_coding_system):
	Move the implementation to find_coding_system; call that function
	with a do_autoloads argument of 1.
	* file-coding.c (Fautoload_coding_system):
	New.
	* file-coding.c (add_coding_system_to_list_mapper):
	When returning a list of coding systems, don't call the autoload
	code.
	* file-coding.c (make_coding_system_1):
	* file-coding.c (Fcopy_coding_system):
	* file-coding.c (syms_of_file_coding):

	Implement autoloaded coding systems. The form to be evaluated to
	load a given coding system is stored as the value in
	Vcoding_system_hash_table; this form is evaluated if
	find-coding-system is called with the symbol name of the coding
	system as its argument.

	This is also tied in with the POSIX locale infrastructure by means
	of posix-charset-to-coding-system-hash.

2007-11-29  Aidan Kehoe  <kehoea@parhasard.net>

	* mule-ccl.c (ccl_driver):
	Take out a static variable I was using for debugging.

2007-11-26  Aidan Kehoe  <kehoea@parhasard.net>

	* doprnt.c:
	Default to a buffer size of 350 for the sprintf call, but increase
	it if the precision and minwidth indicate that it should be
	bigger. Issue reported by Hans de Graaff; bug originally fixed by
	Sebastian Freundt in SXEmacs following the change I merged on
	2006-11-28. Forks have their disadvantages.

2007-11-11  Mats Lidell  <matsl@xemacs.org>

	* events.h: Based on SXEmacs patch. Support for mouse button 6 to
	26.
	* keymap.h: Ditto.
	* keymap.c: Ditto.

2007-11-15  Aidan Kehoe  <kehoea@parhasard.net>

	* unicode.c (coding_system_type_create_unicode):
	* unicode.c (vars_of_unicode):
	Move the initialisation of Vnumber_of_jit_charsets,
	Vlast_jit_charset_final, Vcharset_descr to an #ifdef MULE block in
	vars_of_unicode. Fixes a build failure reported by Vin
	Shelton--thank you Vin!

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* lread.c (read_unicode_escape):
	Correct the range check for Unicode characters specified with
	source-level escapes.
	* unicode.c:
	* unicode.c (unicode_to_ichar):
	* unicode.c (coding_system_type_create_unicode):
	Correct the dump behaviour for just-in-time Unicode code
	points. Update the docstring for #'unicode-to-char to indicate
	that code points will run out above around 400,000 in a session.

2007-11-14  Aidan Kehoe  <kehoea@parhasard.net>

	* editfns.c (vars_of_editfns):
	Correct the docstring of user-full-name.
	* fileio.c:
	* fileio.c (Fmake_temp_name):
	Document that make-temp-file is available and the best approach to
	this.
	* fileio.c (Fwrite_region_internal):
	Take a new arg, MUSTBENEW, to error if the file to be written
	already exists.
	* fileio.c (auto_save_1):
	Update a call to Fwrite_region_internal to pass the new argument.
	* fileio.c (syms_of_fileio):
	Provide 'excl as a symbol, for the calls to
	write-region-internal.

2007-11-05  Didier Verna  <didier@xemacs.org>

	* glyphs.c (potential_pixmap_file_instanciator): Fix comment
	describing its behavior.
	* glyphs.c (xbm_mask_file_munging): Update semantics of file and
	mask_file arguments to reflect recent changes in
	potential_pixmap_file_instanciator (see patch below).
	* glyphs-x.c (autodetect_normalize): Update call to
	xbm_mask_file_munging to reflect the above change.
	* glyphs-gtk.c (autodetect_normalize): Ditto.

2007-10-10  Didier Verna  <didier@xemacs.org>

	* glyphs.c (potential_pixmap_file_instantiator): Make a difference
	between not being able to locate a pixmap file, and not having a
	console method to do so.
	* glyphs.c (simple_image_type_normalize): Notice that difference,
	and don't err when the method is unavailable.
	* glyphs.c (xbm_normalize): Ditto.
	* glyphs.c (xface_normalize): Ditto.
	* glyphs.c (xpm_normalize): Ditto.
	* glyphs-shared.c (shared_resource_normalize): Ditto.
	* glyphs-x.c (x_locate_pixmap_file): Recognize ~ pathnames as
	fully qualified.

2007-10-03  Didier Verna  <didier@xemacs.org>

	* faces.c (reset_face_cachels): Check for noninteractive mode in
	the assertions below, in which case the cache is unused.

2007-10-03  Didier Verna  <didier@xemacs.org>

	* faces.c (reset_face_cachels): Assert correct order of built-in
	faces additions to the face cache, as per suggestion from Aidan.

2007-10-03  Didier Verna  <didier@xemacs.org>

	Again, fix some DEFAULT_INDEX == 0 assumptions. Actually, properly
	initialize display_line structures.

	* redisplay.h (DISPLAY_LINE_INIT): New macro. Properly initialize
	the default_index field to DEFAULT_INDEX.
	* frame.c (init_frame): Use it.
	* redisplay.c (ensure_modeline_generated): Ditto.
	* redisplay.c (generate_displayable_area): Ditto.
	* redisplay.c (regenerate_window): Ditto.
	* redisplay-output.c (sync_display_line_structs): Ditto.
	* redisplay-output.c (redisplay_output_layout): Ditto.

2004-12-08  Shyamal Prasad  <shyamal@member.fsf.org>

	* editfns.c:
	* editfns.c (Fformat_time_string):
	Added documentation for %z, %g, %G and %V specifiers. This synchs
	up the set of % specifiers for format-time-string with Emacs
	21.3.1. Make copy of static buffer returned by localtime().

	* strftime.c:
	* strftime.c (strftime):
	Implemented %z, %g, %G and %V in a style similar to existing
	implementation of other specifiers.

2007-09-30  Stephen J. Turnbull  <stephen@xemacs.org>

	* search.c (Freplace_match): Improve range-checking on STRBUFFER.

2007-09-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* search.c (Freplace_match): Allow STRBUFFER to specify a
	subexpression when the source is a string.

2007-09-30  Aidan Kehoe  <kehoea@parhasard.net>

	* mule-ccl.c:
	* mule-ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION):
	* mule-ccl.c (ccl_driver):
	Merge Kenichi Handa's 2004-06-12 GNU bugfix, handling EOF in
	ccl_driver correctly.

2007-09-26  Didier Verna  <didier@xemacs.org>

	More fixes similar to previous patch:

	* faces.c (reset_face_cachels): Add informative comment about the
	order of faces cache addition.
	* redisplay.h: Ditto.
	* redisplay-output.c (output_display_line): Don't rely on
	DEFAULT_INDEX being 0.
	* redisplay.c (create_string_text_block): Ditto.

2007-09-26  Didier Verna  <didier@xemacs.org>

	* gutter.c (calculate_gutter_size): Don't hardwire face index to
	0: use DEFAULT_INDEX instead.

2006-11-26  Aidan Kehoe  <kehoea@parhasard.net>

	* eval.c (Fcommand_execute):
	* eval.c (Feval):
	* eval.c (Ffuncall):
	Use the PROFILE_DECLARE macro instead of declaring `struct
	backtrace backtrace' by hand.
	* profile.h:
	* profile.h (PROFILE_EXIT_FUNCTION):
	* profile.h (PROFILE_ENTER_FUNCTION):
	Check do_backtrace before passing the backtrace structure to
	profile_record_about_to_call, profile_record_just_called.

2007-08-28  Aidan Kehoe  <kehoea@parhasard.net>

	* mule-ccl.c (ccl_driver):
	Revert the last change to mule-ccl.c, on objection from SL
	Baur. The change to lisp.h in the same commit sufficed.

2007-08-17  Marcus Crestani  <crestani@xemacs.org>

	* buffer.c (Fkill_buffer):
	* objects-tty.c (tty_finalize_color_instance):
	* objects-tty.c (tty_finalize_font_instance):
	* objects-tty.c (console_type_create_objects_tty):
	* syntax.c (uninit_buffer_syntax_cache): Keep functions that do
	nothing for NEW_GC instead of removing them.

2007-08-18  Vin Shelton  <acs@xemacs.org>

	* frame-msw.c (mswindows_init_frame_3): Restore extra call to
	ShowWindow so that cygwin's run command can be used to open an
	XEmacs session.  Without this, no frame appears when the XEmacs
	process starts up.

2006-10-26  Nix  <nix@esperi.org.uk>

	* dumper.c (pdump_load): Statically allocate a large enough
	exe_path for all conceivable uses. Fixes a buffer overrun.
	* text.h (MAX_XETCHAR_SIZE): Define, for PATH_MAX_EXTERNAL.

2007-08-21  Aidan Kehoe  <kehoea@parhasard.net>

	* mule-ccl.c (ccl_driver):
	Don't pass XCHAR_OR_INT an argument of which the evaluation has
	side effects; thank you Mike Fabian.
	* lisp.h:
	Redundantly, don't multiply evaluate the argument to XCHAR_OR_INT;
	this should prevent the same error in the future.

2007-08-17  Marcus Crestani  <crestani@xemacs.org>

	* mc-alloc.c (L1_INDEX):
	* mc-alloc.c (PAGE_SIZE_ALIGNMENT):
	* mc-alloc.c (set_bit):
	* mc-alloc.c (init_mc_allocator): Use EMACS_UINT with bit
	shifting.

2007-08-15  Marcus Crestani  <crestani@xemacs.org>

	* database.c (dbm_map): Add typecast.
	* database.c (dbm_get): Add typecast.
	* gc.c (gc_state_type): Declare type.
	* objects-tty.c (tty_find_charset_font): Add typecast.
	* objects-xlike-inc.c (count_hyphens): Add typecast.
	* objects-xlike-inc.c (endif): Add typecast.

2007-08-15  Marcus Crestani  <crestani@xemacs.org>

	* input-method-xlib.c (EmacsFreeXIMStyles):
	* lisp.h:
	* process-unix.c (connect_to_file_descriptor):
	* process-unix.c (create_bidirectional_pipe):
	* process-unix.c (unix_create_process):
	* process-unix.c (unix_open_network_stream):
	* process-unix.c (unix_open_multicast_group): Convert pointers to
	EMACS_INTs instead of ints.
	* vdb.c (Ftest_vdb): Print adresses as pointers.

2007-08-14  Marcus Crestani  <crestani@xemacs.org>

	* s/sol2.h: Fix for GCC lossage not needed with SunOS 5.10.

2007-08-15  Marcus Crestani  <crestani@xemacs.org>

	* buffer.c (Fkill_buffer):
	* console-tty.c (free_tty_console_struct):
	* device-gtk.c (free_gtk_device_struct):
	* device-msw.c (mswindows_delete_device):
	* device-msw.c (msprinter_delete_device):
	* device-x.c (free_x_device_struct):
	* device-x.c (x_delete_device):
	* dynarr.c (Dynarr_lisp_realloc):
	* dynarr.c (Dynarr_free):
	* elhash.c:
	* elhash.c (finalize_hash_table):
	* elhash.c (resize_hash_table):
	* elhash.c (pdump_reorganize_hash_table):
	* extents.c (gap_array_delete_marker):
	* frame-gtk.c (gtk_delete_frame):
	* frame-msw.c (mswindows_delete_frame):
	* frame-x.c (x_delete_frame):
	* glyphs.c (check_for_ignored_expose):
	* mc-alloc.c (mc_realloc_1):
	* mc-alloc.h:
	* objects-tty.c (tty_finalize_color_instance):
	* objects-tty.c (tty_finalize_font_instance):
	* objects-tty.c (console_type_create_objects_tty):
	* syntax.c:
	* syntax.c (uninit_buffer_syntax_cache):
	* vdb.c (Ftest_vdb): Remove all calls to mc_free.

2006-12-29  Nix  <nix@esperi.org.uk>

	* gc.c (recompute_need_to_garbage_collect): Avoid numeric
	overflow in percentage calculation.

2007-08-04  Stephen J. Turnbull  <stephen@xemacs.org>

	* sunpro.c (Fut_log_text): Fix mismatched parentheses, reorganize.
	Thanks to Paul Keusemann (for a suggested patch) and Rob McMahon
	for  reporting the issue.

2007-08-08  Aidan Kehoe  <kehoea@parhasard.net>

	* eval.c (Feval): Fix, stick with original error messages instead
	of referring to the indirected function.

	From Sebastian Freundt's mail
	nhtfy9sitjf.fsf@muck.math.tu-berlin.de , Tue Jan 30 12:30:07 UTC
	2007; complements 18005.16378.980760.860724@parhasard.net .

	This reverts the error message when M-: (no-such-function t) RET
	is called to the old "Symbol's function definition is void: ..."
	rather than the recent "Invalid function: #<INTERNAL OBJECT ..."

2007-07-31  Mike Sperber  <mike@xemacs.org>

	* file-coding.c (undecided_convert): Kludge to prevent infinite
	recursion.
	* file-coding.c (detected_coding_system): Change default from
	raw-text to binary.

2007-08-04  Aidan Kehoe  <kehoea@parhasard.net>

	* charset.h:
	* charset.h (enum unicode_type):
	Add UNICODE_UTF_32.
	* lisp.h:
	Add Qutf_32.
	* lread.c (read_unicode_escape):
	Error on an invalid Unicode escape; error on no mapping, as GNU does.

	* mule-coding.c:
	* mule-coding.c (dynarr_add_2022_one_dimension):
	* mule-coding.c (dynarr_add_2022_two_dimensions):
	* mule-coding.c (struct iso2022_coding_stream):
	* mule-coding.c (decode_unicode_char):
	* mule-coding.c (indicate_invalid_utf_8):
	* mule-coding.c (iso2022_decode):
	* unicode.c:
	* unicode.c (struct unicode_coding_stream):
	* unicode.c (decode_unicode_char):
	* unicode.c (DECODE_ERROR_OCTET):
	* unicode.c (indicate_invalid_utf_8):
	* unicode.c (encode_unicode_char_1):
	* unicode.c (encode_unicode_char):
	* unicode.c (unicode_convert):
	* unicode.c (unicode_putprop):
	* unicode.c (unicode_getprop):
	* unicode.c (syms_of_unicode):
	Make UTF-8 and UTF-16 handling more robust; indicate error
	sequences when decoding, passing the octets as distinct from the
	corresponding ISO8859-1 characters, and (by default) writing them
	to disk on encoding. Don't accept over-long UTF-8 sequences, codes
	>= #x110000, or UTF-16 surrogates on reading in the utf-8 coding
	system; represent them as error sequences.

	Do accept code points above #x110000 in the ISO IR 196 handling,
	since we decode Unicode error sequences to "Unicode" code points
	starting at 0x200000, and will need to save them as such in
	escape-quoted. Do not accept over-long UTF-8 sequences or UTF-16
	surrogates in escape-quoted.

	This change means that when a non-UTF-8 file is opened as UTF-8,
	one change made, and immediately saved, the non-ASCII characters
	are not corrupted. In Europe, this is a distinct win.

	Add UCS-4, UTF-32 as coding systems.

2007-07-26  Aidan Kehoe  <kehoea@parhasard.net>

	* mule-ccl.c (ccl_driver):
	op is an integer, not a Lisp_Object; don't use it to temporarily
	store a Lisp_Object. This change fixes the union build; thank you
	for the report, Robert Delius Royar.

2007-07-23  Aidan Kehoe  <kehoea@parhasard.net>

	* text.c:
	Backslash a parenthesis at the start of a line, for the sake of
	our font lock engine.

2007-07-21  Aidan Kehoe  <kehoea@parhasard.net>

	* elhash.c (struct Lisp_Hash_Table):
	* elhash.c (HTENTRY_CLEAR_P):
	* elhash.c (find_htentry):
	* elhash.h:
	* elhash.h (htentry):
	Move struct Lisp_Hash_Table, HTENTRY_CLEAR_P, struct htentry to
	elhash.h, since mule-ccl.c needs to use them. Ditto adding a
	declaration for find_htentry to elhash.h, and removing the static
	from its declaration in elhash.c

	* file-coding.c:
	Add a backslash at the beginning of a line starting with a
	parenthesis, for the sake of our font lock engine.

	* mule-ccl.c:
	* mule-ccl.c (CCL_LookupIntConstTbl):
	* mule-ccl.c (CCL_WRITE_STRING):
	* mule-ccl.c (POSSIBLE_LEADING_BYTE_P):
	Fix a bug where the charset ID of ASCII was not recognised as
	being a possible leading byte.
	* mule-ccl.c (CCL_MAKE_CHAR):
	Take Mule character arguments in the same format as GNU.
	* mule-ccl.c (CCL_DEBUG):
	* mule-ccl.c (ccl_driver):
	* mule-ccl.c (resolve_symbol_ccl_program):
	* mule-ccl.c (Fccl_execute):
	* mule-ccl.c (vars_of_mule_ccl):
	Add Dave Love's hash table lookup CCL code, which has been in GNU
	for years.

	Move mule-to-unicode to accept its argument in the same format as
	write-multibyte-character.

	Move to accepting characters as well as integers in lots of
	places; with XEmacs (and even with GNU Emacs), where the
	character-integer map is not constant from one invocation to the
	next, it makes sense for CCL programs with character literals to
	accept those literals as characters, not integers.

	If we're a debug build, allow access to ccl-program-table from
	Lisp, which can make debugging things easier.

	Take out font-ccl-encoder-alist, since it was never implemented,
	and was not ever a stellar idea.

	Provide translation-hash-table-vector, as in GNU.

2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* event-unixoid.c (event_stream_unixoid_create_io_streams):
	* process-unix.c (unix_init_process_io_handles):
	Cast out bogus warnings about 64-bit value truncation.

2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* linuxplay.c (linux_play_data_or_file): More 64-bit tweaking, and
	a typo fix.

2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* sysdep.h (environ): Needs to be in C_DECLS for C++ build.

2007-06-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* compiler.h: Try to use USED with more compilers.  Thanks, Jerry!

2007-06-22  Aidan Kehoe  <kehoea@parhasard.net>

	* eval.c (restore_int):
	* eval.c (record_unwind_protect_restoring_int):
	Conditionalise the munging of a C integer into a void pointer on
	whether it's necessary at compile time, using INT_VALBITS (which
	describes how many value bits a Lisp integer has) and INTBITS
	(describing how many value bits a C integer has).

2007-05-24  Aidan Kehoe  <kehoea@parhasard.net>

	* eval.c (Feval):
	Small optimisations from Sebastian Freundt's SXEmacs work; don't
	do the unnecessary book-keeping in the trivial cases, only look
	for an indirect function if the stored function is a bound
	symbol.

2007-05-24  Aidan Kehoe  <kehoea@parhasard.net>

	* free-hook.c (check_free):
	* lisp.h:
	* lisp.h (xfree):
	Inspired by some of Sebastian Freundt's SXEmacs work, use a 64-bit
	constant on 64-bit platforms when making sure pointers haven't
	been freed twice.

2007-05-22  Ville Skyttä  <scop@xemacs.org>

	* Makefile.in.in ($(LISP)/finder-inf.el): Set lisp-directory
	to $(LISP) to ensure we're working with the correct finder*.

ChangeLog Entries from tests/ChangeLog

goto announcement, summary, changes


2009-05-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.29 "garbanzo" is released.

2009-02-22  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el: 
	Use more realistic tests for the escape-quoted mule encoding
	checks; update a comment, change a Known-Bug-Expect-Failure to a
	normal test now that we've addressed an old bug. 

2009-02-18  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/query-coding-tests.el : Check that
	#'check-coding-systems-region returns null on success here, not t.

2009-02-17  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el (featurep): 
	Add a missing parenthesis here, thank you
	Stephen. Cf. http://mid.xemacs.org/871vtzrxey.fsf@xemacs.org .

2009-02-10  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/lisp-tests.el : 
	Check that #$ is not modifiable from Lisp, and that load-file-name
	is modifiable from Lisp.

2009-02-07  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/query-coding-tests.el: 
	Add FAILING-CASE arguments to the Assert calls, making #'q-c-debug
	mostly unnecessary. Remove #'q-c-debug.
	Add new tests that use the IGNORE-INVALID-SEQUENCESP argument to
	#'query-coding-region; rework the existing ones to respect it.

2009-01-31  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el: 
	Test little-endian Unicode surrogates too. 

2009-01-18  Aidan Kehoe  <kehoea@parhasard.net>
	
	* automated/lisp-tests.el: (char-table-with-string): 
	That was remiss of me, I should have checked before commiting that
	last changed. Fixed, the char tables are now actually printed. 

2009-01-18  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/lisp-tests.el: 
	Check that a bug I fixed in char table printing is really gone. 

2009-01-11  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/lisp-tests.el (): 
	Test #'subr-arity, recently added to subr.el.

2009-01-03  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/ccl-tests.el (ccl-test-setup): 
	Use sane CCL programs for decoding and encoding with the test CCL
	coding system by default. Correct a spelling in the docstring, add
	a safe-chars property so that we don't confuse
	query-coding-tests.el. 
	(ccl-test-suites): 
	Explicitly re-initialise the CCL programs for the test coding
	system once finished. 

2008-12-28  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/query-coding-tests.el: 
	Add tests for #'unencodable-char-position,
	#'check-coding-systems-region, #'encode-coding-char. Remove some
	debugging statements.

2008-12-28  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/query-coding-tests.el: 
	New file, testing the functionality of #'query-coding-region and
	#'query-coding-string.

2008-09-27  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/regexp-tests.el: Add test for at_dot regexp.

2008-09-27  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/regexp-tests.el: `with-string-as-buffer-contents'
	leaves point at end of buffer, so must move point to beginning.

2008-08-27  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/regexp-tests.el: 
	Add a few basic #'skip-chars-forward, #'skip-chars-backward
	tests. 

2008-08-10  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el (featurep): Update the list of character
	sets in etc/HELLO to reflect that we've deleted the
	XEmacs-specific Arabic character sets.

2008-05-21  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el (featurep): 
	Make sure that working symlinks are available before testing
	their functionality.
	Also, don't bomb out on deleting the other temporary files if
	deleting the first threw an error. 

2008-02-14  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/case-tests.el (let):
	Correct and extend the previous test, thank you Stephen. 

2008-02-11  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/case-tests.el (Assert): 
	New test case; thank you Michael Sperber. 

2008-01-30  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/case-tests.el (pristine-case-table): 
	New var, reflecting the standard case table before case-table.el
	messes with it. 
	* automated/case-tests.el: 
	Call Skip-Test-Unless correctly, following Vin's report of
	20a807210801300635v7533d26rdb32a8d82fb4239b@mail.gmail.com . 
	Use pristine-case-table, add in a couple more tests.
	* automated/test-harness.el (test-harness-from-buffer): 
	Update the error message in the light of tests skipped for other
	reasons (not to do with absent packages). In this case, because
	we're exposing diagnostics in a DEBUG_XEMACS build that are no
	appropriate to expose to non-DEBUG_XEMACS builds. 

2008-01-30  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/case-tests.el:
	Check for a bug Mike Sperber reported; check algorithms used, if
	available. 

2008-01-16  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el (test-file-name): 
	Call #'make-temp-file now it's available. Remove a long comment
	saying, essentially, that it should be used, not
	#'make-temp-name. 

2008-01-16  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/hash-table-tests.el: 
	Assert that two short lists with the same contents in distinct
	orders hash differently. 

2008-01-15  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/lisp-tests.el (literal-with-uninterned):
	Use ?\x syntax for Latin-1 characters, don't assume that the file
	will be read as UTF-8. 

2008-01-15  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/lisp-tests.el (thing): 
	Check that printing a hash table literal doesn't clear
	print-gensym-alist. 

2008-01-03  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/symbol-tests.el (Symbol documentation): Add tests to
	check documentation extraction.

2007-12-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/test-harness.el (test-harness-test-compiled):
	Improve docstring.

	* automated/weak-tests.el (test-harness-test-compiled):
	Remove debugging code.

2007-12-21  Stephen J. Turnbull  <stephen@xemacs.org>

	* reproduce-crashes.el: Renamed from reproduce-bugs.el.  Update to-do.

2007-12-21  Stephen J. Turnbull  <stephen@xemacs.org>

	* reproduce-bugs.el:  Reorganize.  Minor cosmetic improvements.
	Update to-do list.
	(defbug):  Include status and docstring in value.
	(bug-hashtable):  Document the table format.
	(reproduce-bug):  Handle revised table format.  Remove broken
	autoload cookie.
	(describe-bug):  New function.  Pop up description of one bug.
	(list-bugs):  New function.  Pop up brief descriptions of all bugs.
	(1,2,3,4,5,6,7,8,9,10,11):  (Re)number all bugs.  Move comments to
	docstrings.

2007-12-11  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/syntax-tests.el:
	Check that substitute-in-file-name doesn't error when handed
	non-existing environment variables, passing through the specified
	string instead. Also check that existing environment variables are
	correctly substituted. Also check that double slashes in the
	middle of a path name are treated as re-starting the path. 

2007-12-10  Stephen J. Turnbull  <stephen@xemacs.org>

	* reproduce-bugs.el (reproduce-bug): Add bug 10, crash in search.

2007-12-10  Stephen J. Turnbull  <stephen@xemacs.org>

	* reproduce-bugs.el: Add some commentary.
	Number the two unnumbered bugs.
	Comment out the keybinding.

2007-12-06  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el:
	Add a Known-Bug-Expect-Error call testing and documenting that we
	don't support all of the Unicode code space in a single session.
	* automated/test-harness.el (Known-Bug-Expect-Error):
	Provide Known-Bug-Expect-Error, analagous to
	Known-Bug-Expect-Failure and Check-Error.
	* automated/test-harness.el (Silence-Message):
	Dynamically bind the function definition of #'clear-message, as
	well as that of #'append-message, to nil.

2007-12-04  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el (featurep):
	The native coding system specified in the language environment can
	be either a list (which we used to handle fine) or a single coding
	system expression (which we failed on). Handle the latter case. 

2007-11-29  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el:
	Check the eight-bit fixed-width CCL coding systems for round-trip
	compatibility with themselves. 

2007-11-26  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/lisp-tests.el:
	Check that a couple of previously problematic calls to #'format
	succeed.

2007-09-30  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/os-tests.el: Suppress `executable-find' lossage.

	* automated/regexp-tests.el (replace-regexp-in-string):
	New tests for error conditions.

	* automated/test-harness.el (test-harness-from-buffer): Comment
	about inability to check the FROB in invalid_argument.

2007-09-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/regexp-tests.el (replace-regexp-in-string):
	New tests for correct operation.  Comment need for `replace-match'
	tests.

2007-08-21  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/mule-tests.el (test-chars):
	There are now 2^21 possible characters under Mule, not 2^19.
	* automated/mule-tests.el (test-file-name):
	Call #'make-temp-name instead of writing the file needed for the
	rever-buffer test to the user's home directory. Wrap the following
	#'save-buffer in a Silence-Message call.
	* automated/mule-tests.el:
	In the language environment tests, check that a given input method
	exists before trying to activate it. If there are installed input
	methods, assert that every input method specified in any language
	environment exists. If the native-coding-system of the language
	environment is specified as a function, don't assert that it is a
	coding system. 

	In the byte-compiler coding cookie tests, call #'read at runtime
	on strings with non-Latin-1 Unicode escapes. This avoids errors
	when make check is run under a non-Mule XEmacs, where unavailable
	Unicode escapes throw an error in the Lisp reader.

	Add a new Known-Bug-Expect-Failure call for a bug that occurred to
	me yesterday; if non-Latin-1 is generated in an eval-when-compile
	clause, that non-ASCII may be trashed and the compiled code
	incorrectly saved as no-conversion if no other non-Latin-1 exists
	in the input buffer. Add a comment giving more details of the bug
	and how one might fix it. 

2007-06-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/mule-tests.el (buffer-modified-p): Test after revert.

2007-06-21  Aidan Kehoe  <kehoea@parhasard.net>

	* gtk/event-stream-tests.el (timer-check):
	'(lambda ...) -> #'(lambda ..), for the sake of style and the byte
	compiler.

2007-06-21  Aidan Kehoe  <kehoea@parhasard.net>

	* automated/weak-tests.el (p):
	* automated/weak-tests.el (inner_cons):
	'(lambda ...) -> #'(lambda ..), for the sake of style and the byte
	compiler.

goto announcement, summary, changes

 
 

Conform with <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Automatically validated by PSGML