X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=dee4379d0aa372a349501b17d5b64628e1f72865;hb=ef3fa440db906a78b377d694313b2ef9aedda33a;hp=972981d72d61d71b02db17522895f0f920422f81;hpb=7c7e6276719b8d40fddec2070cad81064a25c8ed;p=sbcl.git diff --git a/NEWS b/NEWS index 972981d..dee4379 100644 --- a/NEWS +++ b/NEWS @@ -1,7 +1,57 @@ +;;;; -*- coding: utf-8; -*- +changes in sbcl-0.9.4 relative to sbcl-0.9.3: + * optimizations: REMOVE-DUPLICATES now runs in linear time on + lists in some cases. This partially fixes bug 384. + +changes in sbcl-0.9.3 relative to sbcl-0.9.2: + * New feature: Experimental support for bivalent streams: streams + opened with :element-type :default now allow character and binary + (unsigned-byte 8) I/O + * Support for the koi8-r external format. (thanks to Ivan Boldyrev) + * Bug fix: OPEN no longer fails when *PRINT-READABLY* is T. (thanks + to Zach Beane) + * bug fix: no more highly sporadic "couldn't check whether ~S is + readable" when reading a stream and an interrupt hits in the middle + of a select system call + * compiler better recognizes complex arrays (reported by Eduardo + Muñoz) + * bug fix: out-of-line SB-SYS:FOREIGN-SYMBOL-ADDRESS did not work + for variables on SBCL built with linkage-tables. (reported by Luis + Oliveira) + * various error reporting improvements. + * optimizations: LOGNOR on fixnums is improved in the MIPS backend. + (Thanks to Thiemo Seufer) + * bug fix: nested reader invokations work correctly + * bug fix: it is possible to have simultaneous references to foreign + code and foreign data with the same name. + * threads + ** added x86-64 support + ** incompatible change: the threading api now works with thread + objects instead of thread ids + ** bug fix: threads are protected from signals and interruption when + starting up or going down + ** bug fix: a race where an exiting thread could lose its stack to gc + ** bug fix: don't halt on infinite error in threads if possible + ** fixed numerous gc deadlocks introduced in the pthread merge + ** bug fix: fixed thread safety issues in read and print + ** bug fix: debugger doesn't hang on session lock if interrupted at + an inappropriate moment + ** bug fix: run-program is now thread safe(r) + ** bug fix: inner with-recursive-lock no longer releases the mutex + * fixed a bug in (DECODE-UNIVERSAL-TIME 0) (reported by Paul Dietz) + * fixed some bugs revealed by Paul Dietz' test suite: + ** TYPE-ERRORs from signalled by COERCE now have DATUM and + EXPECTED-TYPE slots filled. + ** MULTIPLE-VALUE-SETQ always returns the primary value of the + values form. + ** MAKE-CONDITION accepts classes as type-designators. + ** COMPILE may never return NIL. + ** ENCODE-UNIVERSAL-TIME now guards against times out of Unix's + range before calling Unix time functions + changes in sbcl-0.9.2 relative to sbcl-0.9.1: * numerous signal handling fixes to increase stability * Support for EUC-JP external format. (thanks to NIIMI Satoshi) - * bug fix: interrupt-thread restores the eflags register on x86 * minor incompatible change: we now correctly canonize default initargs, making them be a list of (INITARG INITFORM INITFUNCTION) as per the MOP, rather than the historical (INITARG INITFUNCTION @@ -12,7 +62,6 @@ changes in sbcl-0.9.2 relative to sbcl-0.9.1: * TRUENAME and PROBE-FILE now correctly resolve symlinks even if the pathname is a directory pathname. * SB-SPROF now works (more) reliably on non-GENCGC platforms. - * fixed some lockups due to gc/thread interaction * dynamic space size on PPC has been increased to 768Mb. (thanks to Cyrus Harmon) * SB-MOP:ENSURE-CLASS-USING-CLASS now accepts a class as the @@ -35,11 +84,17 @@ changes in sbcl-0.9.2 relative to sbcl-0.9.1: memory, and probably show better memory locality. (thanks to David Lichteblau) * optimization: DYNAMIC-EXTENT declarations for lists and closures - are treated as requests for stack allocation on the x86-64 and - Alpha-32 platforms. + are treated as requests for stack allocation on the x86-64, + Alpha-32, PPC and SPARC platforms. * contrib improvement: it's harder to cause SOCKET-CLOSE to close() the wrong file descriptor; implementation of SOCKET-OPEN-P. (thanks to Tony Martinez) + * threads + ** gcing a dead thread can no longer lead to lockups + ** threads block signals until they are set up properly + ** errno is no longer shared by threads + ** interrupt-thread restores the eflags register on x86 + ** fixed some lockups due to gc/thread interaction * fixed some bugs revealed by Paul Dietz' test suite: ** invalid dotted lists no longer raise a read error when *READ-SUPPRESS* is T