source: trunk/abcl/CHANGES

Last change on this file was 14989, checked in by mevenson, 3 weeks ago

Note inclusion of asdf-3.2.0 in CHANGES

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