X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=6728d457cd578c572edcb78d2c6ae667d4815671;hb=d63d80e637e9058ff5db7a10c267796ff7970ba1;hp=0226ff5280919a5c94b047ea9b15e9e2299dc5c9;hpb=4f9b5cd4268d3e28ac54748c4871e07f38acfd4c;p=sbcl.git diff --git a/NEWS b/NEWS index 0226ff5..6728d45 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,19 @@ ;;;; -*- coding: utf-8; fill-column: 78 -*- +changes in sbcl-1.0.27 relative to 1.0.26: + * new port: support added for x86-64 OpenBSD. (thanks to Josh Elsasser) + * bug fix: a type error is signaled for attempts to use the LOOP + keyword ACROSS for a NIL value. (thanks to Daniel Lowe) + changes in sbcl-1.0.26 relative to 1.0.25: - * incompatible change: GC-OFF and GC-ON are removed, they were + * incompatible change: an interruption (be it a function passed to + INTERRUPT-THREAD or a timer function) runs in an environment where + interrupts can be enabled. The interruption can use + WITH-INTERRUPTS or WITHOUT-INTERRUPTS as it sees fit. Use + WITHOUT-INTERRUPTS to avoid nesting of interruptions and + potentially running out of stack. Keep in mind that in the absence + of WITHOUT-INTERRUPTS some potentially blocking operation such as + acquiring a lock can enable interrupts. + * incompatible change: GC-OFF and GC-ON are removed, as they were always unsafe. Use WITHOUT-GCING instead. * new feature: runtime option --disable-ldb * new feature: runtime option --lose-on-corruption to die at the @@ -8,11 +21,32 @@ changes in sbcl-1.0.26 relative to 1.0.25: memory, stack, alien stack, binding stack, encountering a memory fault, etc. In the absence of --lose-on-corruption a warning is printed to stderr. + * enhancement: detect binding stack exhaustion + * enhancement: detect alien stack exhaustion on x86/x86-64 + * improvement: generally more stable and reliable interrupt handling + * improvement: there is a per thread interruption queue, + interruptions are executed in order of arrival + * improvement: a repeating timer reschedules itself when the it has + finished, but expiration times are spaced equally. If an + expiration time is in the past it will trigger after a short grace + period that may give a chance to other things to run. * optimization: slightly faster gc on multithreaded builds * optimization: faster WITHOUT-GCING + * bug fix: when JOIN-THREAD signals an error, do it when not holding + important locks so that the debugger/handler doesn't produce + recursive errors or deadlock. * bug fix: real-time signals are not used anymore, so no more hanging when the system wide real-time signal queue gets full. + * bug fix: INTERRUPT-THREAD on a dying thread could produce memory + fault. * bug fix: finalizers, gc hooks never run in a WITHOUT-INTERRUPTS + * bug fix: fix random memory faults related to interrupts on alpha + * bug fix: fix random memory faults related to interrupts on sparc + * bug fix: fix deadlocks related to starting threads + * bug fix: fix deadlines on locks on futex platforms + * bug fix: restore errno in signal handlers + * bug fix: fix deadlocks related to hash tables + * bug fix: fix deadlocks in pcl changes in sbcl-1.0.25 relative to 1.0.24: * incompatible change: SB-INTROSPECT:FUNCTION-ARGLIST is deprecated, to be