source: tags/1.3.0/CHANGES

Last change on this file was 14640, checked in by Mark Evenson, 11 years ago

Fix CHANGES.

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