[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
a draft for the top of the NEWS for 2.0.12
a draft for the top of the NEWS for 2.0.12
Wed, 22 Jun 2016 17:41:42 -0300
Here below a draft for the top of the NEWS file for Guile 2.0.12
It needs review, in particular the 'Notable changes - Goops entry',
see FIXME in the text.
Guile NEWS --- history of user-visible changes.
Copyright (C) 1996-2016 Free Software Foundation, Inc.
See the end for copying conditions.
Please send Guile bug reports to address@hidden
* Changes in 2.0.12 (since 2.0.11):
** Notable changes
Guile 2.0.12 needs libunistring >= 0.9.3
This check is now part of the configure step.
Two major changes have been made:
1- #:init-value on class-allocated slots: allocating an instance of a
class with a #:class or #:each-subclass slot allocation should not
re-initialize the class-allocated slot.
2- accessor methods only apply to subclasses with their slot
(a) let users know that it will break Goops user code relying on
previsouly inherited getters, setters and accessors ... (b) why this: so
that Guile 2.x.x behave like guile-1.8 wrt Goops. But the full picture
is rather strange, and will be (re)fixed soon, see this discussion
http://thread.gmane.org/gmane.lisp.guile.user/11218/focus=11813 for some
*** FFI: Add support for functions that set 'errno'
When accessing POSIX functions from a system's libc via Guile's dynamic
FFI, you commonly want to access the ‘errno’ variable to be able to
produce useful diagnostic messages.
This is now possible, check the Guile's dynamic FFI documentation for
the details, in paticular the following entries have been updated
accordingly: pointer->procedure, scm_pointer_to_procedure and
*** Add SRFI-25 implementation
Adds an implementation of SRFI 25 on top of Guile's native arrays. The
implementation does not introduce a disjoint type; Guile arrays and
SRFI-25 arrays can be used interchangably, though with different, partly
*** Add SRFI-28 implementation
Adds an implementation of SRFI 28 Basic Format Strings.
*** The #!r6rs directive now influences read syntax
The #!r6rs directive now changes the per-port reader options to make
Guile's reader conform more closely to the R6RS syntax. In particular:
- It makes the reader case sensitive.
- It disables the recognition of keyword syntax in conflict with the
R6RS (and R5RS).
- It enables the `square-brackets', `hungry-eol-escapes' and
`r6rs-hex-escapes' reader options.
*** SRFI-14 character data set
SRFI-14 character data set has been regenerated for Unicode 8.0.0.
*** Web modules
The (web server) module now exports 'server-impl' procedures, (web server
http) exports the 'http' server implementation.
Also, http location header accepts URI-reference, not just absoluteURIs.
The following 2 new procedures have been added: 'string-utf8-length' and
'string-hash' has been optimized: this yields a 50% improvement on the
"narrow string" benchmark of 'hash.bm', 41% on "wide string", and 76% on
'write' has been optimized: this shows a 19% improvement on the "string
without escapes" micro-benchmark of 'write.bm', and 12% on "string with
'read-string' speed up: this yields a 20% improvement on the
'scm_string_hash' has been deprecated.
'scm_read_string_like_syntax' now accept "\(" as equivalent to "(".
Tow new macros have been added: 'SCM_VALIDATE_SIZE_COPY' and
*** New Module
Add (ice-9 unicode) module.
Functionalities have been added to disable automatic finalization: see
the (Smobs) documentation node for the details and new functions.
'EXIT_SUCCESS' and 'EXIT_FAILURE' added and documented.
The following ARM target have been added: "arm.*eb", "^aarch64.*be", and
** Fixed Bugs
The following bugs and/or 'miss behavior' have been fixed:
*** 17399 - detect too-old libunistring at configure-time
*** n/a - SRFI-2 (and-let*) has been re-implementated
*** n/a - size measurement in bytevector_large_set
*** n/a - uri-decode behavior for "+"
*** 18477 - use source file permissions for compiled files
*** 14347 - call-with-prompt continuation, returned value(s)
*** 22406 - sizeof (long) support for LLP64 data model
*** 22152 - fat_mutex, fat_mutex_unlock
*** 23421 - http, date strings with a leading space for hours
*** n/a - SRFI-19, update the table of leap seconds
*** 22273 - http, Accept empty reason phrases
*** n/a - get[set]sockopt now have their arg of type 'int'
*** 20302 - seeking on binary input ports with putback buffers
*** n/a - web, use 'close-port' for delimited input ports
*** n/a - match-each+, non-pair syntax object in a dotted tail
*** n/a - atan procedure when applied to complex numbers
*** 20200 - bytevector and custom binary ports to use ISO-8859-1
*** 19646 - handle ENOSYS return for 'setaffinity'
*** 19939 - http, do not buffer HTTP chunks
*** 19621 - buffer overrun with unbuffered custom binary input ports
*** 18988 - 'select' signal interruptions clarification
*** 19027 - bytevector-fill! to accept fill arguments greater than 127
*** 18866 - bytevector-copy and SRFI-4 homogeneous numeric vectors
*** 18898 - avoid bash-specific '==' in guile.m4
*** 18065 - strerror error handling when given a non-integer argument
*** 18680 - scm_boot_guile now handles gracefully argc == 0
*** 17634 - peval, handle optional arg inits that refer to previous args
*** 18470 - autogen.sh invoke 'libtoolize', not 'libtool'
*** 18495 - SCM_SMOB_OBJECT_LOC macro definition
*** n/a - SRFI-43 vector-concatenate error message
*** 18299 - handle ~p in 'format' warnings
*** n/a - bit-count*, scm_bit_count_star miss used 1 and 2 args
*** n/a - handle Windows file names that use backslashes
*** n/a - CPU set size proper calculation for getaffinity
*** n/a - unconditionally build and test (ice-9 popen)
*** n/a - test-suite, deleting files whose ports are not closed
*** n/a - make 'system*' available on MS-Windows.
*** n/a - test-suite, deletion of ports.test on MS-Windows
*** n/a - compile scm_nl_langinfo 'with' nl_langinfo missing items
*** n/a - test-suite, lack-of-/dev/null detection improved
*** n/a - test-suite, i18n tests adjusted for MS-Windows
*** n/a - test-suite, i18n, ignore LC_MESSAGES on MinGW
*** n/a - test-suite, Use NUL instead of /dev/null on MinGW
*** 17147 - avoid quadratic expansion time in 'and' and 'or' macros
*** 17296 - SRFI-1 length+ none proper or circular list error
*** 17661 - system async functions marked as SCM_API
*** 17466 - shrinking of contiguous bytevectors
*** 15368 - 'open-socket-for-uri' should not call 'setsockopt'
The following documention nodes, in alphabetical order, have been
reviewed or added:
*** (API Reference)
*** (Accessing Modules from C)
*** (Block Comments)
*** (Bytevectors as Strings)
*** (Conservative GC)
*** (Dynamic FFI)
*** (Environment Variables)
*** (Foreign Objects)
*** (Function Snarfing)
*** (Garbage Collecting Smobs)
*** (Garbage Collection Functions)
*** (How guile***snarf works)
*** (Http Headers)
*** (Memory Blocks)
*** (Object Properties)
*** (Parallel Installations)
*** (Ports and File Descriptors)
*** (Pretty Printing)
*** (R6RS Libraries)
*** (Random Access)
*** (SRFI-25) [ New node ]
*** (SRFI-28) [ New node ]
*** (String Syntax)
*** (Syntax Case)
*** (Using Guile Modules)
Description: OpenPGP digital signature
- a draft for the top of the NEWS for 2.0.12,
David Pirotte <=