source: trunk/abcl/CHANGES @ 14639

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

trunk now builds abcl-1.4.0-dev

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