1.0.4.92: faster generic array access
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 35526eb..c6cb951 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,105 @@
 ;;;; -*- coding: utf-8; -*-
+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
+    information anyway.
+  * minor incompatible change: changed experimental JOIN-THREAD interface
+  * documentation: the manual now lists reader and writer methods
+    in class slot documentation sections. (thanks to Richard M Kreuter)
+  * documentation: unwinding from asyncronous events has been
+    documented as unsafe.
+  * documentation: SB-SYS:WITHOUT-GCING has been documented as unsafe
+    in multithreaded application code.
+  * optimization: GET-INTERNAL-REAL-TIME has been optimized on POSIX
+    platforms. (thanks to James Anderson for the optimization hint)
+  * optimization: REPLACE, SUBSEQ, and COPY-SEQ are now optimized in
+    more cases.
+  * optimization: STRING-{EQUAL,LESSP,GREATER-P} and their NOT-
+    variants no longer cons.
+  * optimization: Direct calls to CHAR-{EQUAL,LESSP,GREATERP} and
+    their NOT- variants no longer cons.
+  * 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
+  * enhancement: XREF information is now collected to 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: 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
+    been fixed. (reported by James Anderson)
+  * bug fix: incorrect ROOM reporting on x86-64 has been fixed.
+    (thanks to Lutz Euler)
+  * bug fix: DEFSETF now allows &ENVIRONMENT and disallows &AUX as
+    required by the CLHS. (reported by Samium Gromoff)
+  * bug fix: dead unbound variable references now signal an error.
+    (reported by Marco Monteiro)
+  * bug fix: / with an unused value was being deleted in safe code.
+    (thanks to Marco Monteiro and Kevin Reid)
+  * bug fix: number of characters that can be written onto a single
+    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: 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)
+  * bug fix: an &environment argument with the correct variable information
+    is passed to macros that are expanded during byte compilation
+    (reported by Samium Gromoff)
+  * 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 and
+    should be considered non-experimental.
+  * improvement: a style-warning is signaled for CASE (etc) clauses with
+    duplicate keys (thanks to Kevin Reid)
+
+changes in sbcl-1.0.4 relative to sbcl-1.0.3:
+  * new platform: experimental support for x86-64/darwin (MacOS).
+  * incompatible change: the thread-safe (on most platforms) getaddrinfo
+    and getnameinfo sockets functions are used instead of gethostbyaddr
+    and gethostbyname, on platforms where the newer functions are available.
+    As a result, the ALIASES field of HOST-ENT will always be NIL on these
+    platforms.
+  * change: runtimes with embedded cores (i.e. saved with :EXECUTABLE T)
+    don't print the startup banner, but behave as if --noinform was passed
+    as a command line argument. (thanks to Kevin Reid)
+  * new experimental feature: added JOIN-THREAD (by NIIMI Satoshi)
+  * optimization: code using alien values with undeclared types is much faster.
+  * optimization: the compiler is now able to open code SEARCH in more cases.
+  * optimization: more compact typechecks on x86-64 (thanks to Lutz Euler)
+  * bug fix: using standardized COMMON-LISP special variables as loop
+    variables no longer signals bogus package lock violations. (reported
+    by Eric Marsden)
+  * bug fix: declaring local loop variables to be of a range-limited type
+    such as (SINGLE-FLOAT 1.0 2.0) no longer causes a compile-time error.
+    (reported by Andras Simon)
+  * bug fix: >= and <= gave wrong results when used with NaNs. (Some NaN
+    bugs remain on x86-64.)
+  * bug fix: the #= and ## reader macros now interact reasonably with
+    funcallable instances.
+  * bug fix: type-checks for function arguments were compiled using the
+    compiler policy settings of the wrong lexical environment (in 1.0.2
+    and 1.0.3).
+  * bug fix: SHADOW accepts characters as string designators, as required
+    by the spec (thanks to Eric Marsden)
+  * bug fix: fixed GC safety issues when foreign functions are called with
+    non-base strings as arguments
+  * bug fix: more consistent error output for fatal-compiler-warnings, like
+    reader errors
+  * bug fix: functions with proper names were showing up as NIL in
+    backtraces (reported by Edi Weitz, regression in 1.0.2)
+
 changes in sbcl-1.0.3 relative to sbcl-1.0.2:
   * new platform: NetBSD/PPC.  (thanks to Aymeric Vincent)
   * optimization: calls of the form (AREF FOO (+ INDEX <constant>)) now