0.9.18.2: Win32 exceptions
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index d87c5ec..a6b1a44 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,87 @@
 ;;;; -*- coding: utf-8; -*-
+changes in sbcl-0.9.19 (1.0.0?) relative to sbcl-0.9.18:
+  * improvement: floating point modes in effect are now saved in
+    core, and restored on startup.
+  * improvements to the Windows port:
+    ** floating point exceptions are now reported correctly.
+    ** stack exhaustion detection works partially.
+
+changes in sbcl-0.9.18 (1.0.beta?) relative to sbcl-0.9.17:
+  * enhancement: SB-POSIX now supports cfsetispeed(3), cfsetospeed(3),
+    cfgetispeed(3), cfgetospeed(3), and related constants. (thanks to
+    Max-Gerd Retzlaff)
+  * bug fix: two potential GC deadlocks affecting threaded builds.
+  * bug fix: (TYPEP #\A '(NOT (MEMBER #\" #\{ #\:))) now correctly
+    returns T (reported by Anton Kazennikov)
+  * bug fix: the STORE-VALUE restart of CHECK-TYPE works correctly
+    with non-variable places
+  * bug fix: remove a race condition in the setting of
+    funcallable-instance functions, this should make threaded CLOS
+    code more stable against memory faults.
+  * bug fix: corruption of specials when unbinding is interrupted by an
+    asynchronous unwind (reported by Hannu Koivisto)
+  * improvement: the debugger will now also display local variables that
+    are only used once, for code compiled with a DEBUG optimization quality
+    of 2 or higher.
+
+changes in sbcl-0.9.17 (0.9.99?) relative to sbcl-0.9.16:
+  * feature: weak hash tables, see MAKE-HASH-TABLE documentation
+  * incompatible change: External-format support for FFI calls.  The
+    SB-ALIEN:C-STRING no longer implies an ASCII
+    external-format. Instead the string is subject to external-format
+    conversion. Additionally return values of type SB-ALIEN:C-STRING
+    are by default of type (SIMPLE-ARRAY CHARACTER), not
+    SIMPLE-BASE-STRING. For an alien type that behaves like the old
+    SB-ALIEN:C-STRING type, use (SB-ALIEN:C-STRING :EXTERNAL-FORMAT
+    :ASCII :ELEMENT-TYPE BASE-CHAR).  (thanks to Yaroslav Kavenchuk)
+  * incompatible change: SB-EXT package no longer contains the
+    following unused symbols: *GC-NOTIFY-AFTER*, *GC-NOTIFY-BEFORE*,
+    *GC-NOTIFY-STREAM*, *ERROR-PRINT-LENGTH*, *ERROR-PRINT-LEVEL*,
+    *ERROR-PRINT-LINES*
+  * incompatible change: the single-stepper is no longer available 
+    on Alpha, Mips and Sparc platforms.
+  * minor incompatible change: the direct superclasses of
+    SB-MOP:FUNCALLABLE-STANDARD-OBJECT are (FUNCTION STANDARD-OBJECT),
+    not (STANDARD-OBJECT FUNCTION).  This makes the
+    class-precedence-lists of GENERIC-FUNCTION and
+    STANDARD-GENERIC-FUNCTION comply with the requirement of ANSI
+    1.4.4.5.
+  * minor incompatible change: the default stream external format on
+    non-unicode SBCL is no longer detected from the locale, but is always
+    ISO-8859-1
+  * new feature: Add a version of evaluator that uses an interpreter instead
+    of the compiler. EVAL still uses the compiler by default, to switch it
+    to use the interpreter, set the value of the variable 
+    SB-EXT:*EVALUATOR-MODE* to :INTERPRET.
+  * minor incompatible change: the single-stepper REPL has been merged
+    with the normal debugger (see the "Stepping" heading of the debugger help
+    for more details). The debugger command STEP will no longer switch
+    to the single-stepper REPL. 
+  * bug fix: ENOUGH-NAMESTRING on pathnames with no name and a pattern
+    for a type now works.
+  * bug fix: loading of default sysinit file works. (thanks to Leonid
+    Slobodov)
+  * bug fix: better detection of circularities in the file-compiler.
+    (reported by Marco Monteiro)
+  * bug fix: the CL pathname functions now work with files that have
+    non-ASCII characters in their names (thanks to Yaroslav Kavenchuk)
+  * bug fix: The :PTY argument for RUN-PROGRAM will now work on 
+    systems with Unix98 pty semantics.
+  * bug fix: ASDF-INSTALL will now work with bsd tar.
+  * bug fix: ASDF-INSTALL uses GNU tar on Solaris (thanks to Josip
+    Gracin).
+  * bug fix: timers expiring in dead threads no longer cause a
+    type-error (reported by Paul "Nonny Mouse"). 
+  * bug fix: thanks to more lightweight single-stepper instrumentation, 
+    code compiled with (DEBUG 3) will compile and execute significantly faster,
+    and will have more accurate type-inferencing than before
+  * bug fix: SLOT-VALUE optimizations are no longer done on method parameters
+    whose bindings are modified
+  * improvements to the win32 port (thanks to Yaroslav Kavenchuk):
+    ** bug fix: arguments to RUN-PROGRAM are escaped correctly
+    ** replace dummy implementations of CL:MACHINE-INSTANCE and 
+       CL:SOFTWARE-VERSION with proper version
+
 changes in sbcl-0.9.16 relative to sbcl-0.9.15:
   * feature: implemented the READER-METHOD-CLASS and
     WRITER-METHOD-CLASS portion of the Class Initialization Protocol
@@ -12,7 +95,7 @@ changes in sbcl-0.9.16 relative to sbcl-0.9.15:
   * enhancement: SB-INTROSPECT is now able to find definitions of
     profiled functions. (thanks to Troels Henriksen)
   * enhancement: compiler-macro expansion applies now to FUNCALL forms
-    as well.
+    as well, allowing compiler-macros for SETF-functions to expand.
   * enhancement: step-instrumentation no longer wraps known
     single-value functions with multiple-value context, allowing
     better type inference.
@@ -58,6 +141,7 @@ changes in sbcl-0.9.16 relative to sbcl-0.9.15:
     for win32. (thanks to Mike Thomas and Yaroslav Kavenchuk)
   * bug fix: #368: incorrect use of expressed vs. upgraded array
     element type.
+  * bug fix: #306a: more precise unions of array types.
   * thread-safety improvements:
     ** CONDITION-WAIT could return early on Linux, if the thread was
        interrupted and subsequently continued with SIGCONT.
@@ -170,6 +254,8 @@ changes in sbcl-0.9.13 relative to sbcl-0.9.12:
     faster
   * optimization: added a limited bytecode compiler for simple toplevel
     forms, speeding up compilation and FASL loading
+  * bug fix: the statistical profiler now properly distinguishes anonymous
+    functions
 
 changes in sbcl-0.9.12 relative to sbcl-0.9.11:
   * minor incompatible change: in sbcl-0.9.11 (but not earlier