diff --git a/NEWS b/NEWS index ebf5d6169..64a56d2de 100644 --- a/NEWS +++ b/NEWS @@ -1,10 +1,275 @@ Guile NEWS --- history of user-visible changes. -Copyright (C) 1996-2012 Free Software Foundation, Inc. +Copyright (C) 1996-2013 Free Software Foundation, Inc. See the end for copying conditions. Please send Guile bug reports to bug-guile@gnu.org. +Changes in 2.0.8 (since 2.0.7): + +* TODO + +Reorder points in order of importance and make comprehensible + +Assemble thanks + +* Notable changes + +** guile.m4 allows selection of guile 2.0, 1.8, etc. + +Also GUILE_PKG; see "Autoconf Macros" in manual + +** more efficient scm_gcd of inums + + Optimize and simplify fractions code. + + Simplify and improve scm_i_big2dbl + + Optimize logarithms + + Reimplement 'inexact->exact' to avoid mpq functions. + +** mingw + +many, many bugs. + +remove special ifdefs, given gnulib + +windows file names handled correctly + +don't provide scm_std_select on mingw and similar platforms + +If we do not have sys/select.h, don't provide scm_std_select, +SELECT_TYPE, FD_SET, FD_ZERO, FD_ISSET, or FD_CLR. Guile should not be +setting these macros in public API. This is an incompatible change on +mingw, but oh well. + +** gnulib imports + +select, times, pipe-posix, fstat, getlogin, poll + +** optimize access to arrays of rank 1 or 2 + +** peval improvements + +inlining of ((let ((_ 10)) (lambda () _))) + +inlining of ((lambda _ _)) + +inlining of (apply (lambda _) 1 2 3 4) + +inlining of (call-with-values (lambda () (values 1 2)) (lambda _ _)) + +** `include' relative paths relative to including file + +Local Inclusion + +** slib compatibility + +** warn on multithreaded fork + +** trace: limit length of "| | | "... prefix + +see docs for ",trace" + +** Update predefined character sets to Unicode 6.2 + +* Manual updates + +** excise use of "iff" in the manual + +** Improve keyword notation of Texinfo function definitions. + +** arrays + +Document scm_array_type(), scm_array_ref(), array-length, +scm_array_length(), scm_c_array_length(). + +Fix wording of documentation for array-in-bounds? + +** better sxml docs + +"SXML" in manual + +** updates + +scm_new_smob instead of SCM_NEWSMOB / SCM_RETURN_NEWSMOB. +procedural interface to vectors (scm_c_vector_ref et al). + +replace old foreign->bytevector and bytevector->foreign with the new +procedure names using pointer. + +** an end to the generated-documentation experiment + +** document program-arguments-alist and program-lambda-list + +** update GOOPS class hierarchy diagram in web and pdf + +* New deprecations + +** (ice-9 mapping) + +** Deprecate generalized vector interface + +scm_generalized_vector_p, scm_generalized_vector_length, +scm_generalized_vector_ref, scm_generalized_vector_set_x, +scm_generalized_vector_to_list + +** deprecate SCM_CHAR_CODE_LIMIT and char-code-limit + +** deprecate http-get* + +The #:streaming? argument subsumes the functionality of http-get*. Also +deprecate #:extra-headers argument in favor of #:headers. + +* New interfaces + +** round-ash + +"Bitwise Operations" + +** GUILE_STACK_SIZE + +"Environment Variables" + +** GUILE_INSTALL_LOCALE + +"Environment Variables" + +** file names + +system-file-name-convention, file-name-separator?, +absolute-file-name? file-name-separator-string + +missing docs + +** array-length + +Array Procedures + +** add hash-count for native tables + +Hash Tables + +** Add foreign types: ssize_t and ptrdiff_t. + +Foreign Types + +** Add scm_from_ptrdiff_t and scm_to_ptrdiff_t. + +Integers + +** much more capable xml->sxml + +namespaces, processed entities, doctypes, literal strings... see +"Reading and Writing XML" + +** add --language argument to guile + +needs docs + +** current-language is a parameter in boot-9 + +Compiler Tower; repl, compile-and-load default to current language + +** add fluid->parameter + +Parameters in manual + +** add read-string and read-string! to (ice-9 rdelim) + +Line/Delimited in manual + +** http-head, http-post, http-put, http-delete, http-trace http-options + +"Web Client" + +** add bytevector->string and string->bytevector in new (ice-9 iconv) module + +"Representing Strings as Bytes" + +** add repl-option for customized print + +"REPL Commands" in the manual (,option print ...) + +** current-ssax-error-port is a parameter + +** %site-ccache-dir + +"Installing Site Packages", "Build Config" + +* Build fixes + +** Use accessors instead of symbols deprecated in libgc 7.3. +** Fix cross-compilation of `c-tokenize.o'. +** tests: Avoid missing missing-prototype warning with on glibc 2.17. +** doc: Fix build with Texinfo 5.0. +** GUILE_INSTALL_LOCALE=1 during build + (http://bugs.gnu.org/12887) +** if we have threads on windows, we have pthreads; inform bdw-gc of that + +* Bug fixes + +** allow for spurious wakeups from pthread_cond_wait + (http://bugs.gnu.org/10641) +** fix psyntax vs autoload + (http://bugs.gnu.org/12202) +** use chmod portably in (system base compile) +** fix response-body-port for responses without content-length +** allow case-lambda expressions with no clauses +** Improve standards conformance of string->number. + (http://bugs.gnu.org/11887) +** support calls and tail-calls with more than 255 formals +** ,option evaluates its right-hand-side + (http://bugs.gnu.org/13076) +** structs with tail arrays are not simple + (http://bugs.gnu.org/12808) +** Make `SCM_LONG_BIT' usable in preprocessor conditionals. + (http://bugs.gnu.org/13848) +** Fix thread-unsafe lazy initializations. +** Allow the SMOB mark procedures to be called when libgc uses parallel markers. + (http://bugs.gnu.org/13611) +** Fix later-bindings-win logic in with-fluids. + (http://bugs.gnu.org/13843) +** Fix duplicate removal of with-fluids. + (http://bugs.gnu.org/13838) +** Support calling foreign functions of 10 arguments or more. +** Let reverse! accept arbitrary types as second argument (new_tail) +** Recognize the `x86_64.*-gnux32' triplet. +** Check whether a triplet's OS part specifies an ABI. +** Recognize mips64* as having 32-bit pointers by default. +** remove language/glil/decompile-assembly.scm +** random_state_of_last_resort doesn't rely on HAVE_POSIX +** copy-file, load-objcode, mkstemp use O_BINARY +** fix compilation of functions with more than 255 local variables. +** Fix `getgroups' for when zero supplementary group IDs exist. +** allow (define-macro name (lambda ...)) +** (texinfo): add a command-spec for @math{}. +** (texinfo docbook): informaltable is a block element. +** (texinfo plain-text): Pass @math{} through as-is. +** (texinfo serialize): don't break words when wrapping +** guild: Gracefully handle failures to install the locale. +** Fix argument count for various format string escape sequences (in warning pass) +** Fix source annotation bug in psyntax 'expand-body'. +** ecmascript: Fix conversion to boolean for non-numbers. +** fix try-module-autoload, which did not detect failure to find the file + +file not found vs failure to load module. + +** Many (oop goops save) fixes +** http-get: don't shutdown write end of socket +** Avoid signed integer overflow in scm_product +** http: read-response-body always returns bytevector or #f (not EOF in one case) +** web: Correctly detect "No route to host" conditions. +** `system*': failure to execvp no longer leaks dangling processes + (http://bugs.gnu.org/13166) +** More sensible case-lambda* dispatch + (http://bugs.gnu.org/12929; see "Case-Lambda" in the manual) +** Do not defer expansion of internal define-syntax forms. + (http://bugs.gnu.org/13509) + + + Changes in 2.0.7 (since 2.0.6): * Notable changes