10.\7f\7fCVS: ----------------------------------------------------------------------
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index eb6a9d6..516e250 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,43 @@
 ;;;; -*- coding: utf-8; -*-
+changes in sbcl-1.0.6 relative to sbcl-1.0.5:
+  * new contrib: sb-cover, an experimental code coverage tool, is included
+    as a contrib module.
+  * optimization: STRING-TO-OCTETS for unibyte encodings and UTF-8 is
+    significantly faster.
+  * optimization: calls of the form (AREF FOO (+ INDEX <constant>)) now
+    produce more efficient code on x86-64 if the compiler can determine
+    that (+ INDEX <constant>) does not require a bounds check and FOO
+    has an element type at least 8 bits wide.
+  * enhancement: a new, experimental synchronous timeout facility is
+    provided. Refer to SB-SYS:WITH-DEADLINE for details.
+  * enhancement: when a symbol name conflict error arises, the
+    conflicting symbols are always printed with a package prefix.
+    (thanks to Kevin Reid)
+  * enhancement: stepping is now once again supported on the SPARC.  (It is
+    also now more likely to work on CheneyGC builds on the PPC.)
+  * enhancement: Stepping support on MIPS.
+  * enhancement: sb-sprof can now also track and report accurate call
+    counts.
+  * incompatible change: PURIFY no longer copies the data from the 
+    dynamic space into the static and read-only spaces on platforms
+    that use the generational garbage collector
+  * bug fix: GETHASH, (SETF GETHASH), CLRHASH and REMHASH are now
+    interrupt safe.
+  * bug fix: GC race condition occasionally resulting in crashes with
+    the error message "SIG_STOP_FOR_GC blocked at a bad place" has been
+    fixed.
+  * bug fix: &ENVIRONMENT variables in macro lambda lists can now be
+    declared ignored.
+  * bug fix: DEFSETF lambda lists without &ENVIRONMENT no longer cause
+    a STYLE-WARNING to be signalled (regression from 1.0.4.)
+  * bug fix: an asynchronous interrupt could previously leave the
+    system running with GC inhibited.
+  * bug fix: a DECLARE form evaluated at top-level now causes an error
+    rather than silently (or verbosely) returning NIL.
+  * bug fix: trying to dissassemble functions compiled at high DEBUG could
+    result in a error being signalled due to source form lookup errors.
+    (reported by Peter Graves)
+
 changes in sbcl-1.0.5 relative to sbcl-1.0.4:
   * incompatible change: removed writer methods for host-ent-name,
     host-ent-addresses -- changing the values did not update the DNS
@@ -18,11 +57,21 @@ changes in sbcl-1.0.5 relative to sbcl-1.0.4:
     variants no longer cons.
   * optimization: Direct calls to CHAR-{EQUAL,LESSP,GREATERP} and
     their NOT- variants no longer cons.
-  * enhancement: XREF information is now collected to references made
+  * optimization: EQUAL hash tables no longer use SXHASH for objects
+    of all data types, but instead use an EQL hash for types for which
+    EQUAL is the same as EQL.
+  * optimization: the non-inlined generic versions of AREF and (SETF AREF)
+    are significantly faster.
+  * optimization: new STRING-OUTPUT-STREAM implementation is much
+    faster for large outputs and conses 30% less on average.
+  * enhancement: XREF information is now collected for references made
     to global variables using SYMBOL-VALUE and a constant argument.
   * enhancement: SIGINT now causes a specific condition
     SB-SYS:INTERACTIVE-INTERRUPT to be signalled.
-  * bug fix: adding and removing fd-handlers is now thread-safe.
+  * bug fix: FILE-POSITION used to signal an error in some cases where
+    ANSI requires it to return NIL.
+  * bug fix: ADJUST-ARRAY is now interrupt-safe.
+  * bug fix: adding and removing fd-handlers is now interrupt-safe.
   * bug fix: inlined calls to C now ensure 16byte stack alignment on
     x86/Darwin.
   * bug fix: bad type declaration in the CLOS implementation has
@@ -39,19 +88,28 @@ changes in sbcl-1.0.5 relative to sbcl-1.0.4:
     line in a file is unlimited.
   * bug fix: some GC deadlocks caused by asynchronous interrupts have
     been fixed by inhibiting interrupts for when GC is disbled.
-  * bug fix: GETHASH, (SETF GETHASH), CLRHASH and REMHASH are now
-    interrupt safe.
+  * bug fix: some interrupt safety issues with GETHASH, (SETF
+    GETHASH), CLRHASH and REMHASH have been fixed.
   * bug fix: binding *BREAK-ON-SIGNALS* to a value that is not a type
     specifier no longer causes infinite recursion.
   * bug fix: SB-EXT:MUFFLE-CONDITIONS declarations no longer trigger a 
-    bogus warning in DEFMETHOD bodies (reported by Kevin Reid)
+    bogus warning in DEFMETHOD bodies. (reported by Kevin Reid)
   * bug fix: an &environment argument with the correct variable information
-    is passed to macros that are expanded during byte compilation
+    is passed to macros that are expanded during byte compilation.
     (reported by Samium Gromoff)
-  * improvement: the x86-64/darwin port now passes all tests and
-    should be considered non-experimental.
+  * bug fix: a logic error was causing the hash function for bignums to
+    have excessive amounts of collisions. (reported by Faré Rideau)
+  * bug fix: modifying the contents of an array could change the return
+    value of SXHASH on that array, which is only allowed for strings 
+    and bit vectors. (bug introduced in 0.9.16)
+  * improvement: the x86-64/darwin port now passes all tests (except
+    for the debugger tests) but should still be considered
+    experimental until this is fixed.
   * improvement: a style-warning is signaled for CASE (etc) clauses with
-    duplicate keys (thanks to Kevin Reid)
+    duplicate keys. (thanks to Kevin Reid)
+  * improvement: macos/x86 and macos/x86-64 now use mach exception
+    handlers for dealing with illegal instructions (for trapping and
+    error handling) and memory protection violations (for GC).
 
 changes in sbcl-1.0.4 relative to sbcl-1.0.3:
   * new platform: experimental support for x86-64/darwin (MacOS).