view CHANGES-beta @ 872:79c6ff3eef26

[xemacs-hg @ 2002-06-20 21:18:01 by ben] font changes etc.; some 21.4 changes mule/mule-msw-init-late.el: Specify charset->windows-registry conversion. mule/mule-x-init.el: Delete extra mule font additions here. Put them in faces.c. cl-macs.el: Document better. font-lock.el: Move Lisp function regexp to lisp-mode.el. lisp-mode.el: Various indentation fixes: Handle flet functions better. Handle argument lists in defuns and flets. Handle quoted lists, e.g. property lists -- don't indent like function calls. Distinguish between lambdas and other lists. lisp-mode.el: Handle this form. faces.el, font-menu.el, font.el, gtk-faces.el, msw-faces.el, msw-font-menu.el, x-faces.el, x-init.el: Major overhaul of face-handling code: -- Fix lots of bogus code in msw-faces.el, msw-font-menu.el, font-menu.el that was "truenaming" font specs -- i.e. in the process of frobbing a particular field in a general user-specified font spec with wildcarded fields, sticking in particular values for all the remaining wildcarded fields. This bug was rampant everywhere except in x-faces.el (the oldest and only correctly written code). This also means that we need to work with font names at all times and not font instances, because a font instance is essentially a truenamed font. -- Total rewrite of extremely junky code in msw-faces.el. Work with names as well as font instances, and return names; stop truenaming when canonicalizing and frobbing; fix handling of the combined style field, i.e. weight/slant (also fixed in font.el). -- Totally rewrite the frobbing functions in faces.el. This time, we frob all the instantiators rather than just computing a single instance value and working backwards. That way, e.g., `bold' will work for all charsets that have bold available, rather than only for whatever charset was part of the computed font instance (another example of the truename virus). Also fix up code to look at the fallbacks (all of them) when no global value present, so we don't need to put something in the global value. Intelligently handle a request to frob a buffer locale, rather than signalling an error. When frobbing instantiators, try hard to figure out what device type is associated with them, and frob each according to its own proper device type. Correctly handle inheritance vectors given as instantiators. Preserve existing tags when putting back frobbed instantiators. Extract out general specifier-frobbing code into specifier.el. Document everything cleanly. Do lots of other things better, etc. -- Don't duplicatively set a global specification for the default font -- it's already in the fallback and we no longer need a default global specification present. Delete various code in x-faces.el and msw-faces.el that duplicated the lists of fonts in faces.c. -- init-global-faces was not being called at all under MS Windows! Major bogosity. That caused device-specific values to get stuck into all the fonts, making it very hard to change them -- setting global specs caused nothing to happen. -- Correct weight names in font.el. -- Lots more font fixups in objects*.c. Printer.el: Warning fix. specifier.el: Add more args to map-specifier. Add various "heuristic" specifier functions to aid in creation of specifier-munging code such as in faces.el. subr.el: New functions. lwlib.c: Fix warning. config.inc.samp: Clean up, add args to control fastcall (not yet supported! the changes needed are in another ws of mine), profile support, vc6 support, union-type. xemacs.dsp, xemacs.mak: Semi-major overhaul. Fix bug where dump-id was always getting recomputed, forcing a redump even when nothing changed. Add support for fastcall. Support edit-and-continue (on by default) with vc6. Use incremental linking when doing a debug compilation. Add support for profiling. Consolidate the various debug flags. Partial support for "batch-compiling" -- compiling many files on a single invocation of the compiler. Doesn't seem to help that much for me, so it's not finished or enabled by default. Remove HAVE_MSW_C_DIRED, we always do. Correct some sloppy use of directories. s/cygwin32.h: Allow pdump to work under Cygwin (mmap is broken, so need to undefine HAVE_MMAP). s/win32-common.h, s/windowsnt.h: Support for fastcall. Add WIN32_ANY for identifying all Win32 variants (Cygwin, native, MinGW). Both of these are properly used in another ws. alloc.c, balloon-x.c, buffer.c, bytecode.c, callint.c, cm.c, cmdloop.c, cmds.c, console-gtk.c, console-gtk.h, console-msw.c, console-msw.h, console-stream.c, console-stream.h, console-tty.c, console-tty.h, console-x.c, console-x.h, console.c, console.h, device-gtk.c, device-msw.c, device-tty.c, device-x.c, device.c, device.h, devslots.h, dialog-gtk.c, dialog-msw.c, dialog-x.c, dialog.c, dired-msw.c, editfns.c, emacs.c, event-Xt.c, event-gtk.c, event-msw.c, event-stream.c, event-tty.c, event-unixoid.c, events.c, extents.c, extents.h, faces.c, fileio.c, fns.c, frame-gtk.c, frame-msw.c, frame-tty.c, frame-x.c, frame.c, frame.h, glyphs-eimage.c, glyphs-gtk.c, glyphs-msw.c, glyphs-widget.c, glyphs-x.c, glyphs.c, glyphs.h, gui-gtk.c, gui-msw.c, gui-x.c, gui.c, gutter.c, input-method-xlib.c, intl-encap-win32.c, intl-win32.c, keymap.c, lisp.h, macros.c, menubar-gtk.c, menubar-msw.c, menubar-x.c, menubar.c, menubar.h, minibuf.c, mule-charset.c, nt.c, objects-gtk.c, objects-gtk.h, objects-msw.c, objects-msw.h, objects-tty.c, objects-tty.h, objects-x.c, objects-x.h, objects.c, objects.h, postgresql.c, print.c, process.h, redisplay-gtk.c, redisplay-msw.c, redisplay-output.c, redisplay-tty.c, redisplay-x.c, redisplay.c, redisplay.h, scrollbar-gtk.c, scrollbar-msw.c, scrollbar-x.c, scrollbar.c, select-gtk.c, select-msw.c, select-x.c, select.c, signal.c, sound.c, specifier.c, symbols.c, syntax.c, sysdep.c, syssignal.h, syswindows.h, toolbar-common.c, toolbar-gtk.c, toolbar-msw.c, toolbar-x.c, toolbar.c, unicode.c, window.c, window.h: The following are the major changes made: (1) Separation of various header files into an external and an internal version, similar to the existing separation of process.h and procimpl.h. Eventually this should be done for all Lisp objects. The external version has the same name as currently; the internal adds -impl. The external file has XFOO() macros for objects, but the structure is opaque and defined only in the internal file. It's now reasonable to move all prototypes in lisp.h into the appropriate external file, and this should be done. Currently, separation has been done on extents.h, objects*.h, console.h, device.h, frame.h, and window.h. For c/d/f/w, the most basic properties are available in the external header file, with the macros resolving to functions. In the internal header file, the macros are redefined to directly access the structure. Also, the global MARK_FOO_CHANGED macros have been made into functions so that they can be accessed without needing to include lots of -impl headers -- they are used in almost exclusively in non-time-critical functions, and take up enough time that the function overhead will be negligible. Similarly, the function overhead from making the basic properties mentioned above into functions is negligible, and code that does heavy accessing of c/d/f/w structures inevitably ends up needing the internal header files, anyway. (2) More face changes. -- Major rewrite of objects-msw.c. Now handles wildcard specs properly, rather than "truenaming" (or even worse, signalling an error, which previously happened with some of the fallbacks if you tried to use them in make-font-instance!). -- Split charset matching of fonts into two stages -- one to find a font specifically designed for a particular charset (by examining its registry), the second to find a Unicode font that can support the charset. This needs to proceed as two complete, separate instantiations in order to work properly (otherwise many of the fonts in the HELLO page look wrong). This should also make it easy to support iso10646 (Unicode) fonts under X. -- All default values for fonts are now completely specified in the fallbacks. Stuff from mule-x-init.el has all been moved here, merged with the existing specs, and totally rethought so you get sensible results. (HELLO now looks much better!). -- Generalize the "default X/GTK device" stuff into a per-device-type "default device". -- Add mswindows-{set-}charset-registry. In time, charset<->code-page conversion functions will be removed. -- Wrap protective code around calls to compute device specifier tags, and do this computation before calling the face initialization code because the latter may need these tags to be correctly updated. (3) Other changes. EmacsFrame.c, glyphs-msw.c, eval.c, gui-x.c, intl-encap-win32.c, search.c, signal.c, toolbar-msw.c, unicode.c: Warning fixes. config.h.in: #undefs meant to be frobbed by configure *MUST* go inside of #ifndef WIN32_NO_CONFIGURE, and everything else *MUST* go outside! eval.c: Let detailed backtraces be detailed. specifier.c: Don't override user's print-string-length/print-length settings. glyphs.c: New function image-instance-instantiator. config.h.in, sysdep.c: Changes for fastcall. sysdep.c, nt.c: Fix up a previous botched patch that tried to add support for both EEXIST and EACCES. IF THE BOTCHED PATCH WENT INTO 21.4, THIS FIXUP NEEDS TO GO IN, TOO. search.c: Fix *evil* crash due to incorrect synching of syntax-cache code with 21.1. THIS SHOULD GO INTO 21.4.
author ben
date Thu, 20 Jun 2002 21:19:10 +0000
parents 9b6b28d87550
children bf76db2b446e
line wrap: on
line source

to 21.5.6 "bok choi"

UI changes and runtime bugs

-- Fix: process waiting on MS Windows -- Mike Alexander
-- Fix: (maybe) GTK progress bar crashes at startup -- William M. Perry
-- Fix: detect printer set up for metric units -- Jonathan Harris
-- Fix: add_charsets_to_precedence_list -- IKEYAMA Tomonori
-- Change: misc menubar -- John Paul Wallington
-- Add: auto-mode-alist: GNUmakefile is a Makefile, "system default"
   Xdefaults and friends get xrdb-mode -- Ville Skytt,Ad(B
-- From  Ben Wing  <ben@xemacs.org>.
  -- Fix: init_process_io_handles obeys coding-system-for-{read,write}.
  -- Fix: bug in md5 handling.
  -- Fix: data corruption in print.c from print_depth becoming negative.
  -- Fix: "nil channel" in MS Windows magic events crashes.
  -- Fix: (tentative) redisplay crash freeing display line structures.
  -- Fix: (tentative) TTYs don't work.
  -- Fix: too-small SHEAP_ADJUSTMENT on Cygwin (can't run temacs).
  -- Fix: hscroll/truncation/continuation glyphs causing "jumping lines".
  -- Fix: problem with text files with no newlines ().
  -- Fix: errors when opening (e.g.) mule-ucs/lisp/reldata/uiso8859-6.el.
  -- Fix: (partial) excess memory use in Unicode processing, esp. at startup
  -- Fix: sample.init.el (grep-all-files-in-current-directory-and-below):
     Missing argument.
  -- Fix: smoother scrolling on MS Windows.
  -- Change: Move the menubar frame commands from the View menu to
     the File menu, to be consistent with how most other programs do
     things.  Move less-used revert/recover items to a submenu.  Make
     "recover" not prompt for a file, but recover the current buffer.
  -- Change: implementation of matching font to charset.
  -- Change: default MS Windows font to Lucida Console, increase
     default frame size on Windows to 50 lines.
  -- Add: runtime flag -no-packages inhibits adding package lisp to load-path.
  -- Add: much functionality to behavior.el.
  -- Add: more Unicode translation files.

Documentation

-- Add: define STACK_TRACE_EYE_CATCHER for Windows -- Jonathan Harris
-- Texinfo (internals): Add xref in emodules.texi -- Stephen J. Turnbull
-- Texinfo (lispref): Unicode Support, Behaviors -- Stephen J. Turnbull
-- Texinfo (user): Behaviors -- Stephen J. Turnbull
-- Improve auto-mode-alist -- Simon Josefsson
-- Docstrings: completion-ignored-extensions, file-name-all-completions --
   John H. Palmieri
-- From  Ben Wing  <ben@xemacs.org>.
  -- New ChangeLog for ./etc/.
  -- Updated: NEWS.
  -- Improve docs (developers): tree layout, merging branch to trunk.
  -- Improve docs (lispref): CL loop, menu sorting, sound-default-alist
  -- Obsoleted Lisp: 'sref, char-bytes.
  -- Internals: Revamped the sound documentation.
-- Typo fixes -- Adrian Aichner

Lisp API

-- From  Ben Wing  <ben@xemacs.org>.
  -- Fixed: bug in keymap iteration in cl-macs.el.
  -- Fix: bugs in language environments English and Ethiopic
  -- Change: lisp/mule/*.el -- convert to XEmacs style.
  -- Add (synch to GNU): get-window-with-predicate, ALL-FRAMES,
     some-window, count-windows, window-safely-shrinkable-p,
     count-screen-lines, shrink-window-if-larger-than-buffer
  -- Add (line-oriented mouse selection):  New functions
     mouse-consolidated-yank mouse-yank, mouse-track,
     default-mouse-track-normalize-point,
     default-mouse-track-return-dragged-selection, mouse-track-by-lines,
     mouse-track-insert mouse-track-adjust-by-lines, mouse-track-insert-1,
     mouse-track-insert-by-lines, mouse-track-delete-and-insert-by-lines
  -- Add (warnings): Add a consistent way to execute code,
     catching all errors and displaying a warning, including a
     backtrace showing where the error occurred.  New functions
     backtrace-in-condition-handler-eliminating-handler, with-trapping-errors,
     view-warnings.  Integrate show-message-log with view-lossage.
  -- Add (debugging): New functions  debug-print-1, debug-print,
     debug-backtrace.
  -- Add (misc utils): map-plist, show-memory-usage, compare-strings,
     truncate-string-to-width, variable require-prints-loading-message.
  -- Add many languages and charsets.
  -- Add (autoloads): Support defun*, defmacro*.
  -- Add (byte-compiler): with-boundp, if-boundp, when-boundp,
     and-boundp, declare-boundp, globally-declare-boundp, with-fboundp,
     if-fboundp, when-fboundp, and-fboundp, declare-fboundp,
     globally-declare-fboundp, with-byte-compiler-warnings-suppressed
  -- Warning fixes.

Internals

-- Add: Get & SetLocaleInfo from winnls.h -- Jonathan Harris
-- Add: codepages latin-jisx0201, japanese-jisx0212, remove
   japanese-jisx0208-1978 -- IKEYAMA Tomonori
-- Fix: Use wrap_emacs_*(), not wrap_*() for gtk_boxed, gtk_object, ffi --
   William M. Perry
-- Fix: I18N APIs on windows -- Jonathan Harris
-- Fix: typos causing GTK build errors -- Malcolm Purvis
-- Warning fixes -- William M. Perry
-- From  Ben Wing  <ben@xemacs.org>.
  -- Change: error-checking macros: ERROR_CHECK_TYPECHECK -> ERROR_CHECK_TYPES,
     ERROR_CHECK_CHARBPOS -> ERROR_CHECK_TEXT, add ERROR_CHECK_DISPLAY,
     ERROR_CHECK_STRUCTURES.
  -- Change: Redo print_*().
  -- Change: character-to-unicode char-to-unicode; also unicode-to-char{acter}.
  -- Change: Replace XSETFOO with wrap_foo().
  -- Change: symbol->name a Lisp_Object, not Lisp_String *.  Eliminate latter.
  -- Change: rearrange init calls in emacs.c.
  -- Add: (partial) category API compatible with FSF.
  -- Add: (partial) GC triggering based on percentage of total memory
     usage.  Not currently activated.
  -- Add: (partial) sledgehammer redisplay check.
  -- Add: error-behavior ERROR_ME_DEBUG_WARN.
  -- Add: more error checking on Dynarrs.
  -- Add: assert_at_line(), for use in asserts inside of inline functions.
  -- Add: resizing_buffer_to_lisp_string().
  -- Add: function get_charset_limits.
  -- Add: (tentative, may go away) foo_checking_assert_at_line() macros.
  -- Add: new event methods for printing, comparing, and hashing magic
     events, to avoid event-type-specific stuff.
  -- Fix eifree().  Use Eistrings in various places
  -- Fix: bugs in chartab implementation and doc strings.

Build

-- Fix: make-mswin-unicode.pl -- Ben Wing, Jonathan Harris
-- Fix: .texi files for Cygwin makeinfo -- Jonathan Harris
-- Fix: Perl quoting in Windows build -- Jonathan Harris, Ben Wing
-- Fix: Generate more intermediate files in obj subdirectory -- Jonathan Harris
-- From Ben Wing  <ben@xemacs.org>.
  -- Fix: require errors in behavior.el
  -- Fix: compile error when TTY-only.
  -- Change: update check_cygwin_setup.sh for current Cygwin reality.
  -- Change: Makefile regenerates itself if out of date.
  -- Change: improve error-checking config for Windows
  -- Add: HAVE_SYS_TIMES_H config.h #define.
  -- Add: new error-checking types in configure.
  -- Add: .cvsignore

to 21.5.5 "beets"

Documentation
-- new external-widget example node -- Stephen Turnbull
-- new packaging manual nodes -- Steve Youngs, Stephen Turnbull
-- new Swedish TUTORIAL -- Mats Lidell
-- update etc/BETA -- Jarl Friis, Stephen Turnbull
-- update FAQ, new FAQs -- Adrian Aichner, Stephen Turnbull
-- fixes for build-breaking typos in Info docs -- Jeff Miller, Darryl Okahata
-- misc comment and docstring improvements -- Valdis Kletnieks
   Pretty much all the code fixers fixed docs too:  keep up the good
   work, folks!

UI
-- fix switching between virtual desktops on MS Windows -- Adrian Aichner
-- improve Customize: modifier-keys-sticky-time, abbrev-mode-line-string,
   overwrite-mode-line-string, auto-fill-mode-line-string,
   defining-kbd-macro-mode-line-string -- John Paul Wallington
-- improve GTK clipboard handling -- Eric Gillespie, Jr.
-- improve Info dir - generate file if non-existent -- Michael Sperber
-- improve printer handling -- Adrian Aichner, Bj,Av(Brn Torkelsson
-- support GUI toolbar shadow thickness adjustment -- Bill Perry
-- support ISO 8859/15 (Euro) -- Stephen Turnbull
-- support Sieve in auto-mode-alist -- Simon Josefsson
-- suppress ask-user-about-supersession-threat if CLASH_DETECTION -- Daiki Ueno

Lisp API
-- synch from GNU Emacs 21: quit-window -- Christoph Wedler

Internals
-- improve dead console handling in post-command code -- Ben Wing
-- improve handling when XOpenDevice calls error handler -- Mike Sperber
-- move disabled-command-loop to C -- Jan Vroonhof

Build
-- improve Athena widgets detection -- Jan Vroonhof

to 21.5.4 "bamboo"
-- auto-mode support .9 files as man pages -- Michael Sperber
-- auto-mode support configure.ac as m4 -- Edward M. Lee
-- bind `replace-rectangle' to `C-x r p' -- Didier Verna
-- bind `hyper-apropos-find-variable' (new) to `v' in hyper-apropos-help-map
   -- David A. Panariti
-- bind `delete-other-frames' to `C-x 5 1' -- John Paul Wallington
-- default Info-auto-generate-directory to 'if-outdated -- Adrian Aichner
-- improve printer handling -- Andy Piper, Mike Alexander, Adrian Aichner
-- mark buffer as modified when changing coding system -- Andy Piper
-- minor mode mode-line-strings now customizable -- John Paul Wallington
   isearch-mode, abbrev-mode, overwrite-mode, auto-fill-mode,
   gnuserv-mode, defining-kbd-macro-mode, font-lock-mode, view-mode
-- search the core etc/ for package index if not in ~/.xemacs/ -- Steve Youngs
-- support sub-expression replacement in replace-match -- Torsten Duwe
-- support user {site,infodock}-packages hierarchies -- Michael Sperber
-- truncate-partial-width-windows now applied in redisplay -- Ben Wing
-- use version-specific name for root testing -- Michael Sperber
   Eg, /usr/local/lib/xemacs-21.5.4.  Fixes common "can't find root" bug,
   but run-in-place XEmacs won't find installed packages.

-- HTML docs from Texinfo sources -- Adrian Aichner
-- document fix for Motif related crashes (Sun/Solaris) -- Robert Pluim
-- improve package system documentation -- Stephen Turnbull
-- new Japanese translation of xemacs.1 -- Kazuo Oishi
-- update developer personal info -- Jan Vroonhof, Michael Diers
-- many doc fixes and improvements, sorry about the credits :-(

-- alias `interactive-form' to `function-interactive' -- John Paul Wallington
-- etags to Potorti` version 14.28. -- Yoshiki Hayashi
-- mark-paragraph - added optional argument -- John Paul Wallington

-- arch-specific files go under ${libdir}, not ${datadir} -- Jered Floyd
-- configure recognizes LDFLAGS and adds to top Makefile -- Lutz Jaenicke
-- eliminate bogus check for Athena widgets -- Alexey Mahotkin
-- omit -Wshadow when compiling with g++ -- Ben Wing
-- use the ld reported by gcc, not gcc -- Andrew Begel
-- work around lack of support for autoconf 2.5x -- Didier Verna

-- fix "can't Customize standard faces" bug (partially) -- Jan Vroonhof
-- fix "can't close last window" bug -- Adrian Aichner
-- fix "doubled escape" bug in Mule (ISO-2022-7) autosave files -- Kyle Jones
-- fix "fail to save (non-themed) variable customizations" bug -- Andy Piper
-- fix PGP signature handling in package UI -- Steve Youngs
-- fix allocation of module-defined names in symbol table -- Andrew Begel
-- fix conversion of host and network byte order in multicast -- Daiki Ueno
-- fix crash from missing XIM unregister callback on Motif -- Glynn Clements
-- fix crash/infloops in read_key_sequence -- Hirokazu FUKUI
-- fix early dereference crash in decode_buffer -- Torsten Duwe
-- fix handling of negative C times -- Simon Josefsson and Stephen Turnbull
-- fix 'report-xemacs-bug' issues -- Steve Youngs
-- fix several font-lock bugs -- Jan Vroonhof, Andy Piper, Bill Perry
-- fix several package-get bugs -- Steve Youngs
-- fix some slow startups - default with_ipv6_cname=no -- Stephen Turnbull
-- fix unsigned warnings; turn sign-compare warnings on for NT -- Ben Wing
-- fix window_loop iteration across multiple devices -- Darryl Okahata
-- fix/avoid GNU ld -z combreloc lossage -- Stephen Turnbull
-- make sure installed.db gets updated after updating packages -- Andy Piper

-- GTK improvements/fixes -- Bill Perry
   -- add face mappings
   -- fix "can't shut up bell" bug
   -- fix some face initialization bugs
   -- fix subwindow handling
   -- fix yes-or-no-p lossage
   -- improve conformance to internal APIs
   -- munge highlight, zmacs-region, toolbar, and gui-button faces from
      default GtkStyle
   -- remove useless XPM color symbol checks

-- MS Windows improvements/fixes -- Andy Piper
   -- better build portability
   -- change registry key to XEmacs.
   -- add/fix Cygwin handling of URLs and win32 paths
   -- fix focus and event handling in scrollbars
   -- fix get-popup-menu-response bug
   -- improve DDE support
   -- improve netinstaller, especially uninstall and shortcuts
   -- improve popup dialog handling
   -- new directory dialog support
   -- quit if the user cancels in directory dialog
-- Cygwin nox-xpm detection -- Charles Wilson
-- fix compile problems when --with-msw, --with-x=no, --with-tty=no -- Ben Wing
-- fix file handle leak in pipes -- Mike Alexander
-- initial VC.NET support -- Andrew Begel

-- Rename/redefine integral types -- Ben Wing
   -- See src/ChangeLog for details and rationale.
   -- All integral types that measure quantities of anything are signed.
   -- All quantity types boil down to EMACS_INT, except Hashcode,
      which is an unsigned value of the same size as EMACS_INT.
   -- Type names should be relatively short, with the first letter
      capitalized and no underscores if they can be avoided.
   -- "*count" == zero-based quantity.  Includes sizes, offsets, and indexes.
   -- "*bpos" == one-based buffer position.
   -- "Char" refers to internal-format characters, not to the C type "char".
-- CVS: improve .cvsignore files -- Adrian Aichner
-- autoload handling improvements -- Didier Verna
-- improve handling of face inheritance/fallback -- Jan Vroonhof
-- condense repetitive window-system settings to 'win default' -- Bill Perry
-- improve debugging in event-msw.c -- Adrian Aichner
-- rename Menubar-items-truncate-list to Menubar-items-truncate-history
   -- Adrian Aichner
-- rename default package index to 'package-index.LATEST.gpg' -- Steve Youngs
-- unify GUI pixmap handling -- Bill Perry
-- unify toolbar handling across GUI platforms -- Bill Perry

to 21.5.3 "asparagus"
-- Add missing XIM unregister callback on Motif -- Glynn Clements
-- Improve debugging in event-msw.c, fix "can't close last window" bug
   -- Adrian Aichner
-- Improve Info docs for widget.el -- Stephen J. Turnbull
-- Many small bug, typo, and warning fixes -- Ben Wing, Stephen J. Turnbull,
   Adrian Aichner
-- Autoload handling improvements -- Didier Verna
-- More 'report-xemacs-bug' updates -- Steve Youngs
-- Fix unsigned warnings; turn sign-compare warnings on for NT -- Ben Wing
-- Synch configure.usage options with configure -- Peter Brown

to 21.5.2 "artichoke"
-- fixes and improvements -- Ben Wing
   -- etags.c synched to upstream
   -- lisp/term/*.el cleanup
   -- miscellaneous help improvements
   -- transpose-line-up/down maybe moves the region
   -- MS Windows init improvements
   -- add scroll-in-place, jka-compr, efs, some fixes in behavior-defs.el
   -- paths-find-recursive-path: fix error with null EXCLUDE-REGEXP
   -- font-lock-mode: fix problem with buffers starting with a space
   -- make find-library search patch configurable
   -- fix Dired problem with directories containing [] and code that
      destructively modifies an existing string
   -- stop mark_window_as_deleted from deleting information that needs to
      be accessed by set-window-configuration
   -- Lisp object structure rationalization
   -- fix two nasty bugs in the unwinding code
   -- fix mouse wheel/dead window crash under MS Windows
   -- mswindows_utime, close_file_data: fix off-by-one-indirection error
   -- control-G handling fixes for MS Windows
   -- debug-mswindows-events and related code introduced
   -- rearrange the signal-handling code to eliminate the former
      spaghetti logic paths in it; document; fix numerous bugs
   -- maintain the "iconified" state, to fix the "can't delete a frame" bug
   -- use CBufbyte instead of char for error/warning functions
   -- prepare to remove encapsulation
   -- make play_sound_data return an int, like all other such functions
   -- use EMACS_SIGNAL to avoid preprocessing games with signal()
   -- gc-in-window-procedure fixes
   -- Cygwin setitimer fixes
   -- windows shell fixes
   -- more structured errors
   -- MS Windows network stream data corruption fixes
   -- fix ~user file name handling
   -- rename MAX_PATH to standard PATH_MAX
   -- fix error compiling regexps with back-references in them

-- fixes and improvements -- Martin Buchholz
   -- byte optimizer fixes
   -- move alloca twiddling after the feature test definitions, but
      before the first "real" code
   -- internal DECIMAL_PRINT_SIZE macro
   -- s&m elimination: Eliminate the need to define HAVE_PTYS in s&m files
   -- avoid test failure if (temp-directory) is a symlink
   -- handle buggy Sun realloc()

-- GTK fixes -- Bill Perry
   -- GTK popup dialog fix
   -- GTK added to font-window system mappings
   -- gtk-marshal.el updated for new hash.c, and generator fixes,
   -- GTK scrollbar fixes
   -- buttons are now modifiers, so selection with the mouse works again
   -- fix the disappearing GTK scrollbar problem

-- movemail.c uses mkstemp if available -- Karl M. Hegbloom
-- specifiers may now conditionalize on GTK -- Stephen J. Turnbull
-- new hooks for package installation and deletion -- Sean MacLennan
-- locate-library completes and other package UI improvements -- Robert Pluim
-- save-some-buffers doesn't prematurely zap help window -- Michael Sperber
-- MS windows subprocess quoting arguments -- Ben Wing, Dan Holmsand
-- remove side effects from font-lock-compile-keywords -- Daiki Ueno
-- custom-display works on the GTK platform -- Karl Hegbloom
-- mouse-track fixes -- Adrian Aichner, Ben Wing
-- dragdrop fix for windowless events -- Mike Alexander
-- fix `unbalanced parentheses' bug in syntax -- Matt Tucker
-- gpmevent.c header inclusion fixes -- Bill Perry
-- make more glyph code shared across platforms -- Ben Wing, Bill Perry
-- remove lisp_string_set_file_times() because set_file_times() now
   takes Lisp_Object path, instead of char* -- Adrian Aichner and Ben Wing
-- allow preemption on redisplay -- Kirill 'Big K' Katsnelson
-- new, faster implementation of long_to_string -- Hrvoje Niksic
-- Qccl_error: New error -- Yoshiki Hayashi
-- remove support for old beta versions of cygwin -- Ben Wing, Craig Lanning
-- fix crash with an unavailable network printer -- Mike Alexander
-- add support for MacOS X -- Greg Parkin and Martin Buchholz
-- better win9x (including WinMe) support -- Ben Wing, Stephen J. Turnbull
-- fix off-by-one error in EMACS_INT_MAX -- Yoshiki Hayashi

-- warning, style, and doc fixes and improvements
   -- warning fixes -- Ben Wing, Kirill 'Big K' Katsnelson, Martin Buchholz
   -- eliminate numerous C++ errors -- Ben Wing, Martin Buchholz
   -- code style corrections -- Ben Wing, Martin Buchholz
   -- build improvements -- Ben Wing, Martin Buchholz
   -- configure improvements and fixes -- Martin Buchholz, Ben Wing,
      Stephen J. Turnbull
   -- doc updates -- Adrian Aichner, Ben Wing, Alexey Mahotkin, Steve
      Youngs, Stephen J. Turnbull, Yoshiki Hayashi, Steve Youngs, Paul
      Stodghill, Malcolm Purvis, Jim Horning, Nick V. Pakoulin, Kirill
      'Big K' Katsnelson

to 21.5.1 "anise"
-- This release contains a huge pile of changes by Ben Wing, including
   both bug fixes and features.  Highlights:
   -- Many changes to make printing work on Windows
   -- byte-compilation speed improvements
   -- New functions for cleanly eliminating byte-compiler warnings
   -- Remove core bytecompiler warnings
   -- Improve interactive help interface
   -- etags improvements
   -- Better "About XEmacs" page
   -- Windows configury changes
   -- Get QUIT working on Windows
   -- Fix shy group regexp code
   -- etc. etc.

-- The `short-name' argument to make-charset now works correctly 
   -- Yoshiaki Kasahara
-- `custom' changes -- Didier Verna
-- SET_FACE_PROPERTY bug fix -- Jerry James
-- Unix tty configury changes -- Martin Buchholz
-- Fix compile error with g++ on bsdi -- Martin Buchholz
-- Fix crash with xlc -O3 -- Martin Buchholz
-- Fix link error with (pre-release) gcc 3.0 -- Martin Buchholz
-- Fix build error if system has makeinfo 3.12 -- Martin Buchholz
-- Speed up `intern' and hash tables containing strings -- Martin Buchholz
-- Make hash table mapping safe -- Martin Buchholz

Fork from 21.2: 21.5.0 "alfalfa"
-- For changes up to 21.4.0, see etc/NEWS