From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Pirotte Newsgroups: gmane.lisp.guile.devel Subject: a draft for the top of the NEWS for 2.0.12 Date: Wed, 22 Jun 2016 17:41:42 -0300 Message-ID: <20160622174142.18affdda@capac> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_///QkyrXss57/wk5VlM1tv_B"; protocol="application/pgp-signature" X-Trace: ger.gmane.org 1466628701 28670 80.91.229.3 (22 Jun 2016 20:51:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 22 Jun 2016 20:51:41 +0000 (UTC) To: guile-devel Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Wed Jun 22 22:51:28 2016 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1bFp7B-0002mK-P6 for guile-devel@m.gmane.org; Wed, 22 Jun 2016 22:51:14 +0200 Original-Received: from localhost ([::1]:60816 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFp7A-0002qW-U2 for guile-devel@m.gmane.org; Wed, 22 Jun 2016 16:51:12 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37865) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFoye-0001bs-5S for guile-devel@gnu.org; Wed, 22 Jun 2016 16:42:25 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bFoya-0000BI-NN for guile-devel@gnu.org; Wed, 22 Jun 2016 16:42:24 -0400 Original-Received: from maximusconfessor.all2all.org ([79.99.200.102]:59697) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFoya-0008Sq-Eh for guile-devel@gnu.org; Wed, 22 Jun 2016 16:42:20 -0400 Original-Received: from localhost (unknown [192.168.0.2]) by maximusconfessor.all2all.org (Postfix) with ESMTP id BB910A04C14C for ; Wed, 22 Jun 2016 22:41:55 +0200 (CEST) Original-Received: from maximusconfessor.all2all.org ([192.168.0.1]) by localhost (maximusconfessor.all2all.org [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id GskPOsMX0HnU for ; Wed, 22 Jun 2016 22:41:50 +0200 (CEST) Original-Received: from capac (unknown [179.210.32.169]) by maximusconfessor.all2all.org (Postfix) with ESMTPSA id C8327A04C146 for ; Wed, 22 Jun 2016 22:41:49 +0200 (CEST) X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 79.99.200.102 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.org gmane.lisp.guile.devel:18391 Archived-At: --Sig_///QkyrXss57/wk5VlM1tv_B Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Heya, 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. Cheers, David 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 bug-guile@gnu.org. * Changes in 2.0.12 (since 2.0.11): ** Notable changes *** Dependencies Guile 2.0.12 needs libunistring >=3D 0.9.3 This check is now part of the configure step. *** Goops 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 FIXME (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=3D11813 for some details. ENDFIXME *** 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 =E2=80=98errno=E2=80=99 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 scm_pointer_to_procedure_with_errno. *** Add SRFI-25 implementation =20 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 conflicting APIs. *** 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. *** Strings The following 2 new procedures have been added: 'string-utf8-length' and 'scm_c_string_utf8_length'. '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 "long string". 'write' has been optimized: this shows a 19% improvement on the "string without escapes" micro-benchmark of 'write.bm', and 12% on "string with escapes". 'read-string' speed up: this yields a 20% improvement on the "read-string" benchmark. 'scm_string_hash' has been deprecated. 'scm_read_string_like_syntax' now accept "\(" as equivalent to "(". *** Libguile Tow new macros have been added: 'SCM_VALIDATE_SIZE_COPY' and SCM_NUM2SIZE. *** New Module Add (ice-9 unicode) module. *** SMOBs Functionalities have been added to disable automatic finalization: see the (Smobs) documentation node for the details and new functions. *** Posix 'EXIT_SUCCESS' and 'EXIT_FAILURE' added and documented. *** Architectures The following ARM target have been added: "arm.*eb", "^aarch64.*be", and "aarch64". ** 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 '=3D=3D' in guile.m4 *** 18065 - strerror error handling when given a non-integer argument *** 18680 - scm_boot_guile now handles gracefully argc =3D=3D 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' ** Documentation The following documention nodes, in alphabetical order, have been reviewed or added: *** (API Reference) *** (Accessing Modules from C) *** (Block Comments) *** (Bytevectors as Strings) *** (Catch) *** (Conservative GC) *** (Dynamic FFI) *** (Environment Variables) *** (Equality) *** (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) *** (Processes) *** (R6RS Libraries) *** (Random Access) *** (SRFI-25) [ New node ] *** (SRFI-28) [ New node ] *** (SRFI-43) *** (SRFI-9) *** (SXML) *** (SXPath) *** (Signals) *** (Smobs) *** (Statprof) *** (String Syntax) *** (Syntax Case) *** (Tree-IL) *** (Using Guile Modules) --Sig_///QkyrXss57/wk5VlM1tv_B Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBCAAGBQJXavgGAAoJEPN0/ZOjBXrXA6YH/1giw1QceMs2vBrChquhVjaf iU0dF8WODnqswK0O4WHRbgNZEI6YZM4lll/DGA+rV2QUiFtxDAlnzG+0MKSFthJQ y9FG+zmPBIqYytYY8FMs3di/ccS4yKWPUlXsxsPofZD/WlENXizdspp/8ADcqE49 sk3PpTIE08/bUzsDaj8shpRto1mEuwXm0H+de1QMV3y6PteqArJgttoeYVUUlo6d Q/SHiLpHqF7qudK1QKA3ycip+TL8XjpvJtPRVKvnWhoGqU0pPTuAA/ZQv5f00DN+ Ql5ApqullPfvH8OC8S8bu6kAKbww5/YUdy45ynzcYoXwe99p+vOAEFKK+dW/Lkg= =1TXd -----END PGP SIGNATURE----- --Sig_///QkyrXss57/wk5VlM1tv_B--