source: trunk/abcl/CHANGES @ 14622

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

CHANGES for abcl-1.3.0

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