* XEmacs 21.4.5 "Civil Service" is released.
"Civil Service" is the sixth in the OXYMORON series.
Relative to XEmacs 21.4.4 "Artificial Intelligence", it contains
critical fixes for the "GC in windows procedure" and "setitimer"
crashes on the MS Windows platform. There are also a few typo
fixes in the documentation, and some minor bugfixes in the user
interface.
Due to the forced move from our CVS server and other infrastructure
issues, this release has been prepared in some haste. It does appear
that the stability on Windows platforms is acceptable, or better.
There are very few changes that affect stability of other platforms,
so they are expected to give excellent stability as usual.
A binary release for Windows with improvements in the installation
process should follow shortly.
More detailed information about the changes is presented below.
The first release in this series, Xemacs 21.4.0 "Solid Vapor",
contained a large number of improvements and extensions to the current
stable version, XEmacs 21.1.14. For more information about the
OXYMORON series, see etc/NEWS, the initial release announcement
http://www.xemacs.org/Releases/21.4.0.html
and the release planning page,
http://www.xemacs.org/Releases/Public-21.2/.
For general information about XEmacs, the developers, and the user
community, see our home page,
http://www.xemacs.org/.
* XEmacs 21.4.5 is "gamma" software.
Besides the usual "no warranty" disclaimer (see etc/WARRANTY, sections
10 and 11), we are now experimenting with a level of stability
intermediate between "beta" and "stable", dubbed "gamma".
At this
point all the developers and most of our beta testers trust the 21.4
code base with all their editing needs.
After several months of testing, XEmacs 21.4.5 now is sufficiently
stable to be recommended to all users. However, there still remain a
few outstanding problems with fontlock that must be fixed before we
retire 21.1.
* Availability
Anonymous ftp:
ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.4
Windows netinstaller:
Andy Piper will make an announcement when it is ready.
Anonymous (pserver) CVS:
The pserver is presently unavailable. The root is likely to
change in the move. We will announce when it is available again.
* Brief summary of Changes to 21.4.5 "Civil Service"
Possibly annoying UI changes:
- (**) configure.ac added to auto-mode-alist.
- (**) Recognize .9 files as man pages (shadowed by ChangeLog and .scm).
- (**) Derive buffers-tab face from the modeline face by default.
- (**) Enable win32 paths under cygwin.
Other UI and API changes:
- Add GTK defaults in several places.
- Printer improvements and fixes for Windows.
- Speed up saving of custom file.
- Improve fontlock handling of unterminated comments.
- Use new politically correct 'report-xemacs-bug' nomenclature in menus.
- DDE improvements for Windows.
Bug fixes:
- Fix those dreaded "GC during window procedure" and setitimer crashes.
- Fix several wrong-type-argument bugs in face handling.
- Fix Lisp syntax in several files.
- Fix pty allocation on SCO Unix.
- call-process-internal reads files as 'binary, now writes 'binary too.
- Mouse-track fixes.
- Fix black borders in tab control widgets.
- Fix progress gauge flashing under OpenMotif.
- Case sensitivity and shell quoting fixes for Windows.
- Multicast data conversion fix.
- Correct handling of dedicated windows when killing buffer.
- Fix progress gauge flashing under OpenMotif.
Build improvements:
- Correct case for XEmacs file names under msw (Cygwin is pedantic).
- Install arch-specific files relative to $execdir, not $prefix.
- New configure.ac guards against autoconf 2.5x, not yet supported.
- Now detects xpm-nox on Cygwin.
- Conditionalize *-msw.c against Cygwin and MSVC5 deficiencies.
- Eliminate a few warnings.
- Detect Cygwin xpm-nox.
- Remove references to XMU from #ifndef HAVE_XMU code.
Other:
- FAQ corrections, typo fixes, other documentation improvements.
- Texinfo syntax corrections in Info sources.
* Full ChangeLogs:
I do not have time to fix up the mailing list archive references for
the ChangeLogs this time. I'm sorry about that, as some of the
changes are quite important.
-------- ChangeLog entries from ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
2001-10-05 Stephen J. Turnbull <stephen(a)xemacs.org>
* configure.in: Document that autoconf 2.5x is unsupported.
2001-10-02 Stephen J. Turnbull <stephen(a)xemacs.org>
* PROBLEMS: configure doesn't support --with-{ld,as}, use environment
variables. Suggested by Goran Koruga <goran.koruga(a)hermes.si>.
2001-09-17 Ben Wing <ben(a)xemacs.org>
* configure.in (TAB):
* configure.in (XE_COMPUTE_RUNPATH):
Don't use -Wshadow when compiling with g++ or you get buried in
silly warnings. This patch was already applied but somehow got
unapplied. Stephen?
2001-08-19 Charles Wilson <cwilson(a)ece.gatech.edu>
* configure.in (for graphics libraries): Detect Cygwin xpm-nox.
2001-08-02 Peter Brown <rendhalver(a)users.sourceforge.net>
Synch options documentation with those in configure.in:
* configure.usage (--with-dialogs): added lucid to list of options
* configure.usage (--with-widgets): added lucid to list of options
* configure.usage (--with-dragndrop): added GTK to list of protocols
* configure.usage (--mail-locking): added `locking' or `mmdf'. to list
of options
2001-09-25 Didier Verna <didier(a)xemacs.org>
* configure.ac: new. Autoconf 2.5x guard.
2001-08-29 Jered Floyd <jered(a)MIT.EDU>
* configure.in (moduledir,sitemoduledir,archlibdir):
Place arch-specific files under ${libdir}, not under ${datadir}.
-------- ChangeLog entries from lib-src/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
-------- ChangeLog entries from lisp/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
2001-04-23 Didier Verna <didier(a)xemacs.org>
* cus-edit.el (custom-variable-pre-save): New.
* cus-edit.el (custom-variable-post-save): New.
* cus-edit.el (custom-variable-save): use them.
* cus-edit.el (custom-face-pre-save): New.
* cus-edit.el (custom-face-post-save): New.
* cus-edit.el (custom-face-save): use them.
* cus-edit.el (custom-group-pre-save): New.
* cus-edit.el (custom-group-post-save): New.
* cus-edit.el (custom-group-save): use them.
* cus-edit.el (Custom-save): use the pre/post functions above,
call `custom-save-all' only once.
* cus-edit.el (custom-variable-pre-reset-standard): New.
* cus-edit.el (custom-variable-post-reset-standard): New.
* cus-edit.el (custom-variable-reset-standard): use them.
* cus-edit.el (custom-face-pre-reset-standard): New.
* cus-edit.el (custom-face-post-reset-standard): New.
* cus-edit.el (custom-face-reset-standard): use them.
* cus-edit.el (custom-group-pre-reset-standard): New.
* cus-edit.el (custom-group-post-reset-standard): New.
* cus-edit.el (Custom-reset-standard): use them.
* cus-edit.el (custom-face-reset-saved): use the pre/post
functions above, call `custom-save-all' only once.
2001-04-08 Danny Colascione <qtmstr(a)optonline.net>
* gutter-items.el (buffers-tab face): Derive from the modeline
face by default. Many people use white-on-black for the default
font, and the tabs look hideous with that color combination. The
modeline usually has the correct colors.
2001-09-28 Robert Pluim <rpluim(a)bigfoot.com>
* etags.el (find-tag): Doc fix, point users at pop-tag-mark.
(tag-mark-stack-max): Typo fix.
2001-09-28 Ben Wing <ben(a)xemacs.org>
* font-lock.el:
* font-lock.el (font-lock-after-change-function):
fix problem with last patch, reported by Katsumi Yamaoka.
2001-09-17 Ben Wing <ben(a)xemacs.org>
* font-lock.el (font-lock-after-change-function):
fix problem when you insert a comment on the line before a line of
code: if we use the following char, then when you hit backspace,
the following line of code turns the comment color.
2001-06-08 Ben Wing <ben(a)xemacs.org>
* process.el: comment about shell-command-switch.
* process.el (shell-quote-argument): Need to quote a null
argument, too. From Dan Holmsand.
* startup.el (normal-top-level): Delete some unused FSF junk.
* startup.el (command-line-early):
* startup.el (command-line): Call MS Windows init function.
* win32-native.el:
* win32-native.el (mswindows-system-shells): New.
* win32-native.el (mswindows-system-shell-p): New.
* win32-native.el (init-mswindows-at-startup): New.
* win32-native.el (mswindows-quote-one-vc-runtime-arg):
* win32-native.el (mswindows-quote-one-simple-arg):
* win32-native.el (mswindows-quote-one-command-arg):
* win32-native.el (mswindows-construct-process-command-line-alist):
Correct comments at top. Correctly handle passing arguments
to Cygwin programs and to bash. Fix quoting of zero-length
arguments (from Dan Holmsand). Set shell-command-switch based
on shell-file-name, which in turn comes from env var SHELL.
2001-07-18 Alexey Mahotkin <alexm(a)hsys.msk.ru>
* toolbar.el (toolbar-visible-p, toolbar-captioned-p,
default-toolbar-position): Fill docstrings for balloon-help.
2001-03-15 Stephen J. Turnbull <stephen(a)xemacs.org>
* faces.el: Reenable specifications over 'gtk domain.
2001-08-08 Didier Verna <didier(a)xemacs.org>
* autoload.el (update-autoload-files): make defdir a file name,
not directory name.
2001-08-06 Steve Youngs <youngs(a)xemacs.org>
* menubar-items.el (default-menubar): Use 'report-xemacs-bug'.
* lisp-mnt.el (lm-report-bug): Use 'report-xemacs-bug-beta-address'.
2001-08-01 Edward M. Lee <tailbert(a)yahoo.com>
* font-menu.el (font-menu-set-font): Default to current font-family.
(font-menu-preferred-resolution):
(font-menu-size-scaling):
Provide gtk defaults, too.
2001-07-29 Mike Alexander <mta(a)arbortext.com>
* cus-face.el (custom-set-face-font-size): Last arg to apply is a
list
(custom-set-face-font-family): ditto
2001-07-26 Mike Sperber <mike(a)xemacs.org>
* files.el (auto-mode-alist): .9 files are man pages, too.
2001-07-23 Edwin Steiner <esteiner(a)net4you.at>
* process.el (call-process-internal): bind
coding-system-for-write to 'binary when calling
start-process-internal, so the process receives
the literal contents of INFILE.
2001-09-15 Edward M. Lee <tailbert(a)yahoo.com>
* files.el (auto-mode-alist): Add configure.ac support.
2001-07-19 Adrian Aichner <adrian(a)xemacs.org>
* buff-menu.el:
mouse.el:
Adrian's mouse-track patch. See <y9plq0nc.fsf(a)ecf.teradyne.com>.
-------- ChangeLog entries from lwlib/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
2001-10-02 Darryl Okahata <darrylo(a)sonic.net>
* If HAVE_XMU was not defined (xmu was not being used), xlwgcs.c
was still referencing xmu functions.
2001-04-08 Danny Colascione <qtmstr(a)optonline.net>
* lwlib-Xlw.c:
xlwtabs.c:
xlwtabs.h:
Force buffer-tab highlight update when moving the buffer, avoiding
an ugly black border, used for keyboard focus indication, on a
widget that can never have keyboard focus, the buffer tab.
2001-07-26 Andy Piper <andy(a)xemacs.org>
Fix progress gauge flashing under OpenMotif:
* lwlib-Xm.c (xm_update_progress): new function. Set Scale height
and width from normal height and width.
* lwlib-Xm.c (xm_create_progress): ditto.
* lwlib-Xm.c (xm_update_one_widget): call xm_update_progress.
* lwlib.c (lw_get_value_arg): new function. Return an argument
based on its name.
* lwlib.h: declare it.
-------- ChangeLog entries from man/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
2001-10-17 Stephen J. Turnbull <stephen(a)xemacs.org>
* xemacs/text.texi (Outline Visibility): hide-subtree is bound to
C-c C-d, not C-c C-h. Thanks: Keith Browne <kbrowne(a)legato.com>.
2001-07-25 Jim Horning <jim.horning(a)lmco.com>
* xemacs/packages.texi (Package Terminology):
* xemacs/packages.texi (Automatically):
In itemize and enumerate lists @item should be on its own line.
2001-09-16 Adrian Aichner <adrian(a)xemacs.org>
* xemacs-faq.texi (Q4.0.7): Fix link to VM FAQ thanks to word I
got from Gregory Neil Shapiro.
* xemacs-faq.texi (Q1.3.7): Update moved link.
* xemacs-faq.texi (Q7.0.2): Comment out empty list of bullets to
avoid HTML error in texi2html translation.
2001-09-15 Adrian Aichner <adrian(a)xemacs.org>
* xemacs-faq.texi (Q4.6.1): Infodock is now hosted on SourceForge,
infodock.com is no more.
* xemacs-faq.texi (Q4.7.1): Take auc out of
http://sunsite.auc.dk.
2001-09-09 Adrian Aichner <adrian(a)xemacs.org>
* xemacs-faq.texi (Q1.0.9): Correct link to snapshots as suggested
by Robin S. Socha.
-------- ChangeLog entries from netinstall/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
-------- ChangeLog entries from nt/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
2001-08-02 Dr. Volker Zell <Dr.Volker.Zell(a)oracle.com>
* xemacs.rc:
Under cygwin, when environment variable CYGWIN is set
to check_case:strict, filenames are considered case sensitive.
-------- ChangeLog entries from src/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
2001-04-08 Danny Colascione <qtmstr(a)optonline.net>
* glyphs-x.c: Force buffer-tab highlight update when moving the
buffer, avoiding an ugly black border, used for keyboard focus
indication, on a widget that can never have keyboard focus, the
buffer tab.
2001-08-30 Daiki Ueno <ueno(a)unixuser.org>
* process-unix.c (unix_open_multicast_group): Remove too much
conversion between host and network byte order.
2001-09-10 Nix <nix(a)esperi.demon.co.uk>
* src/buffer.c (kill_buffer): Undedicate windows showing BUF
before replacing them.
* src/window.c (window_loop): Implement new UNDEDICATE_BUFFER
operation.
* src/window.c (undedicate_windows): Use it.
* src/window.h: Add prototype.
2001-09-17 Ben Wing <ben(a)xemacs.org>
* fileio.c (normalize_filename):
* fileio.c (Fexpand_file_name):
Fix various C++ compile errors in Andy's recent code.
* callint.c (Fcall_interactively):
* editfns.c (Ftemp_directory):
* editfns.c (Fuser_full_name):
* emacs.c (argmatch):
* lread.c (locate_file_map_suffixes):
* redisplay-x.c (x_ring_bell):
Fix sign-compare warnings.
2001-09-08 Andy Piper <andy(a)xemacs.org>
* fileio.c (normalize_filename): copied from nt.c
* (Ffile_name_directory): enable win32 paths under cygwin.
* (Ffile_name_nondirectory): ditto.
* (directory_file_name): ditto.
* (Fexpand_file_name): ditto.
* (Ffile_truename): ditto.
* (Fsubstitute_in_file_name): ditto.
* (Ffile_name_absolute_p): ditto.
* (Ffile_readable_p): ditto.
2001-09-08 Andy Piper <andy(a)xemacs.org>
* device-msw.c (mswindows_finish_init_device): remove dde
initialization.
* device-msw.c (mswindows_init_dde): factor out from
mswindows_finish_init_device()
* device-msw.c (init_mswindows_very_early): new function
initialize but don't enable dde.
* emacs.c (main_1): call init_mswindows_very_early.
* event-msw.c:
* event-msw.c (mswindows_dde_callback): only execute when we are
ready.
* symsinit.h: declare init_mswindows_very_early.
2001-05-02 Kirill 'Big K' Katsnelson <kkm(a)dtmx.com>
[sjt: This has been in 21.5 for months with no complaints.]
* console.h (struct console_methods): Added flags member.
(CONSOLE_IMPLEMENTATION_FLAGS): Defined.
(CONMETH_IMPL_FLAG):
(CONSOLE_IMPL_FLAG): Macro to check implememntation flags.
Defined XDEVIMPF_DONT_PREEMPT_REDISPLAY.
* device.c (window_system_pixelated_geometry): Use the above macros.
* device.h (DEVICE_IMPL_FLAG): Macro to check a device
implememntation flag.
* device.h (DEVICE_DISPLAY_P): Use it.
* frame.c (delete_frame_internal): Use the above macro.
* redisplay.c (redisplay_device): Use it.
(redisplay_device): Obey XDEVIMPF_DONT_PREEMPT_REDISPLAY.
(redisplay_frame): Ditto.
* device-msw.c (mswindows_device_implementation_flags): Removed.
(msprinter_device_implementation_flags): Removed.
(console_type_create_device_mswindows): Removed references to
implementation_flags methods, set implementation flags here.
(console_type_create_device_mswindows): Added XDEVIMPF_DONT_PREEMPT.
* device-gtk.c (gtk_device_implementation_flags): Removed method.
(console_type_create_device_gtk): Removed method declaration.
Added commented out statement which semantically matches the
commented out statement in the above removed method.
2001-04-14 Gordon Sadler <gbsadler1(a)lcisp.com>
The attached patch fixes a few warnings.
* src/emacs.c: prototype console_type_create_select_gtk for GTK only
* src/frame-gtk.c: guard against GNOME calls in GTK only
* src/redisplay-gtk.c: include <sys/poll.h> #ifdef HAVE_POLL
* src/select-gtk.c: prototype lisp_to_time
2001-06-08 Ben Wing <ben(a)xemacs.org>
------ gc-in-window-procedure fixes ------
* alloc.c:
* alloc.c (struct post_gc_action):
* alloc.c (register_post_gc_action):
* alloc.c (run_post_gc_actions):
* alloc.c (garbage_collect_1):
Create "post-gc actions", to avoid those dreaded "GC during window
procedure" problems.
* event-msw.c:
Abort, clean and simple, when GC in window procedure. We want
to flush these puppies out.
* glyphs-msw.c:
* glyphs-msw.c (finalize_destroy_window):
* glyphs-msw.c (mswindows_finalize_image_instance):
Use a post-gc action when destroying subwindows.
* lisp.h:
Declare register_post_gc_action().
* scrollbar-msw.c:
* scrollbar-msw.c (unshow_that_mofo):
Use a post-gc action when unshowing scrollbar windows, if in gc.
* redisplay.c (mark_redisplay):
Add comment about the utter evilness of what's going down here.
------ cygwin setitimer fixes ------
* Makefile.in.in (sheap_objs):
* Makefile.in.in (profile_objs):
* Makefile.in.in (objs):
Compile profile.c only when HAVE_SETITIMER.
* nt.c (mswindows_sigset):
* nt.c (mswindows_sighold):
* nt.c (mswindows_sigrelse):
* nt.c (mswindows_sigpause):
* nt.c (mswindows_raise):
* nt.c (close_file_data):
Style fixes.
* nt.c:
Move setitimer() emulation to win32.c, because Cygwin needs it too.
* profile.c:
* profile.c (Fstart_profiling):
* profile.c (Fstop_profiling):
Make sure we don't compile if no setitimer(). Use qxe_setitimer()
instead of just plain setitimer().
* signal.c:
* signal.c (set_one_shot_timer):
* signal.c (alarm):
Define qxe_setitimer() as an encapsulation around setitimer() --
call setitimer() directly unless Cygwin or MS Win, in which case
we use our simulated version in win32.c.
* systime.h:
* systime.h (struct itimerval):
* systime.h (ITIMER_REAL):
Prototype mswindows_setitimer() and qxe_setitimer(). Long
comment about "qxe" and the policy regarding encapsulation.
* win32.c:
* win32.c (setitimer_helper_proc):
* win32.c (setitimer_helper_period):
* win32.c (setitimer_helper):
* win32.c (mswindows_setitimer):
Move setitimer() emulation here, so Cygwin can use it.
Rename a couple of functions and variables to be longer and more
descriptive. In setitimer_helper_proc(), send the signal
using either mswindows_raise() or (on Cygwin) kill(). If for
some reason we are still getting lockups, we'll change the kill()
to directly invoke the signal handlers.
------ windows shell fixes ------
* callproc.c:
* ntproc.c:
Comments about how these two files must die.
* callproc.c (init_callproc):
On MS Windows, init shell-file-name from SHELL, then COMSPEC,
not just COMSPEC. (more correct and closer to FSF.) Don't
force a value for SHELL into the environment. (Comments added
to explain why not.)
* nt.c (init_user_info):
Don't shove a fabricated SHELL into the environment. See above.
2001-06-01 Ben Wing <ben(a)xemacs.org>
* Makefile.in.in (ldflags):
eliminate that pesky "defaulting to 00401000" warning.
* nt.h:
eliminate warnings.
2001-06-15 Golubev I. N. <gin(a)mo.msk.ru>
* s/sco5.h (FORCE_ALLOCATE_PTY_THE_OLD_FASHIONED_WAY): #define.
* process-unix.c (allocate_pty): #ifndef "modern" pty allocation.
2001-04-24 Jerry James <james(a)xemacs.org>
* faces.h: pass parameters to Fadd_spec_to_specifier in the
correct order.
2001-06-01 Ben Wing <ben(a)xemacs.org>
* event-msw.c (debug_mswin_messages):
conditionalize the messages that were causing compile errors.
(if only macros could generate #ifdef statements ...)
-------- ChangeLog entries from tests/ChangeLog --------
2001-10-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.4.5 "Civil Service" is released.
--
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Institute of Policy and Planning Sciences Tel/fax: +81 (298) 53-5091
Don't ask how you can "do" free software business;
ask what your business can "do for" free software.