source: trunk/abcl/CHANGES

Last change on this file was 14913, checked in by mevenson, 3 months ago

asdf-3.1.7.35

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