0.9.6.21:
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 924cc35..deda9d1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,76 @@
 ;;;; -*- coding: utf-8; -*-
 ;;;; -*- coding: utf-8; -*-
+changes in sbcl-0.9.7 relative to sbcl-0.9.6:
+  * minor incompatible change: (SETF CLASS-NAME) and (SETF
+    GENERIC-FUNCTION-NAME) are no longer generic functions, and
+    therefore are not customizeable by user code (as seems to be at
+    least permitted and maybe required by AMOP).  As a consolation,
+    however, the SBCL implementation of these functions now calls
+    REINITIALIZE-INSTANCE as specified by AMOP.
+  * bug fix: REINITIALIZE-INSTANCE on generic functions calls
+    COMPUTE-DISCRIMINATING-FUNCTION (almost) unconditionally, as
+    specified by AMOP.
+  * bug fix: it is now possible to have more than one subclass of
+    STANDARD-GENERIC-FUNCTION without causing stack overflow.
+    (reported by Bruno Haible, Pascal Costanza and others)
+  * bug fix: the dependent update protocol now works for generic
+    functions.  (thanks to Gerd Moellmann; reported by Bruno Haible
+    and Pascal Costanza)
+  * bug fix: *COMPILE-FILE-PATHNAME* now contains the user's pathname
+    merged with *DEFAULT-PATHNAME-DEFAULTS*.
+  * enhancement: the x86-64 disassembler is much better at
+    disassembling SSE instructions.  (thanks to Lutz Euler)
+  * optimization: improved performance of EUC-JP external format.
+    (thanks to NIIMI Satoshi)
+  * optimization: performance improvements to IO on file streams of
+    :ELEMENT-TYPE CHARACTER
+  * optimization: much faster memory allocation on x86-64
+  * optimization: faster garbage collections (latency and throughput)
+    on gencgc
+
 changes in sbcl-0.9.6 relative to sbcl-0.9.5:
 changes in sbcl-0.9.6 relative to sbcl-0.9.5:
-  * bug fix: add a workaround to SBCL looping infinitely at startup on 
+  * bug fix: add a workaround to SBCL looping infinitely at startup on
     Linux kernels with apparently buggy implementations of personality().
     (thanks to Svein Ove Aas)
     Linux kernels with apparently buggy implementations of personality().
     (thanks to Svein Ove Aas)
+  * bug fix: Unicode symbols are correctly printed in LDB backtraces
+    (thanks to David Lichteblau)
+  * bug fix: local bindings shadow global symbol macros for
+    macroexpansion.  (reported by Matthew D Swank on comp.lang.lisp)
+  * optimization: non-open coded uses of numeric comparison operators
+    (e.g. >) no longer cons when called with more than one parameter
+    on platforms supporting dynamic-extent allocation.
+  * enhancement: saving cores with foreign code loaded is now supported
+    on MIPS/Linux in addition to the previously supported platforms.
+  * bug fix: FIND-RESTART now tests for activity, not applicability when given
+    a restart object as identifier. (reported by Helmut Eller for CMUCL)
+  * bug fix: division by zero in sb-sprof when no samples were collected
+  * bug fix: a race when a slow to arrive sigprof signal killed sbcl
+  * bug fix: asdf-install uses CRLF as required by the HTTP spec.
+    (thanks to Alexander Kjeldaas)
+  * new feature: ignoring the return values of destructive functions
+    like NREVERSE signals a compile-time style-warning.
+    (thanks to Kevin Reid)
+  * new feature: the alignment of alien structure fields can be
+    explicitly specified. (thanks to Cyrus Harmon)
+  * bug fix: run cleanup forms (in all threads) when receiving a SIGTERM
+    and dump core on SIGQUIT
+  * threads
+    ** incompatible change: threads do not inherit values of specials
+       from their parents (see manual)
+    ** bug fix: threads stacks belonging to dead threads are freed by the
+       next exiting thread, no need to gc to collect thread stacks anymore
+    ** minor incompatible change: INTERRUPT-THREAD-ERROR-ERRNO removed
+    ** WITH-RECURSIVE-LOCK can be nested in a WITH-MUTEX for the same lock
+    ** bug fix: dynamic variable and thread start related gc lossage
+    ** bug fix: job control (SIGSTOP/SIGCONT) no longer confuses threads
+       suspended for gc
+  * fixed some bugs revealed by Paul Dietz' test suite:
+    ** SUBTYPEP is slightly more accurate on heinously complicated
+       CONS types where some of the members have uncertain (in the
+       NIL, NIL sense) type relationships to each other.
+  * GENCGC
+    ** Cores produced by SAVE-LISP-AND-DIE on GENCGC platforms are
+       no longer purified unless :PURIFY T is explicitly specified.
+    ** Non-purified cores are significantly smaller than before
 
 changes in sbcl-0.9.5 relative to sbcl-0.9.4:
   * new feature: timers based on Zach Beane's excellent timer package
 
 changes in sbcl-0.9.5 relative to sbcl-0.9.4:
   * new feature: timers based on Zach Beane's excellent timer package