While here, add test target. Temporarily require network access for it.
Changes since previous package:
Version 1.3.1
=============
http://abcl.org/svn/tags/1.3.1/
30-APR-2014
## Fixed
* The underlying Java Function Interface (JFI) now converts CL:T and
CL:NIL to JAVA:+TRUE+ and JAVA:+FALSE+. Users who wish to
reference a JAVA:+NULL+ should do so explicitly.
* Make JCALL work in more places. Thanks to Olof-Joachim Frahm.
<http://abcl.org/trac/changeset/14683>
* Interpolate CL:SLEEP and THREADS:OBJECT-WAIT for timeouts below the
Planck timer ("1ns") to a nanosecond.
<http://abcl.org/trac/changeset/14679>
* Update to ASDF 3.1.0.103.
<http://abcl.org/trac/changeset/14661>
Fixes loading of Ironclad and other Quicklisp systems.
* Fix Uniform Naming Convention (aka "UNC" or "network") paths under Windows.
<http://abcl.org/trac/changeset/14659>
DIRECTORY now works again on UNC paths.
UNC paths may be either specified with either back slash (#\\) or
forward slash (#\/) doubled as the first character in a Pathname
namestring.
The patterns in
//<server>/<share>/[directories-and-files]
are parsed as
<server> is stored as HOST.
<share> is stored as DEVICE.
[directories-and-files] gets parsed as per the normal rules under
Windows.
Mixing namestrings with both backslash and slash characters can
lead to unpredictable results. It is recommended not to use
backslash characters in namestrings if it can be avoided. The
pathname printed representation is always normalized to using
forward slash delimiters.
* Find contrib based on system jar name.
<http://abcl.org/trac/changeset/14657>
From Olof-Joachim Frahm.
Version 1.3.0
=============
http://abcl.org/svn/tags/1.3.0/
15-MAR-2014
## Features
* Make LispStackFrame.UNAVAILABLE_ARG a singleton object,
and lazily create the little used portions of the Lisp stack.
Aggressively cache and control the use of memory by the underlying
Lisp stack frame representation by introducing the private
LispThread.StackFrame and LispThread.StackSegments classes.
Contributed by Dmitry Nadezhin.
LispStackFrame object are allocated on every
LispThread.execute(...) . However, they are seldom [accessed]
([... verify via] inspect[tion of the] stack trace). This patch
delays allocation of LispStackFrame? objects until they are
requested. Raw information about stack frames is stored in
stack. Stack is an Object[] array (more precisely a list of [...]4
[Mib] Object[] arrays).
ME: We are going to need a way to try to less agressively grab 4Mib
chunks in low memory situations.
Memory profiling of ABCL shows that the classes with largest
allocation count are org.armedbear.lisp.LispStackFrame and
org.armedbear.lisp.LispStackFrame.UnavailableArgument.
Contributed by Dmitry Nadezhin.
[r14572]: http://abcl.org/trac/changeset/14572
[r14579]: http://abcl.org/trac/changeset/14579
* ASDF 3.0.1.94 shipped with the implementation
* per function call stack and memory exception handler in CL:COMPILE
Inline calls to jrun-exception-protected (used by handler-bind to
catch out of memory conditions). This commit saves generation
roughly 50 cls files.
[r14552]: http://abcl.org/trac/changeset/14552
* SYS:SHA256 audited
The functionality if the SYS:SHA256 algorithim has been audited for
use on inputs of single for files with recently shipping ORCL Java 7
implementations (through jdk-1.7.0_51).
[r14582]: http://abcl.org/trac/changeset/14582
* Connect to NetBeans controlled JDWP via SLIME
The Netbeans IDE configuration now includes a way to connect to
the running-under-jdb ABCL via SLIME. One needs a version of
SLIME able to be loaded from its 'swank.asd' definition.
* Install 'abcl.jar' and 'abcl-contrib.jar' locally as Maven artifacts
The Ant `abcl.mvn.install` target now installs build artifacts
into the local Maven repository (Olof-Joachim Frahm)
[r14579]: http://abcl.org/trac/changeset/14606
## Compatibility
* CL:DIRECTORY
The implementation specific :RESOLVE-SYMLINKS argument to the ANSI
DIRECTORY function has been changed to nil. This implements
behavior closer to SBCL and guarantees that a DIRECTORY operation
will not signal a file error.
[r14619]: http://abcl.org/trac/changeset/14619
[ticket-340]: http://abcl.org/trac/ticket/340
## Fixes
* Fix CL:SLEEP for intervals less than a millisecond.
For intervals less than or equal to a nanosecond, including an
interval of zero, the current thread merely yields execution to
other threads.
[r14632]: http://abcl.org/trac/changeset/14632
## Tested
### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.7.0_51-b13" "x86_64-Mac_OS_X-10.9.1"
### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.8.0-b129" "x86_64-Mac_OS_X-10.9.2"
## Contrib
#### abcl-asdf
* Now working with both Maven 3.0.x and 3.1.x. Thanks to Anton for
the help!
[ticket-328]: http://abcl.org/trac/ticket/328
* cache Maven dependency resolution to avoid repeated lookups.
Instead of calling ABCL-ASDF:RESOLVE in both the ASDF COMPILE-OP
and LOAD-OP, we now cache the result of invocation in COMPILE-OP
and add this value in the LOAD-OP phase. Contributed by Cyrus
Harmon.
[r14631]: http://abcl.org/trac/changeset/14631
#### jna
Now references jna-4.0.0. Some incompatibility with CFFI ([in
progress with fixing upstream][cffi-easye]).
[cffi-easye]: http://github.com/easye/cffi/
Version 1.2.1
=============
http//abcl.org/svn/tags/abcl/1.2.1/CHANGES
27 June 2013
http://abcl.org/releases/1.2.1
* Tested: orcl-jdk-1.7.0_21 orcl-jdk-1.6.0_43
** ansi tests rc-2 failing 11-13 of 21708 total.
Some regressions since 1.1.1
* Stablility fixes; additional Quicklisp compatibility
** Fix (make-instance 'standard-generic-function)
Version 1.2.0
=============
http//abcl.org/svn/tags/1.2.0/abcl/CHANGES
released at ECLM 2013 Madrid, ES // 01 June 2013
* Package local nicknames to behave like SBCL
* ASDF 3.0.1 is now shipped with the implementation
* a more robust MOP implementation
* Common cases of creating purely synthetic JAVA:JNEW-RUNTIME-CLASS
now (mostly) work. Please report corner cases for fixing.
* the system autoloader has been extended to cover functions bound to
symbol properties
Issues Resolved
---------------
[#200] ABCL compiler fails to produce loadable fasl for XPATH
[#321] ASDF 3.01
[#256] Compilation failure in com.informatimago
[#274] compiling "com.informatimago.common-lisp.cesarum") hangs [> 10 minutes]
[#153]
[#32] Modify the currently disabled runtime-class.lisp code to not require ASM
[#152] ql:closer-mop doesn't work
[#203] Failure as build host for SBCL
[#300] Gray streams aren't streams
[#302] Symbols fail to autoload
[#303] CL:LOAD ignores :EXTERNAL-FORMAT argument
[#304] Stack abstraction inconsistency between Java and Lisp frames
[#308] Compiled FLET exhausts the stack
[#309] Printer should obey package-local nicknames
[#310] Invocation of tests from from build.xml broken
[#311] UIOP fails to upgrade
[#312] BORDEAUX-THREADS-TEST::CONDITION-VARIABLE hangs
[#282] Spurious macros redefinition warnings
Changes in ABCL 1.1.1:
* (A)MOP
All reported errors with the MOP implementation have been addressed.
* SETF autoloader
An autoloader for SETF expansion functions has been implemented,
eliminating the errors associated with not being able to use (SETF
SYMBOL) without first invoking SYMBOL as a function.
* ANSI Tests
All outstanding regressions in the ANSI test suite with respect to
abcl-1.0.1 have been fixed.
* ABCL-ASDF
The ability to resolve Maven components in ASDF system definitions has
been restored.
Version 1.1.0
=============
svn.uri=:"http//common-lisp.net/project/armedbear/svn/trunk/abcl/"
(22 November 2012)
Features
--------
* A functioning (A)MOP implementation through the hard work of Rudi
Schlatte (@rudi)
* The implementation can be used across many more Quicklisp systems
through a process of extensive testing. Thanks @xach!
Nota bene: all of the following systems need patches to work as
of the 2012-10-13 Quicklisp. All patches have been accepted in
at least an initial form by the upstream maintainers.
** CLOSER-MOP
Quite possible with local patches
** CFFI
Needs patches to 2012-10-13 Quicklisp. [!!?]
*** Dynamic interfaces idempotent across process -- no more reloading
** HUNCHENTOOT
*** some bugs with underlying streams to be fixed in abcl-1.2-dev
** CXML
Basic XML parsing works. XPath still borked. [???]
* Java 5 bytecode Compiler
The internal Lisp-to-Java bytecode compiler has been hardened by
regression testing across Quicklisp libraries.
** Extensive interpreter/compiler bug fixes due to access to cl-test-suite [???] @antov
** large objects (?!?)
* The facility to construct runtime classes via JNEW-RUNTIME-CLASS (@astalla)
Pretty close to full coverage of primtives for creating synthethic
java classes at runtime. Easy to extend with your needs; sensible
defaults.
** Fields
*** getter/setters
** Annotations
* ASDF
** Stock ASDF-2.26 with conditional patches for the URL-PATHAME and
JAR-PATHNAME implementation extensions to ANSI.
* ABCL-CONTRIB
** ABCL-ASDF
Network installation of binary artifacts named by Maven POM uris.
*** checks at runtime if a given class is present in the
accessible classloaders
*** If the check for the presence of a class fails, find a
maven-3.0.4 binary locally, execute its Aether connector
to retrieve its transitive dependencies from the network.
** JSS
Java Syntax Sucks. q.v [lsw2]
Extensive bugfixing wrt. method resolution [#229]
** JFLI
A "captured from the wild" version of what @rich.hickey did before Clojure.
Changes
-------
* [#249] PATHNAME merge semantics DWIMs on an inferred type
Extends ANSI PATHNAME in a non-conforming manner, which was probably
already the case.
* [r13695] Reimplementation of global symbol macros to avoid using
the symbol's value slot.
* [r13696] DEFMACRO now supports documentation strings as per the
ANSI specification.
* [r13700] ABCL loads under the Weblogic 10.3 application server.
* [r13768] [#193] Allow zero-length symbols
* [r13785] JNEW-RUNTIME-CLASS gets fields and annotations
* [r13790] JNEW-RUNTIME-CLASS getters/setters for fields
* [r13796] [r13797] N3 DOAP description for ABCL
* [r13803] Build target 'abcl-contrib.jar' packages ABCL-CONTRIB
Fixes
-----
* ANSI [#241]
** &AUX parameters fixes RESTAS
* [#221] Stack exhaustsion on funcall in non-existing package
* [#113] DEFSTRUCT concurrency
* [#216][#211] Compiler
** stack inconsistency
* [#187] Better SORT and STABLE-SORT via Jorge Tavares [???]
Armed Bear Common Lisp (ABCL) is a full implementation of
the Common Lisp language featuring both an interpreter and
a compiler, running in the JVM. Originally started to be
a scripting language for the J editor, it now supports JSR-223
(Java scripting API): it can be a scripting engine in any Java
application. Additionally, it can be used to implement (parts of)
the application using Java to Lisp integration APIs.