0.6.8.15:
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 241d001..9731cfa 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -489,26 +489,88 @@ changes in sbcl-0.6.8 relative to sbcl-0.6.7:
   O(M*N*N) time when any of the sequence arguments were LISTs.)
 * The QUIT :UNIX-CODE keyword argument has been renamed to 
   QUIT :UNIX-STATUS. (The old name still works, but is deprecated.)
-* Raymond Wiker's port of CMU CL's RUN-PROGRAM has been added.
-  ?? What about the undefined symbols in run-program.lisp?
-     SB-UNIX:UNIX-DUP
-     SB-UNIX:UNIX-IOCTL
-     SB-UNIX:UNIX-PIPE
-?? The debugger now flushes standard output streams before it begins
+* Raymond Wiker's patches to port RUN-PROGRAM from CMU CL to SBCL
+  have been added.
+* Raymond Wiker's patches to port dynamic loading from Linux to
+  FreeBSD have been added.
+* The BUGS file is now more nearly up to date, thanks in large part
+  to Martin Atzmueller's review of it.
+* The debugger now flushes standard output streams before it begins
   its output ("debugger invoked" and so forth).
-?? FINISH-OUTPUT now works better than it did before. (It used to 
-  have trouble with characters which weren't followed by a linefeed.)
-  ?? Remember to remove this from BUGS.
-?? The patch for the SUBSEQ bug reported on the cmucl-imp mailing
-  list 12 September 2000 has been applied to SBCL.
-?? Martin Atzmueller's versions of two CMU CL patches, as posted on 
-  sbcl-devel 13 September 2000, have been installed. (The patches fix
-  a bug in SUBSEQ and <a bug in ??>.)
-?? A bug in signal handling which kept TRACE from working on OpenBSD
+* The core version number and fasl file version number have both
+  been incremented, because of incompatible changes in the layout
+  of static symbols.
+* FINISH-OUTPUT is now called more consistently on QUIT. (It
+  used to not be called for a saved Lisp image.)
+* Martin Atzmueller's version of a patch to fix a compiler crash,
+  as posted on sbcl-devel 13 September 2000, has been installed.
+* Instead of installing Martin Atzmueller's patch for the
+  compiler transform for SUBSEQ, I deleted the compiler transform,
+  and transforms for some similar consing operations.
+* A bug in signal handling which kept TRACE from working on OpenBSD
   has been fixed.
-  ?? Remember to remove this from the port-specific section of BUGS.
-?? The signal handling bug reported by Martin Atzmueller on 
-  sbcl-devel 13 September 2000, which caused the debugger to 
-  get confused after a Ctrl-C interrupt under ILISP, has been fixed.
-?? added enough DEFTRANSFORMs to allow (SXHASH 'FOO) to be optimized
+* added enough DEFTRANSFORMs to allow (SXHASH 'FOO) to be optimized
   away by constant folding
+* The system now defines its address space constants in one place
+  (in the Lisp sources), and propagates them automatically elsewhere
+  (through GENESIS and the sbcl.h file). Therefore, patching the
+  address map is less unnecessarily tedious and error-prone. The
+  Lisp names of address space constants have also been systematized.
+* CVS tags like dollar-Header-dollar have been removed from
+  the sources, because they have never saved me trouble and
+  they've been source of trouble working with patches and other
+  diff-related operations.
+* fixed the PROG1-vs.-PROGN bug in HANDLER-BIND (reported by 
+  ole.rohne@cern.ch on cmucl-help@cons.org 2000-10-25)
+
+changes in sbcl-0.6.9 relative to sbcl-0.6.8:
+
+* DESCRIBE now works on CONDITION objects.
+* The debugger now handles errors which arise when trying to print
+  *DEBUG-CONDITION*, so that it's less likely to fall into infinite
+  regress.
+* The build system now uses an additional file, customize-target-features.lisp,
+  to allow local modifications to the target *FEATURES* list. (The point of
+  this is that now I can set up a custom configuration, e.g. with :SB-SHOW
+  debugging features enabled, without having to worry about propagating it
+  into everyone's system when I do a "cvs update".) When no
+  customize-target-features.lisp file exists, the target *FEATURES* list
+  should be constructed the same way as before.
+* fixed bug 1 (error handling before read-eval-print loop starts), and
+  redid debugger restarts and related debugger commands somewhat while
+  doing so:
+  ** The QUIT debugger command is gone, since it did something
+     rather different than the SB-EXT:QUIT command, and since it never
+     worked properly outside the main toplevel read/eval/print loop.
+     Invoking the new TOPLEVEL restart provides the same functionality.
+  ** The GO debugger command is also gone, since you can just invoke
+     the CONTINUE restart directly instead.
+  ** The TOP debugger command is also gone, since it's redundant with the
+     FRAME 0 command, and since it interfered with abbreviations for the
+     TOPLEVEL restart.
+* fixed bugs in DEFCONSTANT ANSI-compatibility:
+  ** DEFCONSTANT now tests reassignments using EQL, not EQUAL, in order to 
+     warn about behavior which is undefined under the ANSI spec. Note: This
+     is specified by ANSI, but it's not very popular with programmers.
+     If it causes you problems, take a look at the new SB-INT:DEFCONSTANT-EQX
+     macro in the SBCL sources for an example of a workaround which you
+     might use to make portable ANSI-standard code which does what you want.
+  ** DEFCONSTANT's implementation is now based on EVAL-WHEN instead of on
+     pre-ANSI IR1 translation magic, so it does the ANSI-specified thing
+     when it's used as a non-toplevel form. (This is required in order
+     to implement the DEFCONSTANT-EQX macro.)
+  ** (DEFCONSTANT X 1) (DEFVAR X) (SETF X 2) no longer "works".
+  ** Unfortunately, non-toplevel DEFCONSTANT forms can still do some
+     funny things, due to bugs in the implementation of EVAL-WHEN
+     (bug #IR1-3). This probably won't be fixed until 0.7.x. (Fortunately,
+     non-toplevel DEFCONSTANTs are uncommon.)
+* The core file version number and fasl file version number have been 
+  incremented, because the old noncompliant DEFCONSTANT behavior involved
+  calling functions which no longer exist.
+* removed bug 21 from BUGS, since Martin Atzmueller points out that 
+  it doesn't seem to affect SBCL after all
+* The system now recovers better from non-PACKAGE values of the *PACKAGE*
+  variable.
+* The system now understands compound CONS types (e.g. (CONS FIXNUM T))
+  as required by ANSI. (thanks to Douglas Crosher's CMU CL patches, with
+  some porting work by Martin Atzmueller)