1.0.33.14: improve UCS external formats
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 58ec040..778ee70 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,12 +1,36 @@
 ;;;; -*- coding: utf-8; fill-column: 78 -*-
-changes relative to sbcl-1.0.32:
+changes relative to sbcl-1.0.33:
+  * enhancement: SB-INTROSPECT:DEFTYPE-LAMBDA-LIST now also works on most
+    builtin types.
+  * enhancement: Errors during compile-time-too processing (i.e. EVAL-WHEN)
+    are now caught and reported just like errors during macroexpansion.
+  * fixes and improvements related to Unicode and external formats:
+    ** bug fix: error handling and restart usage in the ucs-2 external format 
+       has been improved.
+    ** there is now an implementation of the ucs-4 external format.
+  * bug fix: #p"\\\\" can now be read without error on Win32.  (reported by
+    Willem Broekema; launchpad bug lp#489698).
+  * bug fix: some minor code rearrangements to reenable warning-free building
+    from CMUCL (reported by xme@gmx.net; launchpad bug lp#491104)
+  * bug fix: PRINT-OBJECT for clos instances respects the right margin when
+    pretty printing
+
+changes in sbcl-1.0.33 relative to sbcl-1.0.32:
+  * new port: support added for x86-64 NetBSD.  (thanks to Aymeric Vincent)
   * improvement: support O_LARGEFILE access to files larger than 2GB on
-    x86-64/linux.  (thanks to Daniel Janus; launchpad bug #453080)
+    x86-64/linux.  (thanks to Daniel Janus; launchpad bug lp#453080)
   * new feature: SB-INTROSPECT:WHO-SPECIALIZES-DIRECTLY to get a list of
     definitions for methods specializing on the passed class itself. 
   * new feature: SB-INTROSPECT:WHO-SPECIALIZES-GENERALLY to get a list of
     definitions for methods specializing on the passed class itself, or on
     subclasses of it.
+  * new build flag: :sb-xref-for-internals; SBCL will collect xref information
+    about itself during the build (e.g. for M-? in Slime), if this flag is
+    enabled in customize-target-features.lisp. This will increase the core
+    size by about 5-6mb, though, so it's mostly interesting to SBCL
+    developers.
+  * new feature: various GENCGC tuning parameters have been experimentally
+    documented and exported from SB-EXT. See documentation for details.
   * fixes and improvements related to Unicode and external formats:
     ** the Unicode character database has been upgraded to the
        Unicode 5.2 standard, giving names and properties to a number of new
@@ -14,37 +38,63 @@ changes relative to sbcl-1.0.32:
        transformations.
     ** improvement: restarts for providing replacement input/output on coding
        errors for fd-stream external formats.
+    ** improvement: where :<encoding> is a keyword corresponding to an
+       external format the system supports, it is now possible to specify
+       (:<encoding> :replacement <character>) as an external format which will
+       automatically substitute <character> on encoding or decoding errors for
+       streams and for STRING-TO-OCTETS and its inverse.  (launchpad bug
+       lp#317072)
+    ** improvement: the file streams underlying the standard streams (such as
+       *STANDARD-INPUT*, *TERMINAL-IO*) are opened with an external format 
+       which uses the replacement mechanism to handle encoding errors,
+       preventing various infinite error chains and unrecoverable I/O
+       confusion.
     ** minor incompatible change: the utf-8 external format now correctly
        refuses to encode Lisp characters in the surrogate range (char-codes
        between #xd800 and #xdfff).
     ** fix a typo preventing conversion of strings into octet vectors
        in the latin-2 encoding.  (reported by Attila Lendvai; launchpad bug
-       #471689)
+       lp#471689)
     ** fix a bug in the octet multibyte handling of decoding errors and the
-       USE-VALUE restart.  (launchpad bug #314939)
+       USE-VALUE restart.  (launchpad bug lp#314939)
     ** fix the bug underlying the expected failure in the FORCE-END-OF-FILE
        restart on fd-stream decoding errors.
     ** fix a bug in the ATTEMPT-RESYNC fd-stream decoding restart when the
-       error is near the end of file
+       error is near the end of file.
     ** fix a double-error case in unibyte octet conversions, when the first
        use of USE-VALUE is ignored.
+    ** fix bugs in handling of undefined code points in unibyte encodings.
+    ** fix LISTEN (and consequent hangs in READ-CHAR-NO-HANG) on bivalent
+       streams after an UNREAD-CHAR.
   * enhancement: SB-INTROSPECT:ALLOCATION-INFORMATION also reports if the
     object is allocated in a boxed region of dynamic space.
+  * enhancement: SB-POSIX:FORK now signals an error if an attempt to
+    fork with multiple Lisp threads running is made, instead of going
+    ahead with unpredictable consequences. (reported by Leslie Polzer)
   * bug fix: uses of slot accessors on specialized method parameters within
     the bodies of SLOT-VALUE-USING-CLASS methods no longer triggers a type
     error while finalizing the class.  This fix may cause classes with slot
     accessors to be finalized later than previously.  (reported by Lars Rune
-    Nøstdal; launchpad bug #473699)
+    Nøstdal; launchpad bug lp#473699)
   * bug fix: restore buildability on the MIPS platform.  (regression from
     1.0.30.38, reported by Samium Gromoff)
   * bug fix: inspecting closures is less likely to fail with a type error.
   * bug fix: no timer starvation when setting the system clock back.
-    (launchpad bug #460283)
+    (launchpad bug lp#460283)
   * bug fix: WITH-STANDARD-IO-SYNTAX now binds *PRINT-PPRINT-DISPATCH* to the
     standard pprint dispatch table as specified by CLHS.
   * bug fix: give CLISP a hint about a type declaration to enable it to build
     the cross-compiler without warnings.  (thanks to Josh Elasser; launchpad
-    bug #396597)
+    bug lp#396597)
+  * bug fix: correctly dump literal objects in defaulting forms of arglists.
+    (reported by Attila Lendvai; launchpad bug lp#310132)
+  * bug fix: distinguish in type specifiers between arrays that might be
+    complex and arrays that are definitely complex.  (launchpad bug lp#309129)
+  * bug fix: SUBTYPEP knows that the SYMBOL type is not SUBTYPEP the KEYWORD
+    type.  (reported by Levente Mészáros; launchpad bug lp#485972)
+  * bug fix: setting the value of a symbol-macro within a method in the
+    presence of type declarations works properly again.  (reported by Iban
+    Hatchondo; launchpad bug lp#485019)
 
 changes in sbcl-1.0.32 relative to sbcl-1.0.31:
   * optimization: faster FIND and POSITION on strings of unknown element type