X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=2c206719e9ac1adda628a635f8612ef99f92cae6;hb=41bc875c0db352fb11e52e0d104e032682f49239;hp=3ccabe712a8e49827ce921c0bf3eae17f9ed72e3;hpb=14dbe4cc37ff6847e14ec90e9a75664bb281be3c;p=sbcl.git diff --git a/NEWS b/NEWS index 3ccabe7..2c20671 100644 --- a/NEWS +++ b/NEWS @@ -1,14 +1,115 @@ ;;;; -*- coding: utf-8; fill-column: 78 -*- -changes relative to sbcl-1.0.52: +changes relative to sbcl-1.0.53: + * minor incompatible changes: + ** RENAME-FILE on a symbolic links used to rename the linked-to file + instead of the link. + ** DELETE-DIRECTORY on symbolic link to a directory used to delete the + directory, but now signal an error instead. Use TRUENAME to resolve the + pathname if you wish to delete the linked directory, and DELETE-FILE if + you wish to delete the + ** The internal SB-THREAD::SPINLOCK API has been deprecated, and using + symbols associated with it will trigger a compile-time warning. + * thread-related enhancements: + (This work has been funded by the SBCL Threading 2011 IndieGoGo campaign. + Many thanks to generous donors!) + ** Threading is now more reliable on non-Linux platforms. We still don't + consider threads on non-Linux platforms good enough to enable them by + default, but they're in a clearly better shape now. + ** Deadlines supported now on all platforms. + ** All blocking functions in the threading API now have a :TIMEOUT + argument. + ** Semaphore notification objects have been added to SB-THREAD. + ** SB-CONCURRENCY contrib now includes Allegro-style GATE objects. + ** SB-EXT:COMPARE-AND-SWAP has been extended to support SLOT-VALUE, + STANDARD-INSTANCE-ACCESS, and FUNCALLABLE-STANDARD-INSTANCE-ACCESS. + ** Users can now defined new places usable with SB-EXT:COMPARE-AND-SWAP + using an API anologous to defining new SETFable places. + * GC-related enhancements and bug fixes: + ** --dynamic-space-size and --control-stack-size now understand Kb, Mb, + and Gb suffixes. Default is megabytes as before. + ** on GENCGC targets, the default dynamic space size is now 512Mb for + 32-bit systems, and 1Gb for 64-bit systems. (OpenBSD/x86-64 is the only + exception, defaulting to mere 444Mb to fit under default ulimits.) The + new defaults are in place to prevent hitting swap on low-end systems. + Use build-time option --dynamic-space-size to build an SBCL with + another default, or the runtime option to adjust the size at startup: a + good size is at most equal to the amount of physical memory the system + has. + ** on GENCGC targets, nursery and generation sizes now default to 5% of + dynamic-space size. + ** on GENCGC targets, SB-KERNEL:MAKE-LISP-OBJ no longer categorically + refuses to create SIMPLE-FUN objects. + ** on 64-bit GENCGC targets, setting the nursery size above 4Gb now works. + (lp#870868) + ** on CHENEYGC targets, SB-KERNEL:MAKE-LISP-OBJ now does the same + validation of pointer objects as GENCGC does, instead of a + comparatively weak bounds-check against the heap spaces. + * SB-BSD-SOCKETS bug fixes: + ** GET-PROTOCOL-BY-NAME had a significant memory leak. + ** GET-HOST-BY-NAME and GET-HOST-BY-ADDRESS small amounts of memory on + systems with getaddrinfo(). + ** GET-HOST-BY-NAME and GET-HOST-BY-ADDRESS weren't thread or interrupt + safe outside systems with getaddrinfo(). + * enhancement: ASDF has been updated 2.019. + * enhancement: special-case TCO prevention for functions which never return + extended to untrusted types, keeping one more frame's worth of debug + information around in many cases. + * enhancement: debug-names of anonymous and local function are more + descriptive. Affects backtraces and SB-SPROF results. (lp#805100) + * enhancement: on win32, ABS of complex floats guards better against + overflows. (lp#888410) + * enhancement: RUN-PROGRAM now distinguishes exec() failing from child + process exiting with code 1. (lp#676987) + * enhancement: convenience function SET-SBCL-SOURCE-LOCATION for informing + the system where on the filesystem the SBCL sources themselves are + located. (Thanks to Zach Beane) + * enhancement: the compiler is now able to derive tighter bounds for + floating point numbers in some cases. (Thanks to Lutz Euler, lp#894498) + * bug fix: on 64-bit targets, atomic-incf/aref does index computation + correctly, even on wide-fixnum builds. (lp#887220) + * bug fix: (DIRECTORY "foo/*/*.*") did not follow symlinks in foo/ that + resolved to directories. + * bug fix: type mismatch when assigning to lexical variables no longer + result in fasl-dumping internal type objects. (lp#890750) + * bug fix: type mismatch on (SETF AREF) and function return values no + longer result in fasl-dumping internal type objects. + * bug fix: With several combinations of argument types, for example (EXPT + <(complex double)>), EXPT now uses double-precision throughout + instead of partially calculating only to single-precision. (lp#741564; + thanks to Lutz Euler) + * bug fix: SYMBOL-VALUE-IN-THREAD is no longer able to construct bogus + objects when interrupted by GC on PPC. + +changes in sbcl-1.0.53 relative to sbcl-1.0.52: * enhancement: on 64-bit targets, in src/compiler/generic/early-vm.lisp, the parameter n-fixnum-tag-bits may now vary from 1 (fixnum = (signed-byte 63)) to 3 (fixnum = (signed-byte 61)) at build-time. + * enhancement: SB-EXT:WAIT-FOR allows waiting for arbitrary events. * minor(?) incompatible(?) change: The default fixnum width on 64-bit targets is now 63 bits (up from 61). - * bug fix: PUSH, PUSHNEW, POP, REMF, INCF, DECF, and DEFINE-MODIFY-MACRO - now arrange for non-primary values of multiple-valued places to be set - to NIL, instead of signalling an error (per a careful reading of CLHS - 5.1.2.3). + * enhancement: DESCRIBE now reports a lambda-list and source location + for complext setf-expanders. + * bug fix: PUSH, PUSHNEW, POP, REMF, INCF, DECF, DEFINE-MODIFY-MACRO, + GETF, LOGBITP, LDB, and MASK-FIELD now arrange for non-primary values + of multiple-valued places to be set to NIL, instead of signalling an + error (per a careful reading of CLHS 5.1.2.3). + * bug fix: floating-point traps now work on darwin/x86 and /x86-64. + * bug fix: repair crash in x86oid darwin signal handling emulation + when built with certain compilers. + * bug fix: SB-ROTATE-BYTE misrotated to the right when using constant + rotation arguments on x86-64. (lp#882151) + * bug fix: low-level control flow optimisations could result in bogus + code in functions with tail and non-tail calls to local functions on + x86oids. (lp#883500) + * bug fix: on SPARC/:sb-unicode, avoid crashing the assembler by trying + to emit literal characters > (code-char 4095), for comparisons with + constant characters. + * bug fix: ROOM reported only the low 32 bits of dynamic space usage + on 64 bit platforms. (lp#881445) + * bug fix: DELETE-FILE did not MERGE-PATHNAMES, making it possible to + delete the wrong file when using relative pathnames. (lp#882877) + * bug fix: optimized SEARCH of vectors-on-vectors mishandled zero-length + sequences and :KEY NIL. changes in sbcl-1.0.52 relative to sbcl-1.0.51: * enhancement: ASDF has been updated to version 2.017.