X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=8d6209789851ac0eba09d4a411774b38109d31b8;hb=6ddc6bb305b4f218780d4b2c9a2ac3584a85f94a;hp=5393949c780397ed6ae73a2c55b1db76bf7dae73;hpb=4466e4353ce057b51f4e78ea9191b4524c7457a9;p=sbcl.git diff --git a/NEWS b/NEWS index 5393949..8d62097 100644 --- a/NEWS +++ b/NEWS @@ -1,8 +1,87 @@ ;;;; -*- 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. + ** Default dynamic space size on all GENCGC platforms 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 systems nursery and generation sizes now default to 5% of + dynamic-space size. + ** on 64-bit systems setting the nursery size above 4Gb now + works. (lp#870868) + ** SB-KERNEL:MAKE-LISP-OBJ on GENCGC no longer categorically refuses to + create SIMPLE-FUN objects. + * 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: special-case TCO prevention for functions which never return + extended to untrusted type, 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 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. + * 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) + * 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). * enhancement: DESCRIBE now reports a lambda-list and source location @@ -11,6 +90,23 @@ changes relative to sbcl-1.0.52: 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.