to trigger/signal a rebuild for the transition 5.10.1 -> 5.12.1.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=..."), minus the packages updated after
the perl package update.
sno@ was right after all, obache@ kindly asked and he@ led the
way. Thanks!
Pkgsrc changes:
o Adapt PLIST and Makefile to what's in the package source and what
is now being installed.
Upstream changes:
* Core
o Added ByteBuffer PMC to allow direct byte manipulation
o Modified some PMC vtable functions to reduce complexity,
simplifying coverage.
o Modified PAST to generate symbolic PASM constants in PIR output.
o General STRING API cleanups
o Increased test coverage of core PMCs
o Fixed up 'exit' opcode, added CONTROL_EXIT exception type.
o Experimental 'unroll' opcode renamed to 'finalize'
* NQP-rx
o Added proper support for multisubs and multimethods
o Fixed sigspace handling ** quantifier in regexes
o Added \e strings
o Added use of inversion lists for charclass lists in regexes
* Platforms
o EPEL (Extra Packages for Enterprise Linux) packages for
RHEL6.beta are available
* Begin moving towards Lorito, the ops refactor to enable pervasive
self-hosting and JIT compilation.
o All ops are now built with the self-hosted opsc compiler.
o For more Information about Lorito see:
+ http://trac.parrot.org/parrot/wiki/Lorito
+ http://trac.parrot.org/parrot/wiki/LoritoRoadmap
Pkgsrc changes:
- Adjust some patches
- Remove patches integrated upstream
- Use Perl's "Policy.sh" framework (along the way remove some patches)
- Link in an enterprise friendly way on HPUX
- in buildlink3.mk bump minimum required pkgsrc Perl version to
5.12.0
- placate some pkglint warnings
Upstream changes:
- From version 5.12.1 announce
This release contains minor bug fixes and updates of several core
modules, as well as minor documentation updates. It should be fully
backward compatible with Perl 5.12.0.
- From version 5.12.0 announce:
Perl 5.12.0 represents approximately two years of development since
version 5.10.0 and contains over 750,000 lines of changes across over
3,000 files from over 200 authors and committers.
[...]
Notable changes in Perl 5.12 include:
* Perl now conforms much more closely to the Unicode standard.
Additionally, this release includes an upgrade to version
5.2 of the standard.
* New experimental APIs allow developers to extend Perl with
"pluggable" keywords and syntax.
* Perl now has a better sense of time and will be able to keep
accurate time well past the "Y2038" barrier.
* New syntax allows developers to specify package version numbers
directly in "package" statements
* Perl now warns the user about the use of deprecated features
by default.
- For a complete list of changes see included perl5120delta(1) and
perl5121delta(1) or http://perldoc.perl.org/perl5120delta.html and
http://perldoc.perl.org/perl5121delta.html
Some of the highlights in release 3.12 are:
* Polymorphic recursion is supported, using explicit type
declarations on the recursively-defined identifiers.
* First-class modules: module expressions can be embedded as
values of the core language, then manipulated like any other
first-class value, then projected back to the module level.
* New operator to modify a signature a posteriori: S with type
t := tau denotes signature S where the t type component is
removed and substituted by the type tau elsewhere.
* New notations for record expressions and record patterns:
{ lbl } as shorthand for { lbl = lbl }, and { ...; _ } marks
record patterns where some labels were intentionally omitted.
* Local open let open ... in ... now supported by popular demand.
* Type variables can be bound as type parameters to functions;
such types are treated like abstract types within the
function body, and like type variables (possibly generalized)
outside.
* The module type of construct enables to recover the module
type of a given module.
* Explicit method override using the method! keyword, with
associated warnings and errors.
Changes in 5.11.4:
* ADDED: library coinduction.pl, after discussion with Gopal Gupta.
* CLEANUP: Share more of the Makefiles between Windows and the rest
* FIXED: destruction of a queue if a thread is waiting to write
* FIXED: error by current_blob/2.
* MODIFIED: incorrect handling of (^)/2 in setof/3 and bagof/3.
The new version should now fully comply to ISO. As of now,
- The predicate ^/2 no longer exists
- ^ is only handled by bagof/setof if it appears
directly at the toplevel of the 2nd argument.
E.g., the following is NOT allowed:
setof(X, (foo(X); Y^foo(Y)), L).
Code must be rewritten. At runtime, problems are signalled
by ^/2 being undefined. compile-time analysis can be achieved using
gxref/0 (or check/0 for quick-and-dirty).
* FIXED: GC error when nesting (if->then/*no-else*/) inside \+.
Thanks to test-case by Keri Harris.
* FIXED: retractall(x(X,X)). Roberto Tiella.
Changes in 5.11.3:
* FIXED: Top level now performs expand_goal/2 *after* correcting the
goal.
* MODIFIED: PL_CUTTED -> PL_PRUNED. Kept PL_CUTTED as a #define for
compatibility.
* FIXED: Correctly read RDF/XML that is in UTF-8 on Windows.
* ENHANCED: Faster enumeration of subjects for writing small RDF gaphs
* ENHANCED: Better sizing of the hash-tables.
* CLEANUP: Use size_t in many places for RDF-DB
* ADDED: RDF-DB index on +,+,+. This provides a significant speedup in
loading databases with multiple objects on the same SP.
* ADDED: Syntax closer to ISO with set_prolog_flag(iso,true).
See Prolog flag iso for a detailed description.
* MAINT: Fix compilation under -DO_DEBUG. Andy Valencia.
* FIXED: Syntax: proper bracketing of arguments
* MODIFIED: Simpler syntax within { }.
According to 6.3.6 the term within curly brackets is read with
priority 1201, so no extra parentheses are needed.
Changes in 5.11.2:
* ADDED: lang_equal/2 to RDF library to test language equality. Jacco
van Ossenbruggen
* FIXED: Error from http_absolute_location/3 if an alias is not
defined.
* FIXED: Avoid error in edit/1 hook if an HTTP path-alias is undefined.
* ADDED: Just-in-time creation of thread-pools for the HTTP server
using the new hook
http:create_pool/1. Cleanup of the code for faster spawning of
worker-threads.
* MODIFIED: Threaded server defaults: keep-alive-timeout is now 2
seconds (was 5)
and the worker-count is now 5 (was 2). Worker-count is increased
because many
servers need it as since version 5.9.x there is hardly a price for
more workers.
* ADDED: option hide_children(Bool) to make prefix handlers hide their
children
and allow http_delete_handler to delete a handler-by-id.
* PORT: Realise set_end_of_file in Windows version
* ENHANCED: Implement safe-locking of the RDF persistent database
* ADDED: set_end_of_stream/1.
* PORT: Fix for MS VS2010 compilation. Degski.
* ADDED: lang_matches/2 to library(rdf_db)
* FIXED: url_to_filename/2 in rdf_persistency was broken due to
steadfastness
fix in DCG (commit 1a1a5699). Jacco van Ossenbruggen.
* FIXED: list_settings/0. Li Li.
* FIXED: handling of = and contains in xpath. Carsten van Weelden.
* ADDED: library(semweb/sparql_client) providing a SPARQL client API.
* ENHANCED: Layout for listing where the body resides in another
module.
* ENHANCED: Provide style pldoc(Id) with each PlDoc handler
* ADDED: reply_html_page/3: re-stylable HTML pages
* FIXED: Possible crash in cleanup handlers.
See comment above discardChoicesAfter() for more details.
* ENHANCED: Make it possible to give syntax-warnings with exact
positions.
* ADDED: Warnings for missing quotes for , and |
* MODIFIED: Stricter list syntax. E.g. [a,b|c,d] or [a|b|c] are now
illegal.
In the unlikely case this was intended, the term after the bar (|)
must be
enclosed in brackets. I.e. [a,b|(c,d)] or [a|(b|c)].
* FIXED: Syntax: proper quoting of | and ,
* PORT: Improve behavioral consistency between 32-bit and 64-bit
allocation
* FIXED: Memory leak for threads allocating chunks of 512 bytes. Matt
Lilley.
* ADDED: computing SHA incrementally. Ivan Shmakov
* INSTALL: Item#567: make check of xpce loading user's .plrc
* FIXED: steadfastness in DCG translation. Item#379
* FIXED: Item#559: hanging system in GC. Only affects 32-bit platforms
when doing GC on large stacks that have >8Mb chunks of continuous
garbage. Ulrich Neumerkel.
* DOC: errors for atom_length/2. Ulrich Neumerkel.
* ADDED: Library(http/js_write) to embed JavaScript calls into HTML
pages
* FIXED: Processing of stack-limit options in thread_create/3. Jacco.
* FIXED: Avoid direct access to private predicates of module error.
* ADDED: rdf_reachable/5, providing a distance limit and returning the
distance.
* ADDED: rdf_is_resource/1 and rdf_is_literal/1 for completeness.
* FIXED: Thread-creation if ulimit -s == infinite.
* FIXED: Do not skip character after . in turtle parser. Lourens van
der Meij.
* PORT: Windows snprintf --> _snprintf
* MODIFIED: On systems that provide getrlimit(), the default
C-stack-size of
created threads is the same as that of the main thread. This was
already
the default on Linux, but not on e.g. MacOS.
* ADDED: statistics(c_stack, StackSize) to query the system (C-)stack
limit.
For consistency, thread_create now also accepts c_stack as parameter.
This patch also cleans some type-issues with regard to stack-size
specification and removes 2Gb limit for Win64 due to the use of long.
* ADDED: Skos prefix
* ADDED: http_server_property/2. This patch also does some cleanup to
the meta-predicate declarations for the multi-threaded HTTP server.
* FIXED: Check for integer overflows in numeric-arguments for
format-specifiers
* FIXED: Possible buffer overflow on format('~200f', [1]). Mike
Elston.
* ADDED: library(http/http_openid), supporting OpenID consumers and a
server.
* ADDED: library(http/http_host) to obtain the public hostname of our
HTTP service
* CLEANUP: Stricter type-checking in load_files/2. Discussion on
comp.lang.prolog.
* FIXED: Old naming conventions. Julian Zubek.
* FIXED: Atom-GC for blobs that do not have PL_BLOB_UNIQUE. Samer
Abdallah.
* ADDED: Allow for selective importing of operators in use_module/2.
After discussion with Vitor.
* PORT: Do not use chrpath if the kernel is not a shared object
* PORT: Some type-issues in socket libs (nonblockio.c)
I do not think any of these could have been fatal. They just produce
alarming messages from the compiler.
Changes in 5.11.1:
* PORT: Windows: make fake EWOULDBLOCK error compatible with new def in
VS2010
* PORT: Fix download of Windows prerequisites for Windows 7. Degski.
* ADDED: Support for "406 Not Acceptable" responses in the HTTP server.
* INSTALL: make prepare check all checked-out modules, regardless of
-a.
* FIXED: Cleanup after uncaught stack-overflow exceptions. Paul
Singleton.
* DOC: Fixed code for skeleton client. Mike Elston.
* FIXED: ?= for cases where the arguments do not unify. Marco Montali.
* FIXED: Possible crash on stack-shift in cleanup handler. Jochem
Liem.
* FIXED: Possibly wrong association of $and in frozen/2. Samer
Abdallah.
* FIXED: Handling option register_namespaces(true) in rdf_load/2.
Vangelis Vassiliadis.
* MODIDIED: rdf_assert/4 now discards *complete* duplicates (incl
source).
* PORT: Avoid including termios.h into pl-os.h to localise the
dependencies
and (hopefully) make the system compile on Solaris.
* PORT: Get prototype for posix_openpt(), avoiding warning
* PORT: Move time-dependencies where they are needed; use POSIX
clock_gettime() if it is provided.
* DOC: Enhance comments of rb_insert/4 and rb_insert_new/4.
* MODIFIED: Make rdf_meta/1 module-aware. This means that calls are
only expanded if they resolve to the exact predicate that is declared
using rdf_meta. This might break code relying on the old behaviour
that expansion took place regardless of the module.
It is possible to get a warning on calls that used to be expanded
and are now not using this call before *loading* the program:
?- debug(rdf_meta).
The new code also expands NS:Local appearing literally in the head
of rdf_meta-declared clauses.
Pkgsrc changes:
o Now pass the --optimize flag to configure
o Pull in devel/gmp/buildlink3.mk so that multi-precision arithmetic
is enabled (and gets testing)
o Adapt PLIST and Makefile to what's present and being installed
Upstream changes:
- Core
+ Various long-standing bugs in IMCC were fixed
+ STRINGs are now immutable.
+ use STRINGNULL instead of NULL when working with strings
+ Fixed storage of methods in the NameSpace PMC
+ Added :nsentry flag to force method to be stored in the NameSpace
+ Added StringBuilder and PackfileDebug PMCs
+ Added experimental opcodes find_codepoint and unroll
- Compilers
+ Fixed reporting of line numbers in IMCC
+ Removed deprecated NQP compiler, replaced with new NQP-RX
+ Removed NCIGen compiler
- Deprecations
+ Tools to distribute on CPAN were removed
+ Deprecated dynpmcs have been removed to external repositories
+ Removed RetContinuation PMC
+ Removed CGoto, CGP, and Switch runcores
- Tests
+ Many tests for the extend/embed interface were added
+ done_testing() is now implemented in Test::More
- Tools
+ The fakexecutable tapir is renamed parrot-prove
+ Performance fixes to the pbc_to_exe tool
+ Fix data_json to work outside of trunk
+ The dynpmc GzipHandle (zlib wrapper) was added
+ The library Archive/Tar.pir was added.
+ The library Archive/Zip.pir was added.
+ The libraries LWP.pir, HTTP/Message.pir & URI.pir were added.
- Miscellaneous
+ Six Parrot-related projects accepted to GSoC
+ Improve use of const and other compiler hints
executable of a Python script, from Helge Muehlmeier per pkgsrc-wip
This pkg abuses Python distutils in a non-portable way, so I've
added a hack which relinks the startup code behind setuptools'
back. This is easier than patching the setup.py script into doing trt.
Changes in Version 2.8.0 (14-Jul-2010)
Scala 2.8.0 is a significantly innovative release, which
contains a large amount of fixes and introduces many new
features:
* Redesigned collection library
* New array implementation, manifests for polymorphic arrays
* Type specialization
* Named and default arguments
* Package objects
* Beefed up Scala Swing libraries, better documentation
* Revamped REPL
* Implicits changes
* Improved equality
* Packrat parser combinators
* Improved XML library
* Type constructor inference
* Improved Annotations
* Enhanced actors
* Support for continuations
Internal improvements
* New presentation compiler
* New build manager
* Speed improvements
Additional tools
* Scaladoc 2
* Sbaz 2
* Scalap
* Scala IDE for Eclipse
Changes:
Version 1.39
Drew Yao fixed buffer overflow problems in mk_sharp_const.
Version 1.38
Interim release until the rewrite, mostly incorporating modifications from
Kevin Cozens. Small addition for Cygwin in the makefile, and modifications
by Andrew Guenther for Apple platforms.
Version 1.37
Joe Buehler submitted reserve_cells.
Version 1.36
Joe Buehler fixed a patch in the allocator.
Alexander Shendi moved the comment handling in the scanner, which
fixed an obscure bug for which Mike E had provided a patch as well.
Kevin Cozens has submitted some fixes and modifications which have not
been incorporated yet in their entirety.
3.9.0
=====
* Prerelease of the 4.0.0 that will be R6RS compliant.
* The doc directory temporary removed from distrib.
The old docs obsolete and new is not ready.
* Simple R6RS-like library manager implemented.
"load" function removed (use "import" syntax instead).
* the ksi module system removed in a favour of new R6RS library system.
* `psyntax.ss' that implemented 'syntax-case' in older revisions of the ksi, was removed.
As a result, only core syntax evaluated by ksi.
And ksi core is not a R6RS core :-(
* '(gensym)' generate (almost) unique symbol names.
As a part of generated symbol name used a 'session_id' that is initialized at startup.
So, each ksi invocation has its own 'session_id'.
This can help (in a future) to hardly optimize the scheme code evaluation
Now the 'session_id' is initialized with random bits converted to readable string.
* the "do" syntax, "delay" syntax and "force" function was removed from the ksi core.
* the 'struct Ksi_Environ' and companions was rewriten almost completly.
Now the environment has the name, the export list
and the hashtab that maps the symbol to the value
A value can be a plain value (the symbol is a variable) or a syntax value.
If a symbol is bound to a syntax value, it can not be defined, assigned or
used in any other case except in a intented syntax form
As a special case, if a symbol is bound to a syntax value and the value is a procedure,
the procedure is applyed to the form before evaluating it.
(Look at 'ksi_defsyntax()' and 'ksi_compile()' for details).
This mechanics is intended for low-level macros (as "define-macro!")
and derived forms such as 'cond', 'case', etc.
The normal sanitary macro system planned ;-).
* All packed-in-the-pointer objects was removed.
Such objects as 'ksi_nil', 'ksi_false' and so on,
are implemented as a pointers to a memory location
that allocated when initializing the ksi library.
Do not be suprized the error if you use its before calling `ksi_init()'.
* The 'struct Ksi_Char' (added) is internal representation of a character now.
(first step to unicode).
* the GMP library used for exact arithmetics now.
As a result, the ksi supports the exact rational numbers now.
* The short integers was removed. Bignums are the only exact numbers now.
And predefined constans 'ksi_zero', 'ksi_one', etc was removed too.
(Use 'ksi_long2num()' in C code)
* A flonum has real and imag part always, and so, a flonum is a complex number now.
But 'real?' returns #t if imaginary part is zero
and 'number->string' do not print "+0.0i" if imaginary part is zero.
(This is not what R6RS requires but alas, it is the ksi)
* balanced comments are writen within "#| |#" construct now
(not with "#! !#" as in the previous revisions of the ksi).
The sequence "#!<identifier>" used for the reader directives now.
In addition, to support the scheme scripts, the sequence "#! " (note whitespace)
and "#!/" in the very begin of a file supposed as a one-line comment.
* Reader now case-sensitive by default, as required R6RS.
Use the "#!fold-case" directive to switch the reader to the case-insensitive mode,
and "#!no-fold-case" to switch to the case-sensitive mode back.
* By default, the reader parses postfix keyword notation, such as "key:".
"#!keyword-prefix" switches the reader to prefix mode, such as ":key",
and "#!keyword-postfix" switches the reader back to postfix mode.
* By default, the reader do not parses the old ksi keyword notation, such as "#:key".
Use the "#!keyword-sharp" directive to switch the old mode on,
and "#!no-keyword-sharp" to switch off.
* "#!r6rs" directive switches the reader to the R6RS mode,
and "#!ksi" directive switches the reader to the default mode back.
In the r6rs mode:
-- the keywords are not parsed at all;
-- any sequence that starts with digit, '+', '-', '.', tried to be parsed as a number
and, if cannot, exception raised.
Otherwice the sequence is parsed as a symbol.
In the ksi mode:
-- the keywords are parsed;
-- any sequence, that starts with digit, or '+', '-', '.' folowed by digit,
tried to be parsed as a number and, if cannot, exception raised.
Otherwice the sequence is parsed as a symbol.
So, the sequence like '+x' is parsed as symbol in the ksi mode, but raise exception in the r6rs mode.
Note that in the previous revisions of the ksi, any sequence,
that cannot be parsed as a number, was considered as a symbol (never exception raised).
3.5.1
=====
* bugfixes
* (Windows) ksi dll name has version info now.
3.5.0
=====
* code refactoring
Continuation barriers now block only downward continuation jumps
and allow escapes through full continuations
Changed internal-definition handling to allow expressions mixed
with definitions
Added support for subprocesses as new process groups
Added support for best-effort termination of subprocess by a
custodian
Added flreal-part, flimag-part, make-flrectangular, and unsafe
variants
Added fl->eact-integer, fl->fx, and unsafe-fl->fx
Added #:async-apply option to _fun
Added chaperone-evt
Added identifier-prune-to-source-module
Changed apply binding to enable lower-level optimizations
Upgraded to libffi 3.0.9+
Highlights:
- configure system rewritten and simplified
- better emulation of SWI, especially of C-interface, allows:
o port of SWI packages: sgml and plunit work better, clib, RDF,
zlib and http seem to be working well, semweb compiles
o better integration with C: it is now possible to call YAP from JPL
reliably (all tests in the demos/java directory succeed in Linux)
o it is now possible to create a stream with SWI routines and use
YAP IO (parser, writer) on it
o pyswip: YAP now includes a version of the pyswip package for
experimentation: all the demos seem to be work (YAP must be compiled
as a dynamic library)
- compilation in Sun and NetBSD
- YAP can now handle very, very large terms in compiled clauses.
- several new builtins
- improve thread implementation, especially locking in IO routines and indexing
o fix C thread interface
- fix odbc support in MYDDAS
- fix overflow in ==
- fix bad call to subsumes/2
- new version of trie library, developed by Theo and Ricardo
Changes in sbcl-1.0.41 relative to sbcl-1.0.40:
* optimization: validity of observed keyword initargs to MAKE-INSTANCE is
cached, leading to many fewer expensive calls to
COMPUTE-APPLICABLE-METHODS.
* optimization: in the (unoptimized) general method for MAKE-INSTANCE on a
CLASS argument, search for and call an appropriate optimized ctor function
if it exists.
* bug fix: WRITE always returns the correct value.
NEWS FROM 3.2.1 TO 3.2.2
o Fixes to gst-remote.
o Fixes to the Emacs mode.
o Fixes to compilation warnings.
o Generational GC is broken on SPARC and is now disabled.
o When compiling a 32-bit version on a 64-bit system, detection of
which packages to install was improved.
NEWS FROM 3.2 TO 3.2.1
o All built-in packages can be disabled with a configure option like
--disable-gdbm or --disable-complex.
o All tools support --verbose.
o Fixed bugs in the distributed gnu-smalltalk.pc file.
o Improved portability to Solaris.
o Many bug fixes to UDP sockets. In particular, daragrams received from
a socket can be placed directly onto another socket using #nextPut:.
o Many improvements to VisualGST.
o Each test in the testsuite has a 1-minute timeout.
o The undocumented DynamicVariable class in GNU Smalltalk 3.2 is now
documented, but it had a small change in the implementation. The
#defaultValue class method is not present anymore, and is replaced by
#valueIfAbsent:. Subclasses can override #value to obtain the
effect of #valueIfAbsent:.
The class has also been rewritten and is much faster now.
NEWS FROM 3.1 TO 3.2
Backwards-incompatible bug fixes and changes:
o Collection>>#anyOne gives an error if the receiver is empty.
o "aNumber raisedToInteger: 0" will raise an exception if and only if
aNumber is not a floating-point value. This was backwards in previous
versions.
o Interval>>#first and Interval>>#last give an error if the interval is
empty (i.e. if start > stop and the step is positive, or start < stop
and the step is negative).
o SequenceableCollection>>#sortBy: was renamed to #sort:. The old message
is _not_ provided for backwards-compatibility.
o The semantics of recursive directory descent were adjusted as follows:
1) the '.' and '..' directory entries are not passed; 2) for #do:, the
file is passed directly (3.1 used to pass another recursive decorator);
3) before the descent starts, the directory itself is passed to the block.
o The XML parser will ignore whitespace if placed in non-validating mode.
o The suggested way to instantiate an XML parser is now using
"SAXParser defaultParserClass", which will work with either of the
two available parsers (the existing Smalltalk parsers, and the Expat
bindings; see below).
New features (base classes):
o Floating-point rounding to integer is now correct also for very
large numbers; fix contributed by Nicolas Cellier.
o Methods have been added to Integer to print numbers with padding
to a specified width.
o New FilePath methods #owner:, #group:, #owner:group: allow setting
a file's owner and group.
o Sending mode, file time and owner setters to a recursive directory
decorator (such as `Directory working all') sets the mode/time/owner
on all files under the path.
o Speedups for hashed collections
o String>>#subStrings: accepts a single separator character or also, in
accordance with ANSI, a String holding a list of separators.
o The old instance-based exception handling has been removed. Standard
ANSI class-based exceptions have been available since GNU Smalltalk 1.8.2.
o The text-based #inspect method is now available also as
Object>>#examine and Object>>#examineOn:, so that it will also work
on arbitrary streams and will be available when a GUI is loaded.
Contributed by Stefan Schmiedl.
New features (tools):
o gst-convert can emit Squeak fileouts.
o New graphical interface VisualGST, loaded with gst-browser. The old
browser is still available, but obsolete.
o New ProfilerTools package for callgraph profiling of Smalltalk programs.
A companion gst-profile tool will create profiles in callgrind-compatible
format. Contributed by Derek Zhou.
o Packages can be downloaded and updated directly from the network. The
repository of packages is at http://smalltalk.gnu.org/project; the
repository holds the location of the package.xml files, which point to
the svn or git URL of the code.
In order to download a package with git, version 1.6.2 is required.
o SUnit supports expected failures.
New features (VM):
o Fixes in garbage collection heuristics provide improved performance on
programs allocating many long-lived objects. Contributed by Derek Zhou.
o Floating-point numbers are now read correctly.
o In idle times, GNU Smalltalk will perform incremental garbage
collection. When it finishes, GNU Smalltalk will consume zero CPU.
o Mostly rewritten Windows port. It should mostly work except for
sockets. The socket code will be rewritten (for all platforms)
for 3.3 anyway.
o Support for one-way become (Object>>#becomeForward:)
o The millisecond clock uses CLOCK_MONOTONIC where available.
New features (packages):
o Many improvements to the Gtk bindings.
o NetClients supports ESMTP commands.
o New goodie, the SandstoneDb object persistence framework.
o Swazoo upgraded to version 2.2, plus local fixes.
o The Complex package uses numerically stable algorithms
o The Continuations package provides delimited continuations via
BlockClosure>>#shift and BlockClosure>>#reset. Both methods accept
a block (1-arg for shift, 0-arg for reset).
o An XML pull parser is included as package XML-PullParser. The package
is based on the VisualWorks and Squeak pull parsers by Anthony Blakey
and Ken Treis.
o In addition to the validating XML parser, a non-validating Expat-based
parser is available in package XML-Expat. The Expat parser is
experimental, but it is very fast and supports both pull and push
operation.
Bug fixes:
o Code running as a Generator now honors exception handlers outside the
Generator block.
o Fixed copying of Dictionary to not share the underlying associations.
o Fixed ##() expressions that return a block
o EPIPE is handled correctly.
o Running on kernels without SOCK_CLOEXEC support will not fail
even if the VM was compiled on a kernel that supported it.
o The Sockets package failed to initialize when the machine was not
connected to the network; this has been fixed.
o The Transcript now uses a RecursionLock. This fixes crashes when
an exception occurred while printing a backtrace.
Miscellaneous:
o GNU Smalltalk now does not rely anymore on specific (old) versions
of libtool.
o GNU Smalltalk tries to enable Emacs modes automatically on systems
that support a site-lisp/site-start.d directory.
o REPL autocompletion includes all symbols including unary messages
(and variable names).
o Process-local variables are now stored in an IdentityDictionary rather
than a LookupTable.
Overview of changes from 0.8.4 to 0.8.5
=======================================
* Specification changes
- Support colon separated multiple load paths with scm_set_lib_path().
- Rewrote var_export() to use smart_str rather than output buffering,
prevents data disclosure if a fatal error occurs (CVE-2010-2531).
(Scott)
- Fixed a NULL pointer dereference when processing invalid XML-RPC
requests (Fixes CVE-2010-0397, bug #51288). (Raphael Geissert)
- Fixed SplObjectStorage unserialization problems (CVE-2010-2225).
(Stas)
- A large number of not security related bug fixes
- Reverted bug fix#49521 (PDO fetchObject sets values before calling
constructor). (Felipe)
- Updated timezone database to version 2010.5. (Derick)
- Upgraded bundled PCRE to version 8.02. (Ilia)
- Rewrote var_export() to use smart_str rather than output buffering, prevents
data disclosure if a fatal error occurs (CVE-2010-2531). (Scott)
- Fixed a possible interruption array leak in strrchr(). Reported by
Péter Veres. (CVE-2010-2484) (Felipe)
- Fixed a possible interruption array leak in strchr(), strstr(), substr(),
chunk_split(), strtok(), addcslashes(), str_repeat(), trim(). (Felipe)
- Fixed a possible memory corruption in substr_replace() (Dmitry)
- Fixed SplObjectStorage unserialization problems (CVE-2010-2225). (Stas)
- Fixed a possible stack exaustion inside fnmatch(). Reporeted by Stefan
Esser (Ilia)
- Reset error state in PDO::beginTransaction() reset error state. (Ilia)
- Fixed a NULL pointer dereference when processing invalid XML-RPC
requests (Fixes CVE-2010-0397, bug #51288). (Raphael Geissert)
- Fixed handling of session variable serialization on certain prefix
characters. Reported by Stefan Esser (Ilia)
- Fixed a possible arbitrary memory access inside sqlite extension. Reported
by Mateusz Kocielski. (Ilia)
- Fixed a crash when calling an inexistent method of a class that inherits
PDOStatement if instantiated directly instead of doing by the PDO methods.
(Felipe)
- Fixed bug #52317 (Segmentation fault when using mail() on a rhel 4.x (only 64
bit)). (Adam)
- Fixed bug #52238 (Crash when an Exception occured in iterator_to_array).
(Johannes)
- Fixed bug #52237 (Crash when passing the reference of the property of a
non-object). (Dmitry)
- Fixed bug #52163 (SplFileObject::fgetss() fails due to parameter that can't
be set). (Felipe)
- Fixed bug #52162 (custom request header variables with numbers are removed).
(Sriram Natarajan)
- Fixed bug #52160 (Invalid E_STRICT redefined constructor error). (Felipe)
- Fixed bug #52061 (memory_limit above 2G). (Felipe)
- Fixed bug #52041 (Memory leak when writing on uninitialized variable returned
from function). (Dmitry)
- Fixed bug #52037 (Concurrent builds fail in install-programs). (seanius at
debian dot org, Kalle)
- Fixed bug #52019 (make lcov doesn't support TESTS variable anymore). (Patrick)
- Fixed bug #52010 (open_basedir restrictions mismatch on vacuum command).
(Ilia, Felipe)
- Fixed bug #51943 (AIX: Several files are out of ANSI spec). (Kalle,
coreystup at gmail dot com)
- Fixed bug #51911 (ReflectionParameter::getDefaultValue() memory leaks with
constant array). (Felipe)
- Fixed bug #51905 (ReflectionParameter fails if default value is an array
with an access to self::). (Felipe)
- Fixed bug #51822 (Segfault with strange __destruct() for static class
variables). (Dmitry)
- Fixed bug #51671 (imagefill does not work correctly for small images).
(Pierre)
- Fixed bug #51670 (getColumnMeta causes segfault when re-executing query
after calling nextRowset). (Pierrick)
- Fixed bug #51629 (CURLOPT_FOLLOWLOCATION error message is misleading).
(Pierre)
- Fixed bug #51617 (PDO PGSQL still broken against PostGreSQL < 7.4).
(Felipe, wdierkes at 5dollarwhitebox dot org)
- Fixed bug #51615 (PHP crash with wrong HTML in SimpleXML). (Felipe)
- Fixed bug #51609 (pg_copy_to: Invalid results when using fourth parameter).
(Felipe)
- Fixed bug #51608 (pg_copy_to: WARNING: nonstandard use of \\ in a string
literal). (cbandy at jbandy dot com)
- Fixed bug #51607 (pg_copy_from does not allow schema in the tablename
argument). (cbandy at jbandy dot com)
- Fixed bug #51604 (newline in end of header is shown in start of message).
(Daniel Egeberg)
- Fixed bug #51562 (query timeout in mssql can not be changed per query).
(ejsmont dot artur at gmail dot com)
- Fixed bug #51552 (debug_backtrace() causes segmentation fault and/or memory
issues). (Dmitry)
- Fixed bug #51532 (Wrong prototype for SplFileObject::fscanf()). (Etienne)
- Fixed bug #51445 (var_dump() invalid/slow *RECURSION* detection). (Felipe)
- Fixed bug #51393 (DateTime::createFromFormat() fails if format string contains
timezone). (Adam)
- Fixed bug #51374 (Wrongly initialized object properties). (Etienne)
- Fixed bug #51338 (URL-Rewriter is still enabled if use_only_cookies is
on). (Ilia, j dot jeising at gmail dot com)
- Fixed bug #51273 (Faultstring property does not exist when the faultstring is
empty) (Ilia, dennis at transip dot nl)
- Fixed bug #51269 (zlib.output_compression Overwrites Vary Header). (Adam)
- Fixed bug #51263 (imagettftext and rotated text uses wrong baseline)
(cschneid at cschneid dot com, Takeshi Abe)
- Fixed bug #51237 (milter SAPI crash on startup). (igmar at palsenberg dot com)
- Fixed bug #51213 (pdo_mssql is trimming value of the money column). (Ilia,
alexr at oplot dot com)
- Fixed bug #51192 (FILTER_VALIDATE_URL will invalidate a hostname that
includes '-'). (Adam, solar at azrael dot ws).
- Fixed bug #51190 (ftp_put() returns false when transfer was successful).
(Ilia)
- Fixed bug #51183 (ext/date/php_date.c fails to compile with Sun Studio).
(Sriram Natarajan)
- Fixed bug #51171 (curl_setopt() doesn't output any errors or warnings when
an invalid option is provided). (Ilia)
- Fixed bug #51128 (imagefill() doesn't work with large images). (Pierre)
- Fixed bug #51086 (DBA DB4 doesn't work with Berkeley DB 4.8). (Chris Jones)
- Fixed bug #51062 (DBA DB4 uses mismatched headers and libraries). (Chris
Jones)
- Fixed bug #51023 (filter doesn't detect int overflows with GCC 4.4).
(Raphael Geissert)
- Fixed bug #50762 (in WSDL mode Soap Header handler function only being called
if defined in WSDL). (mephius at gmail dot com)
- Fixed bug #50698 (SoapClient should handle wsdls with some incompatiable
endpoints). (Justin Dearing)
- Fixed bug #50383 (Exceptions thrown in __call() / __callStatic() do not
include file and line in trace). (Felipe)
- Fixed bug #49730 (Firebird - new PDO() returns NULL). (Felipe)
- Fixed bug #49723 (LimitIterator with empty SeekableIterator). (Etienne)
- Fixed bug #49576 (FILTER_VALIDATE_EMAIL filter needs updating) (Rasmus)
- Fixed bug #49320 (PDO returns null when SQLite connection fails). (Felipe)
- Fixed bug #49267 (Linking fails for iconv). (Moriyosh)
- Fixed bug #48601 (xpath() returns FALSE for legitimate query). (Rob)
- Fixed bug #48289 (iconv_mime_encode() quoted-printable scheme is broken).
(Adam, patch from hiroaki dot kawai at gmail dot com).
- Fixed bug #43314 (iconv_mime_encode(), broken Q scheme). (Rasmus)
- Fixed bug #33210 (getimagesize() fails to detect width/height on certain
JPEGs). (Ilia)
- Fixed bug #23229 (syslog() truncates messages). (Adam)
Suppport conditional PLIST inclusion of the expected egg file, because
python2.4 distutils does not create them but later versions do. (Note
that PRINT_PLIST_AWK production is not working, probably due to order
of substitution.)
Earlier patch reviewed by wiz@.
egg info files in non-egg python distributions.
Add a comment that PY_NO_EGG appears wrong. Obviously there is a
reason it was added, but we need to figure out why and if it's still
true.
Import textual Racket version as lang/racket-textual.
Racket (formerly PLT Scheme) is a specific dialect of the Lisp
language based on the Scheme branch of the Lisp family.
Overview of changes from 0.8.3 to 0.8.4
=======================================
* Fixes
- Fix alignment check on x86_64 when --enable-debug is set (bug #26950).
- Fix test-storage.c
pkgsrc changes: desupport build options that are turned into module packages.
2.49 (2010-07-07)
=================
User visible changes
--------------------
* New command line option -disable-readline lets working around bugs and
incompatibilities between readline CLISP was built against and the
library actually installed.
See <http://clisp.cons.org/impnotes/clisp.html#opt-norl> for details.
* FFI:OPEN-FOREIGN-LIBRARY now accepts the :REQUIRE argument.
See <http://clisp.cons.org/impnotes/dffi.html#dffi-open-lib> for details.
* New user variable CUSTOM:*USER-LIB-DIRECTORY* is respected by REQUIRE
and used by "clisp-link install".
Dynamic modules are now the default build option.
See <http://clisp.cons.org/impnotes/require.html> and
<http://clisp.cons.org/impnotes/clisp-link.html> for details.
* Function RENAME-FILE now accepts :IF-EXISTS argument which determines
the action when the destination exists, unless, of course, *ANSI* is T.
See <http://clisp.cons.org/impnotes/file-func.html#rename-file> for details.
* The replacement value entered by the user in STORE-VALUE and USE-VALUE
restarts is now EVALuated.
* The old user variable CUSTOM:*PRINT-CLOSURE* now controls interpreted
closure output too (RFE#3001956). This is a tricky feature, read up!
See <http://clisp.cons.org/impnotes/multi-rep.html#pr-closure>.
* Module readline now supports readline 6.1.
(Older versions are, of course, still supported).
See <http://clisp.cons.org/impnotes/readline-mod.html> for details.
* Module pcre now supports pcre 8.01.
(Older versions are, of course, still supported).
See <http://clisp.cons.org/impnotes/pcre.html> for details.
* Module libsvm does not come with the upstream sources anymore, install
locally and pass --with-libsvm-prefix to the top-level configure instead.
All upstream versions up to 2.91 are supported.
See <http://clisp.cons.org/impnotes/libsvm.html> for details.
* Module berkeley-db now supports Berkeley-DB 4.8.
(Older versions are, of course, still supported).
See <http://clisp.cons.org/impnotes/berkeley-db.html> for details.
* Module postgresql now supports PostgreSQL 8.4.
(Older versions are, of course, still supported).
See <http://clisp.cons.org/impnotes/postgresql.html> for details.
* Module pari has been updated to support both 64 & 32 bit platforms
with and without GMP.
See <http://clisp.cons.org/impnotes/pari.html> for details.
* New functions OS:VERSION-COMPARE et al call strverscmp.
See <http://clisp.cons.org/impnotes/syscalls.html#strverscmp> for details.
* Bug fixes:
+ Do not eliminate function calls which are advertised to have
exceptional situation in unsafe code (bug#2868166).
+ Fix an internal error in DECLAIM on bad OPTIMIZE quality (bug#2868147).
+ CLEAR-INPUT now clears the EOF condition on file streams (bug#2902716).
+ When quitting on a signal, never enter the debugger (bug#2795278).
+ Respect :FULL T in DIRECTORY :WILD-INFERIORS (bug#3009966).
+ Handle TWO-WAY-STREAM and ECHO-STREAM correctly by
(SETF STREAM-EXTERNAL-FORMAT) (bug#3020933).
+ Fix unbuffered output pipe stream initialization (bug#3024887).
* ANSI compliance:
+ Implement the ANSI issue COMPILER-DIAGNOSTICS:USE-HANDLER: use the
CL Condition System for compiler diagnostics.
+ STREAM-ELEMENT-TYPE on empty CONCATENATED-STREAMs now returns NIL
because nothing can be read from such streams (bug#3014921).
Changes in sbcl-1.0.40 relative to sbcl-1.0.39:
* bug fix: readdir now works on :inode64 darwin builds (lp#592897)
* bug fix: Name conflicts between symbols passed as arguments to a single
call to IMPORT no longer add multiple symbols with the same name to the
package (detectable via DO-SYMBOLS).
* bug fix: support building without the dlshim on darwin x86 and x86-64
(lp#533470).
* bug fix: TRACE :ENCAPSULATE NIL now works on ppc/linux.
ECL 10.4.1:
===========
* Bugs fixed:
- Fixed offset problems in READ/WRITE-SEQUENCE.
- In multithreaded ECL, the signal servicing thread was not created
due to a stale debug statement.
- The tool 'ecl-config' contained unsubstituted values, such as @LDRPATH@
because these variablesls had been renamed in the autoconf file.
- The reimplementation of DIRECTORY introduced a bug in pathnames with ending
double wildcars, such as "/foo/**/".
- EXT:SAFE-EVAL (or cl_safe_eval in C) would attempt to start the debugger
when an error was signaled.
- The logical hostname EXT: did not have a pathname translation relative to
that of SRC:
- After loading the compiler, the COMMON-LISP package was left unlocked
against changes.
- ECL can build again itself using a C++ compiler (--with-cxx thus works).
- ecl_make_file_stream_from_fd() did not set the right mode in the stream
structure.
- ECL did not understand type declarations that involved symbol macros.
- (SETF STREAM-EXTERNAL-FORMAT) inserted the wrong format type in some cases.
* Visible changes:
- The source location annotator records the original pathnames instead of
truenames. This allows Slime to find out the ECL sources even if they
have been moved.
- The signal servicing thread now carries the name SI:SIGNAL-SERVICING, which
is different from the name of the threads that are created to actually
handle those signals. Users should avoid killing SI:SIGNAL-SERVICING.
- FFI:CLINES admits the notation @lisp-object, just like FFI:C-INLINE. The
result is that @lisp-object gets replaced with a pointer to the given
lisp object, created at run time.
- Gray streams implement a new generic function, GRAY:STREAM-FILE-DESCRIPTOR
which is used by SERVE-EVENT to gather the C file descriptor or Windows
handle used to wait on input from the device.
- ECL restores the habit of installing manual pages for ecl and ecl-config.
- We have removed the obsolete versions of the documentation files. The
up to date documentation now lives in a separate source repository,
as explained in http://ecls.sourceforge.net/download.html
- The encoding :DEFAULT implies looking up in the special variable
EXT:*DEFAULT-EXTERNAL-FORMAT* the actual value of the encoding, which may be
a known one, or :pass-through.
- LOAD now accepts the keyword argument :EXTERNAL-FORMAT
* ASDF:
- ECL's contributed modules and ECL's compiler can now be used in standalone
programs, for they are now stored both in FASL form and as statically linked
libraries.
- ASDF:MAKE-BUILD takes a new keyword argument, :MOVE-HERE, that allows moving
the files that ASDF creates to the current directory. :MOVE-HERE can be the
boolean value T, in which case the files are output at ./asdf-output/ or a
pathname designator with the actual destination.
- ASDF:MAKE-BUILD admits a new type, :BINARY, which creates a standalone
system (*.asd) accompanied by two binary files, statically linked library
(.a or .lib), and a FASL (*.fasb). This can be used, to replace existing
systems with precompiled ones.
New in version 1.0.39
- bug fix: Backtrace from undefined function on x86 and x86-64
now show the calling frame.
- bug fix: linkage-table entries on PPC now no longer overflow
their space allocation (potentially causing crashes if they
are written out of order).
- bug fix: Scrub control stack after scavenging in gencgc on
non-x86oid platforms, preventing the GC from seeing stale
pointers on the control stack in subsequent GCs (which would,
and does, break invariants).
- bug fix: 32-bit unicode external formats now work on big-endian systems.
- bug fix: Literal characters with code points greater than
about 32767 now work on PPC UNICODE builds.
- bug fix: Any noise left by SSE operations (sqrt and
conversions) in the high order bits are explicitly cleared
out. In some contrived situations, this could lead to wrong
results in mixed real/complex float arithmetic.
- bug fix: Fix function/macro redefinition warnings when
building with clisp. (#576787, thanks to Josh Elsasser)
- new platform: experimental support for ppc/openbsd (thanks to
Josh Elsasser).
- bug fix: Floating-point traps now work on ppc/linux.
Changes in 1.6.0_20 (6u20)
* OlsonData 2010b
* A Java Network Launch Protocol (JNLP) file without a codebase parameter, such
as the following, will no longer work with the Java SE 6 update 20 release.
<jnlp spec="0.2 1.0" href="draw.jnlp">
This means that developers must specify the codebase parameter in a JNLP file.
See the following example:
<jnlp spec="0.2 1.0"
codebase="http://java.sun.com/javase/technologies/desktop/javawebstart/apps/"
href="draw.jnlp">
* This release contains fixes for security vulnerabilities.
For more information, please see Oracle Security Alert for CVE-2010-0886
Changes in 1.6.0_19 (6u19)
* OlsonData 2010b
* Root Certificates
* Ensuring Application and Applet Security when Mixing Signed and Unsigned Code
* Interim Fix for the Transport Layer Security (TLS) Man-in-the-Middle Attack
* Bug Fixes
Changes in 1.6.0_18 (6u18)
* OlsonData 2009s
* VisualVM 1.2
* Java DB 10.5.3.0
* Performance Improvements
* Deployment Updates
* JSR-173 StAX 1.2 API Upgrade
* Bug Fixes