source: trunk/abcl/CHANGES @ 14868

Last change on this file since 14868 was 14868, checked in by Mark Evenson, 7 years ago

metadata: Correct CHANGES

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