source: branches/streams/abcl/CHANGES

Last change on this file was 14777, checked in by Mark Evenson, 10 years ago

abcl-asdf: bless as 1.4.2; note CHANGES

  • Property svn:eol-style set to native
File size: 52.7 KB
Line 
1Version 1.4.0-dev
2=================
3http://abcl.org/svn/trunk/
4Unreleased.
5
6
7Version 1.3.2
8=============
9http://abcl.org/svn/tags/1.3.2/
10Unreleased.
11
12Enhancements
13------------
14
15* Make result of DEFINE-MODIFY-MACRO available at compilation time
16  [r14727]
17
18
19Fixes
20-----
21* Fix failed AVER [#289] [r14763]
22
23* Fix incorrect dead code elimination
24
25  Additionally, don't recurse into flet/labels upon elimination of a
26  single labels function; simply continue by changing the applicable
27  set.  Reported by Vibhu Mohindra. [r14754][r14756]
28
29* Numeric tower repairs on promoting floats across representation
30  boundaries [r14749-50] (Massimiliano Ghilardi).
31
32* Return SIMPLE-ERROR for invalid external-format arguments.[r14735]
33
34* Lisp stack frame representation now formatted as unreadable. [r14738-9]
35
36Contrib
37-------
38
39* JSS
40
41** Fix GET-JAVA-FIELD and SET-JAVA-FIELD [r14718]
42
43** no longer error on NO-SUCH-JAVA-FIELD, by setting fields as
44   accessible where necessary [r14715] [r14725]
45
46* ABCL-ASDF
47
48** Update to current Maven support (keep up with changing APIs through
49   the Maven 3.2.3-3.2.5 hysteresis) [r14742-7] (Cyrus Hamon).
50
51** Special-case JNA artifacts with alternate network location [r14733]
52
53** Further work on ABCL-ASDF:RESOLVE [r14732] (Cyrus Hamon)
54
55** Find Maven under FreeBSD ports [r14723], under OS X Homebrew [r14776]
56
57
58* ABCL-JAR
59
60** Fix ASDF-JAR:PACKAGE [#376] [r14717][r14720][r14736] (Eduardo Bellani)
61
62*  ASDF
63
64** Updated to version 3.1.4.
65
66
67Version 1.3.1
68=============
69http://abcl.org/svn/tags/1.3.1/
7030-APR-2014
71
72## Fixed
73
74*  The underlying Java Function Interface (JFI) now converts CL:T and
75   CL:NIL to JAVA:+TRUE+ and JAVA:+FALSE+.  Users who wish to
76   reference a JAVA:+NULL+ should do so explicitly.
77   <http://abcl.org/trac/changeset/14694>
78
79*  Make JCALL work in more places.  Thanks to Olof-Joachim Frahm.
80   <http://abcl.org/trac/changeset/14683>
81
82*  Interpolate CL:SLEEP and THREADS:OBJECT-WAIT for timeouts below the
83   Planck timer ("1ns") to a nanosecond.
84   <http://abcl.org/trac/changeset/14679>
85
86*  Update to ASDF 3.1.0.103.
87   <http://abcl.org/trac/changeset/14661>
88
89   Fixes loading of Ironclad and other Quicklisp systems.
90
91*  Fix Uniform Naming Convention (aka "UNC" or "network") paths under Windows.
92   <http://abcl.org/trac/changeset/14659>
93
94   DIRECTORY now works again on UNC paths.
95
96   UNC paths may be either specified with either back slash (#\\) or
97   forward slash (#\/) doubled as the first character in a Pathname
98   namestring.
99
100   The patterns in
101
102        //<server>/<share>/[directories-and-files]
103
104   are parsed as
105
106    <server> is stored as HOST.
107
108    <share> is stored as DEVICE.
109
110    [directories-and-files] gets parsed as per the normal rules under
111    Windows.
112
113   Mixing namestrings with both backslash and slash characters can
114   lead to unpredictable results.  It is recommended not to use
115   backslash characters in namestrings if it can be avoided.  The
116   pathname printed representation is always normalized to using
117   forward slash delimiters.
118
119
120*  Find contrib based on system jar name.
121   <http://abcl.org/trac/changeset/14657>
122
123   From Olof-Joachim Frahm.
124
125
126Version 1.3.0
127=============
128http://abcl.org/svn/tags/1.3.0/
12915-MAR-2014
130
131## Features
132
133*  Make LispStackFrame.UNAVAILABLE_ARG a singleton object,
134   and lazily create the little used portions of the Lisp stack.
135
136    Aggressively cache and control the use of memory by the underlying
137    Lisp stack frame representation by introducing the private
138    LispThread.StackFrame and LispThread.StackSegments classes.
139
140    Contributed by Dmitry Nadezhin.
141
142    LispStackFrame object are allocated on every
143    LispThread.execute(...) .  However, they are seldom [accessed]
144    ([... verify via] inspect[tion of the] stack trace). This patch
145    delays allocation of LispStackFrame? objects until they are
146    requested.  Raw information about stack frames is stored in
147    stack. Stack is an Object[] array (more precisely a list of [...]4
148    [Mib] Object[] arrays).
149
150    ME: We are going to need a way to try to less agressively grab 4Mib
151    chunks in low memory situations.
152
153    Memory profiling of ABCL shows that the classes with largest
154    allocation count are org.armedbear.lisp.LispStackFrame and
155    org.armedbear.lisp.LispStackFrame.UnavailableArgument.
156
157    Contributed by Dmitry Nadezhin.
158
159    [r14572]: http://abcl.org/trac/changeset/14572
160    [r14579]: http://abcl.org/trac/changeset/14579
161
162*  ASDF 3.0.1.94 shipped with the implementation
163
164*  per function call stack and memory exception handler in CL:COMPILE
165
166   Inline calls to jrun-exception-protected (used by handler-bind to
167   catch out of memory conditions).  This commit saves generation
168   roughly 50 cls files.
169
170   [r14552]: http://abcl.org/trac/changeset/14552
171
172*  SYS:SHA256 audited
173
174    The functionality if the SYS:SHA256 algorithim has been audited for
175    use on inputs of single for files with recently shipping ORCL Java 7
176    implementations (through jdk-1.7.0_51).
177
178    [r14582]:  http://abcl.org/trac/changeset/14582
179
180* Connect to NetBeans controlled JDWP via SLIME
181
182    The Netbeans IDE configuration now includes a way to connect to
183    the running-under-jdb ABCL via SLIME.  One needs a version of
184    SLIME able to be loaded from its 'swank.asd' definition. 
185
186* Install 'abcl.jar' and 'abcl-contrib.jar' locally as Maven artifacts
187
188    The Ant `abcl.mvn.install` target now installs build artifacts
189    into the local Maven repository (Olof-Joachim Frahm)
190
191    [r14579]: http://abcl.org/trac/changeset/14606
192
193## Compatibility
194
195*  CL:DIRECTORY
196
197   The implementation specific :RESOLVE-SYMLINKS argument to the ANSI
198   DIRECTORY function has been changed to nil.  This implements
199   behavior closer to SBCL and guarantees that a DIRECTORY operation
200   will not signal a file error.
201
202   [r14619]: http://abcl.org/trac/changeset/14619
203   [ticket-340]: http://abcl.org/trac/ticket/340
204
205## Fixes
206
207*  Fix CL:SLEEP for intervals less than a millisecond. 
208
209   For intervals less than or equal to a nanosecond, including an
210   interval of zero, the current thread merely yields execution to
211   other threads.
212
213   [r14632]: http://abcl.org/trac/changeset/14632
214
215
216## Tested
217
218### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.7.0_51-b13" "x86_64-Mac_OS_X-10.9.1"
219
220### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.8.0-b129" "x86_64-Mac_OS_X-10.9.2"
221
222## Contrib
223
224#### abcl-asdf
225
226*  Now working with both Maven 3.0.x and 3.1.x.  Thanks to Anton for
227   the help!
228
229   [ticket-328]: http://abcl.org/trac/ticket/328
230
231*  cache Maven dependency resolution to avoid repeated lookups.
232
233   Instead of calling ABCL-ASDF:RESOLVE in both the ASDF COMPILE-OP
234   and LOAD-OP, we now cache the result of invocation in COMPILE-OP
235   and add this value in the LOAD-OP phase. Contributed by Cyrus
236   Harmon.
237
238   [r14631]: http://abcl.org/trac/changeset/14631
239
240#### jna
241 
242   Now references jna-4.0.0.  Some incompatibility with CFFI ([in
243   progress with fixing upstream][cffi-easye]).
244
245[cffi-easye]: http://github.com/easye/cffi/
246
247
248Version 1.2.1
249=============
250http//abcl.org/svn/tags/1.2.1/abcl/CHANGES
25127 June 2013
252http://abcl.org/releases/1.2.1
253
254*  Tested:  orcl-jdk-1.7.0_25 orcl-jdk-1.6.0_43
255
256** ansi tests rc-2 failing 11-13 of 21708 total. 
257   Some regressions since 1.1.1
258
259*  Stablility fixes; additional Quicklisp compatibility
260
261** Fix (make-instance 'standard-generic-function)
262
263
264Version 1.2.0
265=============
266svn.uri=:"http//abcl.org/svn/tags/1.2.0/"
267http//abcl.org/svn/tags/1.2.0/abcl/CHANGES
268released at ECLM 2013 Madrid, ES // 01 June 2013
269
270   * Package local nicknames to behave like SBCL
271
272   * ASDF 3.0.1 is now shipped with the implementation
273
274   * a more robust MOP implementation
275
276   * Common cases of creating purely synthetic JAVA:JNEW-RUNTIME-CLASS
277     now (mostly) work.  Please report corner cases for fixing.
278
279   * the system autoloader has been extended to cover functions bound to
280     symbol properties
281
282
283
284Version 1.1.1
285=============
286svn.uri=:"http://abcl.org/svn/tags/abcl/1.1.1/CHANGES"
287(14 Feburary 2013)
288
289  * All reported errors with the MOP implementation have been addressed.
290
291  * An autoloader for SETF expansion functions has been implemented,
292    eliminating the errors associated with not being able to use (SETF
293    SYMBOL) without first invoking SYMBOL as a function. [#266
294
295  * All outstanding regressions in the ANSI test suite with respect to
296    abcl-1.0.1 have been fixed.
297 
298  * The ability to resolve Maven components in ASDF system definitions has been restored.
299
300Issues Resolved
301---------------
302
303[#266]  PSETF.47 ANSI regression 
304[#284]  checks in ensure-generic-function-using-class should occur later
305[#296]  SLIME fails to initialize with (SETF DOCUMENTATION) undefined   
306[#198]  Hunchentoot run failure   
307[#228]  Need to implement autoloader facility for SETF functions
308[#288]  Control character names   
309[#290]  Compiling (defvar *foo* '(quote . x)) throws an error
310[#293]  Loop and default value for of-type problem 
311[#294]  Reader doesn't recognize terminating characters in some cases
312[#299]  ABCL-ASDF:MVN components not loading
313
314Version 1.1.0
315=============
316svn.uri=:"http://abcl.org/svn/tags/1.1.0/abcl/"
317(07 December 2012)
318
319Features
320--------
321
322  *  A functioning (A)MOP implementation through the hard work of Rudi
323     Schlatte (@rudi)
324
325  *  The implementation can be used across many more Quicklisp systems
326     through a process of extensive testing.  Thanks @xach!
327
328     Nota bene: all of the following systems need patches to work as
329     of the 2012-10-13 Quicklisp.  All patches have been accepted in
330     at least an initial form by the upstream maintainers.
331
332     ** CLOSER-MOP
333        Quite possible with local patches
334     ** CFFI
335       Needs patches to 2012-10-13 Quicklisp.  [!!?]
336       *** Dynamic interfaces idempotent across process -- no more reloading
337     ** HUNCHENTOOT
338       *** some bugs with underlying streams to be fixed in abcl-1.2-dev
339     ** CXML
340        Basic XML parsing works.  XPath still borked. [???]     
341  *  Java 5 bytecode Compiler
342
343     The internal Lisp-to-Java bytecode compiler has been hardened by
344     regression testing across Quicklisp libraries. 
345
346     **  Extensive interpreter/compiler bug fixes due to access to cl-test-suite [???] @antov
347     ** large objects (?!?)
348
349  *  The facility to construct runtime classes via JNEW-RUNTIME-CLASS (@astalla)
350
351    Pretty close to full coverage of primtives for creating synthethic
352    java classes at runtime.  Easy to extend with your needs; sensible
353    defaults.
354 
355    ** Fields
356    *** getter/setters
357    ** Annotations
358
359
360  * ASDF
361
362     ** Stock ASDF-2.26.6 which includes #+abcl conditional patches
363        for the URL-PATHAME and JAR-PATHNAME implementation extensions
364        to ANSI.
365
366  *  ABCL-CONTRIB
367
368     ** ABCL-ASDF
369
370        Network installation of binary artifacts named by Maven POM uris.
371
372        *** checks at runtime if a given class is present in the
373            accessible classloaders
374
375        *** If the check for the presence of a class fails, find a
376            maven-3.0.4 binary locally, execute its Aether connector
377            to retrieve its transitive dependencies from the network.
378
379      ** JSS
380         
381         Java Syntax Sucks.  q.v [lsw2]
382   
383         Extensive bugfixing wrt. method resolution [#229]
384
385      ** JFLI
386
387         A "captured from the wild" version of what @rich.hickey did before Clojure.
388       
389Changes
390-------
391
392  * [#249] PATHNAME merge semantics DWIMs on an inferred type
393
394  Extends ANSI PATHNAME in a non-conforming manner, which was probably
395  already the case.
396
397  * [r13695] Reimplementation of global symbol macros to avoid using
398    the symbol's value slot.
399
400  * [r13696] DEFMACRO now supports documentation strings as per the
401    ANSI specification.
402
403  * [r13700] ABCL loads under the Weblogic 10.3 application server.
404
405  * [r13768] [#193] Allow zero-length symbols
406 
407  * [r13785] JNEW-RUNTIME-CLASS gets fields and annotations
408 
409  * [r13790] JNEW-RUNTIME-CLASS getters/setters for fields
410
411  * [r13796] [r13797] N3 DOAP description for ABCL
412
413  * [r13803] Build target 'abcl-contrib.jar' packages ABCL-CONTRIB
414
415Fixes
416-----
417
418  * ANSI [#241]
419 
420     ** &AUX parameters fixes RESTAS
421
422   
423  * [#221] Stack exhaustsion on funcall in non-existing package
424
425  * [#113] DEFSTRUCT concurrency
426
427  * [#216][#211] Compiler
428
429    ** stack inconsistency
430
431  * [#187] Better SORT and STABLE-SORT via Jorge Tavares [???]
432
433Issues Resolved
434---------------
435
436    * [#234]    ABCL-ASDF mvn errors with VERSION slot unbound 
437    * [#237]    JNA fails to load blocking CFFI
438    * [#249]    Problems under Ubuntu   
439    * [#250]    SYS:SHA256 does not compile     
440    * [#265]    COMPILE-FILE.2 COMPILE-FILE.2A ANSI regression 
441    * [#268]    ABCL-ASDF working with maven-3.0.3     
442    * [#269]    SLIME cannot browse systems with November Quicklisp     
443    * [#270]    Is BUGS.DEFEGENERIC.1 a valid test?     
444    * [#271]    ASDF-2.26 changes synced upstream
445    * [#272]    DESCRIBE.[14] ANSI regression   rschlatte       
446    * [#275]    ABCL-CONTRIB still provided if abcl-contrib.jar cannot be located       
447    * [#276]    defmethod doesn't call add-method       
448    * [#277]    reinitialize-instance on class metaobjects incorrect
449    * [#113]    DEFSTRUCT redefinition can crash ABCL on MAKE-STRUCT
450    * [#199]    CL:DEFMETHOD fails for &AUX arguments that reference other arguments   
451    * [#213]    ABCL-ASDF breakage on trunk     
452    * [#215]    ABCL-ASDF:RESOLVE should work in more (some?) cases     
453    * [#229]    JSS method resolution failure   
454    * [#246]    CFFI: dynamically generated classes referred from .fasl can not be found after ABCL restart
455    * [#168]    Compilation fails for quicklisp let-plus       
456    * [#187]    Stack Overflow for Worst-case Vector Sort       
457    * [#202]    ENSURE-GENERIC-FUNCTION assumes LAMBDA-LIST is NIL
458    * [#204]    abcl-asdf maybe-parse-mvn ignores version information
459    * [#205]    JSS logic for resolving methods a little wonky (could use better diagnostics on why resolution has failed)     
460    * [#207]    DECLARE should signal conditions when type declarations are violated
461    * [#210]    Add JFLI to contrib     
462    * [#217]    ANSI tests wont run on Revision 14011: /trunk/abcl     
463    * [#219]    Keyword argument checking for lambda lists is too lenient for ANSI     
464    * [#220]    Lambda list checking too lenient       
465    * [#224]    Autoloader fails when *read-XXXX* variables bound to non-standard values       
466    * [#225]    One of the paths in STD-COMPUTE-DISCRIMINATING function not working     
467    * [#235]    Compiled cl+ssl sources not reloadable 
468    * [#241]    &rest and &aux can't coexist anymore in lambda lists   
469    * [#243]    ClassCastException in MAKE-PATHNAME     
470    * [#245]    Slots of a class with a custom meta-class are reported as unbound.     
471    * [#247]    CFFI: $Proxy3 is not assignable to com.sun.jna.Pointer 
472    * [#252]    MOP rework broke profiler?     
473    * [#254]    Cannot load ASDF systems in jar archives with ASDF-BINARY-LOCATIONS-COMPATIBILTY enabled
474    * [#255]    ASDF file encoding specification doesn't work   
475    * [#263]    loading systems from abcl-contrib fails if CLASSPATH has a component with wildcard
476    * [#264]    abcl-asdf.asd broken since revision 14233
477    * [#60      ]Implement USE-FAST-CALLS properly
478    * [#130]    "SLIME under Windows has ""extra"" CRLF"       
479    * [#172]    DOCUMENTATION does not work for generic functions       
480    * [#174]    Conformance bug in time implementation when using SLIME
481    * [#175]    abcl.release target fails occasionally  unassigned     
482    * [#189]    Compiler fails for 'unsigned-byte type declaration     
483    * [#201]    &WHOLE broken in DEFINE-METHOD-COMBINATION     
484    * [#206]    COMPILER-UNSUPPORTED-FEATURE-ERROR is derived from CONDITION, rather than from ERROR   
485    * [#208]    "Files loaded via ""--load <FILE>"" on the command line have no pathname defaults"     
486    * [#211]    closure-common fails to load correctly after compilation       
487    * [#214]    Stack overflow when compiler macro with fallback is triggered   
488    * [#232]    Allow wrapper script to reference install directory instead of build directory
489    * [#192]    ASDF::IMPLEMENTATION-IDENTIFIER contains ABCL build environment identifier
490    * [#195]    prompt is displayed twice when evaluating NIL at the REPL
491
492Version 1.0.1
493==============
494svn.uri=:"http://abcl.org/svn/tags/1.0.1/abcl/"
495(09 January 2012)
496
497Changes
498-------
499
500  * Updated ASDF to 2.019
501
502  * User Manual now contains more polished formating from docstring
503    groveling, an index of symbols, and additional enhancements.
504
505  * 'abcl.properties.in' now contains examples of optimizing the ABCL
506    wrapper script for 64bit instances for Java7 and for Java6. 
507
508  * [r13720] Randomize string hash computation to guard against
509    exploits.
510
511  * [r13723] New internal API in Package.java for looking up internal
512    vs. external symbols.
513
514Fixes
515-----
516
517  * [#181][r13718] The implementation now correctly loads ASDF definitions
518    from jar archives.  This had prevented the ABCL-CONTRIB loading
519    mechanism from working.
520
521  * [#177] Made the mechanism for locating the abcl-contrib archive
522    more robust
523
524  * [#177] LIST-DIRECTORY no longer ignores :RESOLVE-SYMLINKS
525
526  * [r13706] Fix Streadm.readToken() bug reported by Blake McBride.
527
528  * [#183][r13703] Move threads-jss.lisp out of system source to
529    restore conditional recompilation logic.
530
531
532Version 1.0.0
533==============
534svn.uri=:"http://abcl.org/svn/tags/1.0.0/abcl/"
535released at the European Common Lisp Meeting Amsterdam 2011
536(22 October 2011)
537
538
539Features
540--------
541
542 * (Draft) manual
543
544 * Much better Quicklisp system capabilities (trivial-garbage,
545 bordeaux-threads, parenscript, cxml, et. al.)
546
547Changes
548-------
549
550 * Updated ASDF to 2.017.22
551
552Fixes
553-----
554
555 * CLOSURE-HTML now compiles
556
557 * DEFINE-METHOD-COMBINATION long form implemented
558
559
560Version 0.27.0
561==============
562svn.uri="http://abcl.org/svn/tags/0.27.0/"
563
564
565Features
566--------
567
568 * ABCL works as an SBCL build host
569
570 * Huge (> 64k) literal object support (fixes CL-UNICODE support)
571
572 * The ABCL-ASDF contrib allows the specification of JAR-FILE or
573   JAR-DIRECTORY components that can be resolved via a PATHNAME.  The
574   MVN component bootstraps a Maven3 Aether connector to locally
575   replicate a versioned jar artifact for dynamic inclusion in the
576   CLASSPATH.
577
578Changes
579-------
580
581 * Renamed LispObject.writeToString() method to (more Lispy) printObject()
582
583 * New LispObject.princToString() for user readable output
584
585 * Changed behaviour of LispObject.unreadableString() to signal
586   errors when *PRINT-READABLY* is non-NIL
587
588 * Static initializers moved to <clinit>() (java: static { }) to
589   prevent repeated execution when invoking the constructor multiple times
590
591 * Compiler clean-ups
592
593 * Changed implementation of LABELS to eliminate the need
594   to *always* create a closure
595
596 * File compiler (COMPILE-FILE) clean-ups
597
598 * When calling a function with the wrong number of arguments,
599   report the expected (range) of arguments
600
601 * Upgraded ASDF to 2.017
602
603 * JSS:JLIST-TO-LIST now converts any java.list.List to a Lisp list.
604
605 * The ASDF extensions from JSS for the "jar-directory", "jar-file",
606   and "class-file-directory" types have been refactored into the
607   ABCL-ASDF contrib as well as the *ADDED-TO-CLASSPATH* variable
608   which records dynamically added dependencies.  Use the
609   JSS:ENSURE-COMPATIBILITY function to have JSS include these
610   dependencies. 
611
612*  As long as ABCL-ASDF:ENSURE-MVN-VERSION can dynamically introspect
613   and then load Maven 3 libraries at runtime, ASDF components of type
614   MVN can now be used to specify versioned JVM artifacts.
615
616 * Threads spawned by THREADS:MAKE-THREAD can terminate the Lisp image
617   via the EXT:QUIT and EXT:EXIT functions.
618
619
620Fixes
621-----
622
623 * MULTIPLE-VALUE-PROG1.10 (ansi test) fixed
624
625 * [ticket #148] READTABLE-CASE :INVERT doesn't work for uninterned symbols
626
627 * [ticket #161] READTABLE-CASE of current readtable affects FASL content
628
629 * [ticket #162] Non-symbol in variable position of SETQ form causes
630   class verification failure
631
632 * [ticket #163] Local functions shadow global macro and function bindings
633   (fixes PARENSCRIPT support)
634
635 * [ticket 158] Readable printing of the string "#<abc>" does not signal
636   a PRINT-NOT-READABLE error anymore
637
638 * Fixed SYNTAX.SHARP-BACKSLASH.6 and SYNTAX.SHARP-BACKSLASH.7
639
640 * Fixed many PPRINT.* test suite failures
641
642 * [ticket #151] LOAD fails for whitespace in JAR-PATHNAME
643
644
645Version 0.26.2
646==============
647http://abcl.org/svn/tags/0.26.2/abcl
648(14 August 2011)
649
650Features
651--------
652  * Enable compilation with Java 7
653
654Fixes
655-----
656  * Fix loading from fasls under Windows with whitespace in pathname.
657
658  * Fix #131: Don't include ':' in the version string.
659
660  * Fix #141: SETF of APPLY not working with arbitrary function.
661
662  * Include filename in the error string being reported.
663
664  * Include the test source in the release.
665
666  * Include ASDF definition in source release.
667 
668
669Version 0.26.1
670==============
671http://abcl.org/svn/tags/0.26.1/abcl
672(27 July 2011)
673
674Features
675--------
676
677 * Upgrade ASDF to 2.017.
678
679Fixes
680-----
681
682 * Fix compilation problems by including the
683   org.armedbear.lisp.protocol source in the build process
684
685 * Printing of conditions defined with DEFINE-CONDITION
686
687 * Regression with failing SYNTAX.SHARP-BACKSLASH.6
688   and SYNTAX.SHARP-BACKSLASH.7 ANSI test suite failures
689
690 * Multiple failures in PPRINT.* ANSI test suite failures
691
692 * String interop with Java for strings with fill pointer
693
694 * Made #\Uxxxx a synonym for character codes with values greater than
695   255 on input, but never output as the character name by the
696   implementation.
697
698Version 0.26.0
699==============
700http://abcl.org/svn/tags/0.26.0/abcl
701(10 July 2011)
702
703Features
704--------
705
706 * Add support for weak reference objects
707
708 * Add support for finalizers on LispObject derived classes
709
710 * Upgrade ASDF to 2.0.16.1
711
712 * #\ reader macro now understands #\uNNNN as unicode codepoints
713
714 * JAVA:JRESOLVE-METHOD returns same method as would have been
715   called by JAVA:JCALL with the same arguments
716
717 * Ant 'update' target to upload application to Google App Engine
718
719 * Simple RUN-PROGRAM implementation
720
721 * Support for custom slot definitions according to AMOP
722
723 * New JAVA:*JAVA-OBJECT-TO-STRING-LENGTH* variable to control pretty
724   printing of Java objects
725
726 * JSS - more dynamic Lisp/Java FFI - (http://lsw2.googlecode.com/svn/trunk)
727   imported
728
729 * (REQUIRE :ABCL-CONTRIB) adds 'abcl-contrib.jar' to the ASDF search path
730
731 * Support for weak references in hash tables through a :WEAKNESS keyword
732   argument to MAKE-HASH-TABLE; with SYS:HASH-TABLE-WEAKNESS for inspection
733
734 * Support for loading ASDF systems from JAR archives
735
736 * Fast SHA1, SHA256 and SHA512 cryptographic hashes for files
737
738 * Beginnings of a manual
739
740 * ABCL/ASDF integration with Maven provided systems
741
742 * ASDF-JAR:PACKAGE function to package ASDF systems into JARs
743
744Changes
745=======
746
747 * Reduced code size in the compiler by changing COMPILE-TEST-FORM
748
749 * Enhanced SLIME inspector for JAVA:JAVA-OBJECT
750
751 * Reimplemented MERGE-PATHNAMES
752
753 * TRANSLATE-PATHNAME aligned with SBCL's behaviour if version is wild
754
755 * Removed PRINT-OBJECT methods duplicating Java side code
756
757 * Refactored code in SYSTEM:ZIP function
758
759 * Allow JCOERCE to convert any number to java.lang.Byte (using
760   its two's complement)
761
762 * Replace MAKE-IMMEDIATE-OBJECT with +NULL+, +TRUE+ and +FALSE+ constants
763   (the only supported ones)
764
765 * Better separation between java-collections package and Java FFI
766
767 * JAVA:ADD-TO-CLASSPATH is now a generic function
768
769Fixes
770=====
771
772 * Google App Engine example fixed
773
774 * MAKE-PATHNAME erroneously merges directories as in MERGE-PATHNAME
775
776 * Pretty printer routines using SYS:OUTPUT-OBJECT with GRAY-STREAM
777
778 * Value of *PRINT-CASE* affects file (to FASL) compilation
779
780 * MAKE-PATHNAME ignores version in :DEFAULTS
781
782 * URI decoding algorithm in Pathname.java
783
784 * JNEW-ARRAY-FROM-ARRAY should create byte[] arrays
785
786Version 0.25.0
787==============
788http://abcl.org/svn/tags/0.25.0/abcl
789(10 March 2011)
790
791Features
792--------
793
794* Add :resolve-symlinks keyword argument for DIRECTORY.
795
796* Support -- as a command line parameter for the REPL.
797
798* Preliminary support for Maven deployment.
799
800* Add an initargs cache for speedups in check-initargs. This should
801  make the initarg checking in CLOS quite a bit faster.
802
803* Incorporate output of 'svnversion' into LISP-IMPLEMENTATION-VERSION.
804
805* Ant target for generating Javadoc.
806
807Fixes
808-----
809
810* [svn r13229] Remove non-existing THREAD-LOCK and THREAD-UNLOCK from autoloads.
811
812* [svn 13228] Fix incorrect elimination of named local functions
813  declared inline when they're actually reified in the flet/labels body.
814
815* [svn r13217] Forward-referenced classes work properly now.
816
817* [svn r13209] Add initarg checking to REINITIALIZE-INSTANCE.
818
819* [svn r13204] FINALIZE-INHERITANCE is (more) AMOP compatible.
820
821* [svn r13203] Create ATOMIC-DEFGENERIC macro, in order to eliminate
822  FMAKUNBOUND calls and the resulting windows where no function is bound to
823  symbols which are the most essential building blocks in CLOS/AMOP.
824
825* [svn r13200] Atomically swap generic functions into place of temporary
826  DEFUNs for all standard-class slot accessors.
827  Note: This addresses the recursive requirement to be able
828  to allocate objects and classes while changing the functions
829  used to create them.
830
831* [svn r13196] Provide more context regarding the reason of autoloading.
832  Note: This change *hugely* helps debugging.
833
834* [svn r13189] Fix MACROEXPAND-ALL autoloader which should be
835  loaded from 'format.lisp'.
836
837* [svn r13188] Fix DEFSTRUCT trying to generate accessors named NIL
838
839* [svn r13187] Fix #125: FASL reader should not convert symbol
840  case [Qi FASL loading issues].
841
842* [svn r13185] Fix #119: Incorrect dynamic environment for
843  evaluation of :CLASS allocation slot initforms.
844
845* [svn r13182-r13184] Fix error printing issues.
846
847* [svn r13181] Increase autoload verbosity: include FASLs too
848  (not only Java classes).
849
850Changes
851-------
852
853* Merge 'unsafe-p-removal' branch.
854
855Version 0.24.0
856==============
857http://abcl.org/svn/tags/0.24.0/abcl
858(22 January 2011)
859
860Features
861--------
862
863* [svn r130103-r13107] Implemented JNULL_REF_P to distinguish a
864  JAVA-OBJECT which contains a Java "null" from the Lisp NIL.
865
866* [svn r13102] More type-conversion helpers in JAVA package:
867  LIST-FROM-JARRAY, VECTOR-FROM-JARRAY, and LIST-FROM-JENUMERATION.
868
869* [svn r13078] JVM::MAKE-CLASS-INTERFACE-FILE provides an interface
870  for the creation of Java interfaces as serialized by the new
871  classwriter code.  An example of use can be found in
872  "examples/misc/dynamic-interfaces.lisp".
873
874* [svn r13087] Upgraded to ASDF-2.012
875
876
877Fixes
878-----
879
880* [svn r13135] Fix the problem that FASLs can contain
881  a limited number of functions.
882
883* [svn r13117][ticket #117] Fix stack inconsistency error.
884
885* [svn r13018][ticket #114] Fix strange backtrace growth.
886
887* [svn r13105] Fix Pathname.java failing to find boot.lisp in an
888  "unpacked JAR" situation found by running ABCL in the Glassfish v3
889  servlet container.
890
891* [svn r13096] For arrays, add initialization with the default value
892  of the element type if neither INITIAL-ELEMENT nor INITIAL-CONTENT
893  have been specified.  Found by: dmalves_ (freenode irc nick).
894
895* [svn r13094] Eliminate flushes after every character in
896  javax.scripting support.
897
898* [svn r13090] Make --batch exit, use Lisp.exit() in places where
899  applicable so that the streams are flushed, hence allowing --eval
900  output to be flushed.
901
902* [svn r13088] Fix algorithim error in writing byte sequences via
903  RandomAccessCharacterFile.  Found and fixed by David Kirkman.
904
905
906Changes
907-------
908
909* [svn r13141-13146,13156] Make ABCL a well behaving library to better
910  support embedding: NEVER call System.exit() again.  Instead, ABCL now
911  throws org.armedbear.lisp.ProcessingTerminated and
912  org.armedbear.lisp.IntegrityError.
913
914* [svn r13111] Added a "tools" directory available in SVN repository
915  to contain tools for developing ABCL in various states.  The first
916  inhabitant is 'code-grapher.lisp' that provides a prototype to
917  diagram a JVM instruction sequence via graphviz.
918
919* [svn r13101] Reduced verbosity of the AbclScriptEngine.
920
921* [svn r13097-13100] Slight refactoring of PATHNAME code, further
922  specifying URI escaping rules.
923
924* [svn r13091-2] Better error reporting for UnhandledCondition thrown
925  from the Interpreter, storing the originating Java error in the
926  "cause" field if the cause is a subclass of JAVA_EXCEPTION.
927
928
929Version 0.23.1
930==============
931http://abcl.org/svn/tags/0.23.1/abcl
932(01 December 2010)
933
934Fixes
935-----
936
937* [svn r13509-10] Allow JSR-223 clients to query ABCL metadata without
938  incurring the entire interpreter startup time.
939
940* [svn r13506] Fix probles with loading FASLs in directories
941  containing whitespace characters.
942 
943  We now require all PATHNAME objects constructed via a namestring
944  containing the "file" scheme to be URI encoded according to
945  RFC3986. 
946
947
948Version 0.23
949============
950http://abcl.org/svn/tags/0.23.0/abcl
951(25 November, 2010)
952
953Features
954--------
955
956* [svn r12986] Update to ASDF 2.010.1
957
958* [svn r12982] Experimental support for the long form
959     of DEFINE-METHOD-COMBINATION
960
961* [svn r12994] New java-interop macros: CHAIN and JMETHOD-LET
962
963* [svn r13030-31,r13034] ASDF-INSTALL improvements: Ensure that the
964     ASDF registry contains the ASDF-INSTALL locations.  Better
965     resolution mechanism for 'gpg' binary.
966
967Fixes
968-----
969
970* [svn r13039] Restore the Lisp-based build
971
972* [ticket #108][svn r13027] Fix download problems with ASDF-INSTALL
973
974* [svn r12995-12997] Changes to generated byte code to prevent JRockit JVM
975     from crashing when optimizing it
976
977* Various fixes in order to complete the Maxima test suite without failures
978
979* [ticket #98] THREAD type specifier not exported from the THREADS package
980
981* [svn r12946] Fix CLOS thread-safety
982
983* [svn r12930] Fix non-constantness of constant symbols when using SET
984
985* [svn r12929] Don't throw conditions on floating point underflow
986    (fixes Maxima failures)
987
988* [svn r12928] Fix for Java-collections-as-lisp-sequences support
989
990* [svn r12927] Fix for regression to moved threads related symbols
991
992* [ticket #104] SET changes value of symbols defined with DEFCONSTANT
993
994* [ticket #88] Need a predicate to indicate source of compiled version
995      ie Java vs Lisp
996
997* [ticket #106] DEFSTRUCT :include with :conc-name creating overwriting
998      inherited slot accessors
999
1000* [ticket #97] Symbol imported in multiple packages reported multiple
1001      times by APROPOS
1002
1003* [ticket #107] Incorrect compilation of (SETF STRUCTURE-REF) expansion
1004
1005* [ticket #105] DIRECTORY ignores :WILD-INFERIORS
1006
1007Other
1008-----
1009
1010* [svn r12918] Compiler byte code generator cleanup: introduction
1011      of generic class file writer, elimination of special purpose code
1012      in the compiler.
1013
1014* Number of hashtable implementations reduced to 1 (from 5)
1015
1016* Reduced use of 'synchronized' global hash table access by using
1017      the java.util.concurrent package
1018
1019Version 0.22
1020============
1021http://abcl.org/svn/tags/0.22.0/abcl
1022(September 24, 2010)
1023
1024Fixes
1025-----
1026
1027* [svn r12902] Fix reading data with scandinavian latin1 characters
1028
1029* [svn r12906] Respect the CLASSPATH environment variable in the
1030  abcl wrapper scripts
1031
1032* [ticket #103] DOCUMENTATION not autoloaded
1033
1034Other
1035-----
1036
1037* [svn r12819] Until-0.22-compatibility hacks (in threads support) removed
1038
1039
1040
1041Version 0.21
1042============
1043http://abcl.org/svn/tags/0.21.0/abcl
1044(July 24, 2010)
1045
1046
1047Features
1048--------
1049
1050* [svn r12818] Update to ASDF 2.004
1051
1052* [svn r12738-805] Support for custom CLOS slot definitions and
1053  custom class options.
1054
1055* [svn r12756] slot-* functions work on structures too.
1056
1057* [svn r12774] Improved Java integration: jmake-proxy can implement
1058  more than one interface.
1059
1060* [svn r12773] Improved Java integration: functions to dynamically
1061  manipulate the classpath.
1062
1063* [svn r12755] Improved Java integration: CL:STRING can convert Java
1064  strings to Lisp strings.
1065
1066Fixes
1067-----
1068
1069* [svn 12809-10-20] Various printing fixes.
1070
1071* [svn 12804] Fixed elimination of unused local functions shadowed by macrolet.
1072
1073* [svn r12798-803] Fixed pathname serialization across OSes.
1074  On Windows pathnames are always printed with forward slashes,
1075  but can still be read with backslashes.
1076
1077* [svn r12740] Make JSR-223 classes compilable with Java 1.5
1078
1079Other
1080-----
1081
1082* [svn r12754] Changed class file generation and FASL loading
1083  to minimize reflection.
1084
1085* [svn r12734] A minimal Swing GUI Console with a REPL
1086  is now included with ABCL.
1087
1088Version 0.20
1089============
1090http://abcl.org/svn/tags/0.20.0/abcl
1091(24 May, 2010)
1092
1093
1094Features
1095--------
1096
1097* [svn r12576] Support for CLOS METACLASS feature.
1098
1099* [svn r12591-602] Consolidation of copy/paste code in the readers.
1100
1101* [svn r12619] Update to ASDF2 (specifically to ASDF 1.719).
1102
1103* [svn r12620] Use interpreted function in FASL when compilation fails.
1104
1105* [ticket #95] PATHNAME-JAR and PATHNAME-URL subtypes now handle jar
1106  and URL references working for OPEN, LOAD, PROBE-FILE,
1107  FILE-WRITE-DATE, DIRECTORY, et. al.
1108
1109* Many small speed improvements (by marking functions 'final').
1110
1111* [ticket #91] Threads started through MAKE-THREAD now have a
1112    thread-termination restart available in their debugger.
1113
1114* [svn r12663] JCLASS supports an optional class-loader argument.
1115
1116* [svn r12634] THREADS:THREAD-JOIN implemented.
1117
1118* [svn r12671] Site specific initialization code can be included in
1119  builds via the 'abcl.startup.file' Ant property.
1120
1121Fixes
1122-----
1123
1124* [ticket #89] Inlining of READ-LINE broken when the return value
1125    is unused.
1126
1127* [svn r12636] Java class verification error when compiling PROGV
1128    in a context wanting an unboxed return value (typically a
1129    logical expression).
1130
1131* [svn r12635] ABCL loads stale fasls instead of updated source
1132    even when LOAD is called with a file name without extension.
1133
1134* [ticket #92] Codepoints between #xD800 and #xDFFF are incorrectly
1135    returned as characters from CODE-CHAR.
1136
1137* [ticket #93] Reader doesn't handle zero returned values from
1138    macro functions correctly.
1139
1140* [ticket #79] Different, yet similarly named, uninterned symbols
1141    are incorrectly coalesced into the same object in a fasl.
1142
1143* [ticket #86] No restarts available to kill a thread, if none
1144    bound by user code.
1145
1146* [svn r12586] Increased function dispatch speed by eliminating
1147    FIND-CLASS calls (replacing them by constant references).
1148
1149* [svn r12656] PATHNAME-JAR now properly uses HTTP/1.1 HEAD requests
1150  to detect if remote resource has been changed.
1151
1152* [svn r12643] PATHNAME-JAR now properly references Windows drive
1153    letters on DEVICE other than the default.
1154
1155* [svn r12621] Missing 'build-from-lisp.sh' referenced in README now
1156    included in source release.
1157
1158Other
1159-----
1160
1161* [svn r12581] LispCharacter() constructors made private, in favor
1162    of getInstance() for better re-use of pre-constructed characters.
1163
1164* [svn r12583] JAVA-CLASS reimplemented in Lisp.
1165
1166* [svn r12673] Load 'system.lisp' moved later in boot sequence so
1167    unhandled conditions drop to debugger.
1168
1169* [svn r12675] '--nosystem' commandline option inhibits loading of
1170    'system.lisp'.
1171
1172* [svn r12642] Under Windows, pathname TYPE components can now contain
1173    embedded periods iff they end in '.lnk' to support shortcuts.
1174
1175
1176Version 0.19
1177============
1178http://abcl.org/svn/trunk/abcl
1179(14 Mar, 2010)
1180
1181Features
1182--------
1183
1184* [svn r12518] *DISASSEMBLER* may now contain a hook which returns the
1185  command to disassemble compiled functions.
1186
1187* [svn r12516] An implementation of user-extensible sequences as
1188  proposed in Christopher Rhodes, "User-extensible sequences in Common
1189  Lisp", Proc. of the 2007 International Lisp Conference.
1190
1191* [svn r12513] Implement SYS:SRC and SYS:JAVA logical pathname
1192  translations for system Lisp source and the root of the Java package
1193  structure, respectively.
1194
1195* [svn r12505] All calls to anonymous functions and local functions that have
1196  been declared inline are now converted to LET* forms, reducing stack usage
1197  and the number of generated classes.
1198
1199* [svn r12487] An initial port ASDF-INSTALL now forms the first ABCL
1200  contrib.  Such contribs are optionally built by the Ant target
1201  'abcl.contrib'.  ASDF-INSTALL is not expected to work very well
1202  under Windows in its present state.
1203
1204* [svn r12447] [ticket:80] REQUIRE now searches for ASDF systems.
1205
1206* [svn r12422] Jar pathname support extensively re-worked and tested
1207  so that LOAD, PROBE-FILE, TRUENAME, DIRECTORY, and WRITE-FILE-DATE
1208  all work both for local and remote jar pathnames of the form
1209  "jar:URL!/JAR-ENTRY".
1210
1211  The loading ASDF systems from jar files is now possible.
1212
1213  SYS:PATHNAME-JAR-P predicate signals whether a pathname references a
1214  jar.
1215
1216  NB: jar pathnames do *not* currently work as an argument to OPEN.
1217
1218  SYS:UNZIP implemented to unpack ZIP files.
1219
1220  SYS:ZIP now has a three argument version for creating zip files with
1221  hierarchical entries.
1222
1223* [svn r12450] Collect unprocessed command-line arguments in
1224  EXT:*COMMAND-LINE-ARGUMENT-LIST* (Dennis Lambe Jr.)
1225
1226* [svn r12414] SYS::%GET-OUTPUT-STREAM-ARRAY returns a Lisp byte array
1227  from a Java byte array stream.
1228
1229* [svn 12402] ABCL.TEST.LISP:RUN-MATCHING will now execute that subset
1230  of tests which match a string.
1231
1232
1233Fixes/Optimizations
1234-------------------
1235
1236* [svn r12526] Unbinding of PROGV bound variables on local transfer
1237  of control (within-java-function jump targets)
1238
1239* [svn r12510] The new ansi-test WITH-STANDARD-IO-SYNTAX.23 passes.
1240  Our with-standard-io-syntax implementation now correctly resets all necessary
1241  pprint variables. Patch by Douglas R. Miles, thanks for the contribution!
1242
1243* [svn r12485] Pathnames starting with "." can now have TYPE.
1244
1245* [svn r12484] FASLs containing "." characters not used to indicate
1246  type (i.e. ".foo.bar.baz.abcl") can now be loaded.
1247
1248* [svn r12422] Pathname.java URL contructor under Windows now properly
1249  interprets the drive letter.
1250
1251* [svn r12449] The 'abcl.jar' produced by Netbeans now contains a valid
1252  manifest (found by Paul Griffionen).
1253
1254* [svn r12441] ZipCache now caches all references to ZipFiles based on
1255  the last-modified time for local files.  Remote files are always
1256  retrieved due to problems in the underlying JVM code.
1257
1258  SYS:REMOVE-ZIP-CACHE implements a way to invalidate an entry given a
1259  pathname.
1260
1261* [svn r12439] Remove duplication of java options in Windows
1262  'abcl.bat' script.
1263
1264* [svn r12437] CHAR-CODE-LIMIT is the upper execlusive limit (found by
1265  Paul Griffionen).
1266
1267* [svn r12436] Describe formatting was missing a newline (reported by
1268  Blake McBride).
1269
1270* [svn 12469] Ensure that FILE-ERROR always has a value (possibly NIL)
1271  for its PATHNAME member.
1272
1273* [svn r14222] MERGE-PATHNAMES no longer potentially shares structure
1274  between its result and *DEFAULT-PATHNAME-DEFAULTS*.
1275
1276* [svn r12416] Fixed ANSI LAMBDA.nn test failures caused by errors in
1277  lambda inlining.
1278
1279* [svn r12417] [ticket:83] Fix TRANSLATE-LOGICAL-PATHNAME regression.
1280  (Alan Ruttenberg).
1281
1282* [svn r12412] Optimize memory efficiency of FORMAT by use of a
1283  hashtable rather than a CHAR-CODE-LIMIT array.
1284
1285* [svn r12408] FIND-SYMBOL requires a  string argument.
1286
1287* [svn r12400] Make NIL (as symbol) available to the compiler.
1288
1289* [svn r12398] Move lambda list analysis to compile time where possible.
1290
1291* [svn r12397] BROADCAST-STREAM obeys default external format fixing
1292  ANSI MAKE-BROADCAST-STREAM.8.
1293
1294* [svn r12395] Improve arglist display for SLIME (Matthias Hölzl).
1295
1296* [svn r12394] Optimize array utilization in closures.
1297
1298* [svn r12393] Optimize array functions in compiler which don't
1299  require clearing the VALUES array.
1300
1301* [svn r12392] Optimize/normalize aspects of boot.lisp
1302
1303* [svn r12391] Prevent duplicated subclasses form occuring.
1304
1305
1306Other
1307-----
1308
1309* [svn r12447] SYS::*MODULE-PROVIDER-FUNCTION* now provides a mechanism
1310  to extend the REQUIRE resolver mechanism at runtime.
1311
1312* [svn r12430] Ant based build no longer writes temporary files to
1313  contain the Lisp build instructions.
1314
1315* [svn r12481] STANDARD-CLASS now has slots to be inherited by
1316  deriving metaclasses in support of the (in progress) work on
1317  metaclass.
1318
1319* [svn r12425] No longer ignore the METACLASS defclass option in
1320  support of the (in progress) work on metaclass
1321
1322* [svn r12422] SYS::*LOAD-TRUENAME-FASL* now contains the TRUENAME of
1323  the Java "*.cls" component when loading a packed FASL.
1324
1325* [svn r12461] Human readable Java representations for class cast
1326  exceptions for NULL and UNBOUND values.
1327
1328* [svn r12453 et. ff.] Large numbers of the implementation of Java
1329  primitives have been declared in a way so that a stack trace
1330  provides a much more readable indication of what has been invoked.
1331  Primitives which extend Primitive are prefixed with "pf_"; those
1332  which extend SpecialOperator are prefixed with "sf_".
1333
1334* [svn r12422] The internal structure of a jar pathname has changed.
1335  Previously a pathname with a DEVICE that was itself a pathname
1336  referenced a jar.  This convention was not able to simultaneously
1337  represent both jar entries that were themselves jar files (as occurs
1338  with packed FASLs within JARs) and devices which refer to drive
1339  letters under Windows.  Now, a pathname which refers to a jar has a
1340  DEVICE which is a proper list of at most two entries.  The first
1341  entry always references the "outer jar", and the second entry (if it
1342  exists) references the "inner jar".
1343
1344* [svn r12419] Ant 'abcl.release' target centralizes the build steps
1345  necessary for creating releases.
1346
1347* [svn r12409] Compiler now rewrites function calls with (LAMBDA 
) as
1348  the operator to LET* forms.
1349
1350* [svn r12415] CLASS-FILE renamed to ABCL-CLASS-FILE to prepare for
1351  (in progress) reworking of Stream inheritance.
1352
1353* [svn r123406] 'test/lisp/abcl/bugs.lisp' forms a default location to
1354  add unit tests for current bug testing.  The intention is to move
1355  these tests into the proper location elsewhere in the test suite
1356  once they have been fixed.
1357
1358* [svn r124040] Java tests upgraded to use junit-4.8.1.  Netbeans
1359  project runtime classpath now uses compilation results before source
1360  directory, allowing the invocation of ABCL in interpreted mode if
1361  the Ant 'abcl.compile.lisp.skip' property is set.  Java unit tests
1362  for some aspects of jar pathname work added.
1363
1364*  New toplevel 'doc' directory now contains:
1365
1366   + [svn r12410] Design for the (in progress) reworking of the Stream
1367     inheritance.
1368
1369   + [svn r12433] Design and current status for the re-implementation
1370     of jar pathnames.
1371
1372* [svn r12402] Change ABCL unit tests to use the ABCL-TEST-LISP definition
1373  contained in 'abcl.asd'.  Fixed and renabled math-tests.  Added new
1374  tests for work related to handling jar pathnames.
1375
1376* [svn r12401] The REFERENCES-NEEDED-P field of the LOCAL-FUNCTION structure now
1377  tracks whether local functions need the capture of an actual
1378  function object.
1379
1380
1381Version 0.18.1
1382==============
1383http://abcl.org/svn/tags/0.18.1/abcl
1384(17 Jan, 2010)
1385
1386Features:
1387
1388 * Support for printing java objects with print-object
1389 * Support for disassembling proxied functions
1390
1391Bugs fixed:
1392
1393 * maxima works again
1394
1395Version 0.18.0
1396==============
1397http://abcl.org/svn/tags/0.18.0/abcl
1398(12 Jan, 2010)
1399
1400
1401Features:
1402
1403 * Programmable handling of out-of-memory and stack-overflow conditions
1404 * Faster initial startup (to support Google App Engine)
1405 * Faster special variable lookup
1406 * New interface for binding/unwinding special variables
1407 * Implement (SETF (STREAM-EXTERNAL-FORMAT <stream>) <format>)
1408 * Implement (SETF (JAVA:JFIELD <object>) <value>)
1409 * Constant FORMAT strings get compiled for performance
1410
1411
1412Bugs fixed:
1413
1414 * FASLs are system default encoding dependent (ticket 77)
1415 * I/O of charset-unsupported characters causes infinite loop (ticket 76)
1416 * Memory leak where on unused functions with documentation
1417 * ANSI PRINT-LEVEL.* tests
1418 * Continued execution after failing to handle Throwable exceptions
1419 * Line numbers in generated java classes incorrect
1420 * JCALL, JNEW doesn't select best match when multiple applicable methods
1421 * STREAM-EXTERNAL-FORMAT always returns :DEFAULT, instead of actual format
1422 * REPL no longer hangs in Netbeans 6.[578] output window
1423 * Lambda-list variables replaced by surrounding SYMBOL-MACROLET
1424
1425
1426Other changes
1427
1428 * LispObject does not inherit from Lisp anymore
1429 * Many functions declared 'final' for performance improvement
1430 * SYSTEM:*SOURCE* FASLs for system files no longer refer to intermediate build location
1431
1432
1433Version 0.17.0
1434==============
1435http://abcl.org/svn/tags/0.17.0/abcl
1436(07 Nov, 2009)
1437
1438
1439Features:
1440
1441  * Google App Engine example project "Hello world"
1442  * Support for loading FASLs from JAR files
1443  * Checking of init-arguments for MAKE-INSTANCE (CLOS)
1444  * Support for *INVOKE-DEBUGGER-HOOK* (to support SLIME)
1445  * Reduced abcl.jar size (bytes and number of objects)
1446  * Faster access to locally bound specials (compiler efficiency)
1447  * Java property to print autoloading information: abcl.autoload.verbose
1448  * Experimental: binary fasls
1449  * Default Ant build target now "abcl.clean abcl.wrapper" (from abcl.help)
1450  * ConditionThrowable class renamed to ControlTransfer,
1451      parent class changed to RuntimeException (to make it unchecked)
1452  * API no longer throws ConditionThrowable/ControlTransfer
1453
1454
1455Bugs fixed:
1456
1457  * Better fix for #63: Prevent exceptions from happening (GO and RETURN-FROM)
1458  * Restore ability for ABCL to be build host for SBCL
1459  * CLOS performance improvements through looser COMPILE dependency
1460  * Compilation fix for highest SPEED setting (triggered by CL-BENCH)
1461  * COMPILE's use of temp files eliminated
1462  * OpenJDK on Darwin now correctly identified
1463  * Incorrect block names for SETF functions defined by LABELS
1464  * Fixed MULTIPLE-VALUE-CALL with more than 8 arguments
1465  * Incorrect identification of lexical scope on recursive TAGBODY/GO
1466    and BLOCK/RETURN-FROM blocks (compiler and interpreter)
1467  * Correctly return 65k in char-code-limit (was 256, incorrectly)
1468  * Fixes to be able to run the BEYOND-ANSI tests (part of ANSI test suite)
1469  * Compiler typo fix
1470  * Implementation of mutex functionality moved to lisp from Java
1471  * Functions handling #n= and #n# are now compiled
1472  * Autoload cleanups
1473  * System package creation cleaned up
1474  * CHAR-CODE-LIMIT correctly reflects CHAR-CODE maximum return value
1475  * Precompiler macroexpansion failure for macros expanding into
1476      special operators
1477
1478
1479Version 0.16.1
1480==============
1481http://abcl.org/svn/tags/0.16.1/abcl
1482(17 Oct, 2009)
1483
1484Bugs fixed:
1485
1486  * More careful checking for null args in LispStackFrame
1487  * Honor appearance of &allow-other-keys in CLOS MAKE-INSTANCE
1488  * Fix #63: GO forms to non-existent TAGBODY labels would exit ABCL
1489  * Don't leak temp files during compilation
1490
1491Version 0.16.0
1492==============
1493(06 SEP 2009)
1494http://abcl.org/svn/tags/0.16.0/abcl
1495
1496  Summary of changes:
1497  ------------------
1498  * Fixed generated wrapper for path names with spaces (Windows)
1499  * Fixed ticket #58: Inspection of Java objects in Lisp code
1500  * Restored functionality of the built-in profiler
1501  * Profiler extended with hot-spot counting (as opposed to call counting)
1502  * Stack sampling in the profiler moved to scheduler thread to
1503    reduce impact on the program execution thread
1504  * THE type-checking for the interpreter
1505    (for simple-enough type specifications)
1506  * Added structure argument type checking in structure slot
1507    accessor functions
1508  * Make GENSYM thread-safe
1509  * Various performance fixes found by running the raytracer
1510    from http://www.ffconsultancy.com/languages/ray_tracer/benchmark.html
1511  * Better initarg checking for make-instance and change-class
1512    Fixes ansi-test errors CHANGE-CLASS.1.11, MAKE-INSTANCE.ERROR.3,
1513    MAKE-INSTANCE.ERROR.4, CHANGE-CLASS.ERROR.4 and SHARED-INITIALIZE.ERROR.4
1514  * Improve performance of StackFrames (Erik Huelsmann, Ville Voutilainen,
1515    with input from Peter Graves and Douglas Miles)
1516  * Improve performance of CLOS eql-specializers via cache (Anton Vodonosov)
1517  * 'build-from-lisp.sh' shell script (Tobias Rittweiler)
1518  * New threading primitives aligned with Java/JVM constructs (Erik Huelsmann)
1519
1520      SYNCHRONIZED-ON
1521      OBJECT-NOTIFY
1522      OBJECT-NOTIFY-ALL
1523  * THREADS package created to hold threads related primitives:
1524
1525      THREADP THREAD-UNLOCK THREAD-LOCK THREAD-NAME THREAD-ALIVE-P
1526      CURRENT-THREAD DESTROY-THREAD INTERRUPT-THREAD WITH-THREAD-LOCK
1527      MAKE-THREAD-LOCK MAKE-THREAD INTERRUPT-THREAD
1528
1529      MAPCAR-THREADS
1530
1531      GET-MUTEX MAKE-MUTEX WITH-MUTEX RELEASE-MUTEX
1532
1533    These primitives are still part of the EXTENSIONS package but are
1534    now to be considered as deprecated, marked to be removed with
1535    0.22
1536  * Stacktraces now contain calls through Java code relevant to
1537    debugging (Tobias Rittweiler)
1538
1539    Backtrace functionality been moved from EXT:BACKTRACE-AS-LIST to
1540    SYS:BACKTRACE to mark this changes.  The methods SYS:FRAME-TO-STRING
1541    and SYS:FRAME-TO-LIST can be used to inspect the new
1542    LISP_STACK_FRAME and JAVA_STACK_FRAME objects
1543  * Various stream input performance optimizations
1544  * Fixed breakage when combining Gray streams and the pretty printer
1545  * Performance improvements for resolution of non-recursive #=n and #n#
1546
1547
1548Version 0.15.0
1549==============
1550http://abcl.org/svn/tags/0.15.0/abcl
1551(07 Jun, 2009)
1552
1553 Summary of changes:
1554 -------------------
1555  * 2 more MOP exported symbols to support Cells port
1556  * Updated FASL version
1557  * Support (pre)compilation of functions with a non-null lexical environment
1558  * Compiler and precompiler cleanups
1559  * 'rt.lisp' copy from ANSI test suite removed
1560  * Many documentation additions for the (pre)compiler
1561  * JSR-233 support improvements
1562  * Refactoring of classes:
1563   - deleted: CompiledFunction, ClosureTemplateFunction, CompiledClosure,
1564              Primitive0R, Primitive1R, Primitive2R
1565   - renamed: CompiledClosure [from ClosureTemplateFunction]
1566  * Compiler support for non-constant &key and &optional initforms
1567  * Fixed ticket #21: JVM stack inconsistency [due to use of RET/JSR]
1568  * Numerous special bindings handling fixes, especially with respect
1569    to (local) transfer of control with GO/RETURN-FROM
1570  * Paths retrieved using URL.getPath() require decoding (r11815)
1571  * Build doesn't work inside paths with spaces (r11813)
1572  * Compilation of export of a symbol not in *package* (r11808)
1573  * Moved compiler-related rewriting of forms from precompiler to compiler
1574  * Removed chained closures ('XEPs') in case of &optional arguments only
1575  * Loading of SLIME fails under specific conditions (r11791)
1576  * Binding of *FASL-ANONYMOUS-PACKAGE* breaks specials handling (r11783)
1577  * Fixed ANSI tests: DO-ALL-SYMBOLS.{6,9,12}, DEFINE-SETF-EXPANDER.{1,6,?},
1578      MULTIPLE-VALUE-SETQ.{5,8}, SYMBOL-MACROLET.8, COMPILE-FILE.{17,18}
1579  * COMPILE and COMPILE-FILE second and third values after a failed
1580      invocation inside the same compilation-unit (r11769)
1581  * JCLASS on non-existing classes should signal an error (r11762)
1582  * Dotted lambda lists break interpretation (r11760)
1583  * Implementation of MACROEXPAND-ALL and COMPILER-LET (r11755)
1584  * Switch from casting to 'instanceof' for performance (r11754)
1585  * Google App Engine support: don't die if 'os.arch' isn't set (r11750)
1586  * Excessive stack use while resolving #n= and #n# (r11474)
1587
1588
1589Version 0.14.1
1590==============
1591(5 Apr, 2009)
1592http://abcl.org/svn/tags/0.14.1/abcl
1593
1594 Summary of changes:
1595 -------------------
1596  * Include this CHANGES file and scripting files in the tar and zip files
1597
1598
1599Version 0.14.0
1600==============
1601(5 Apr, 2009)
1602http://abcl.org/svn/tags/0.14.0/abcl
1603
1604 Summary of changes:
1605 -------------------
1606  * Increased clarity on licensing (Classpath exception
1607     mentioned in COPYING, removed LICENSE)
1608  * Resolved infinite recursion on TRACEing the compiler
1609  * Changes on the lisp based build system for parity with Ant
1610  * Fixed interpreter creation in Java Scripting
1611  * libabcl.so no longer created; it was solely about installing
1612     a SIGINT handler. Libraries should not do that.
1613  * boxing of LispObject descendants in JCALL/JCALL-RAW fixed
1614  * OpenBSD and NetBSD platform detection
1615  * fixed special bindings restores in compiled code for
1616     MULTIPLE-VALUE-BIND/LET/LET*/PROGV and function bodies
1617  * introduced variadic list() function to replace list1() ... list9()
1618  * fix return value type of ACOS with complex argument
1619  * fixed precision of multiplication of complex values
1620  * fixed use of COMPILE inside file compilation (i.e. COMPILE-FILE)
1621  * fix expansion of macros inside RESTART-CASE
1622     (fixes RESTART-CASE ANSI failures)
1623  * fix macroexpansion in the precompiler
1624  * Fixnum and Bignum now use a static factory method;
1625      constructors are now private -> increases chances of numbers
1626      being EQ
1627  * Code cleanup in EXPT to fix (EXPT <any-number> <Bignum>)
1628
1629
1630Version 0.13.0
1631==============
1632(28 Feb, 2009)
1633http://abcl.org/svn/tags/0.13.0/abcl
1634
1635 Summary of changes:
1636 -------------------
1637  * Separated J and ABCL into two trees
1638  * Many many compiler code cleanups
1639  * NetBeans project files
1640  * Support for CDR6 (See http://cdr.eurolisp.org/document/6/)
1641  * More efficient code emission in the compiler
1642  * Ant build targets for testing (abcl.test)
1643  * Use ConcurrentHashMap to store the lisp threads for increased performance
1644  * Fix adjustability of expressly adjustable arrays (ticket #28)
1645  * Fix calculation of upperbound on ASH in the compiler
1646     (don't calculate numbers too big, instead, return '*')
1647  * Introduce LispInteger as the super type of Bignum and Fixnum
1648  * Boxing/unboxing for SingleFloat and DoubleFloat values,
1649      inclusive of unboxed calculations
1650  * Fixed URL decoding bug in loadCompiledFunction (use java.net.URLDecoder)
1651  * Fixed line number counting
1652  * Inlining of simple calculations (+/-/*)
1653  * All static fields declared 'final'
1654  * Add support for java.lang.Long based on Bignum to our FFI
1655
1656
Note: See TracBrowser for help on using the repository browser.