X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=6fed3ba9fd8cbd802d90bb4b61f4eea9e1d1ce8d;hb=562e48a2bd3467121e24214110e535c841fbb622;hp=f04d2857ab9366968f1a18e176e05998176ca44c;hpb=51e63f301624e39febdd85b5feba19b7c980f307;p=sbcl.git diff --git a/NEWS b/NEWS index f04d285..6fed3ba 100644 --- a/NEWS +++ b/NEWS @@ -1,9 +1,176 @@ ;;;; -*- coding: utf-8; -*- +changes in sbcl-1.0.7 relative to sbcl-1.0.6: + * enhancement: name of a socket-stream is now "a socket" instead of + "a constant string". + * bug fix: the cache used by the CLOS to store precomputed effective + methods, slot offsets, and constant return values is now thread and + interrupt safe. + +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 )) now + produce more efficient code on x86-64 if the compiler can determine + that (+ INDEX ) 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 and + MIPS platforms. (It is also now more likely to work on CheneyGC + builds on the PPC.) + * enhancement: sb-sprof can now also track and report accurate call + counts. + * bug fixes: the treatment of non-standard subclasses of + SB-MOP:SPECIALIZER is more correct. + * 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 + 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. + * 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: 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 + 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: 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) + * 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 (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) + * 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). + * 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 )) now produce more efficient code on the x86 if the compiler can determine that (+ INDEX ) does not require a bounds check and FOO has an element type at least 8 bits wide. + * bug fix: references to undefined variables are handled the same way + in toplevel forms as in the normal compiler + * bug fix: the build scripts again work with non-bash /bin/sh (thanks + to Magnus Henoch) + * bug fix: use "gtar" as the asdf-install *TAR-PROGRAM* on NetBSD + (thanks to Jon Buller) + * improvement: faster compilation times for complex functions + * improvement: added readlink support to SB-POSIX (thanks to Richard + M Kreuter) changes in sbcl-1.0.2 relative to sbcl-1.0.1: * improvement: experimental support for mach exception handling on