source: branches/0.26.x/abcl/CHANGES @ 13413

Last change on this file since 13413 was 13413, checked in by ehuelsmann, 10 years ago

Backport r13412 and update CHANGES.

  • Property svn:eol-style set to native
File size: 32.3 KB
Line 
1Version 0.26.1
2==============
3svn://common-lisp.net/project/armedbear/svn/tags/0.26.1/abcl
4
5Fixes
6-----
7
8 * Fix compilation problems by including the
9   org.armedbear.lisp.protocol source in the build process
10
11 * Printing of conditions defined with DEFINE-CONDITION
12
13 * Regression with failing SYNTAX.SHARP-BACKSLASH.6
14   and SYNTAX.SHARP-BACKSLASH.7 ANSI test suite failures
15
16 * Multiple failures in PPRINT.* ANSI test suite failures
17
18 * String interop with Java for strings with fill pointer
19
20Version 0.26.0
21==============
22svn://common-lisp.net/project/armedbear/svn/tags/0.26.0/abcl
23(10 July 2011)
24
25Features
26--------
27
28 * Add support for weak reference objects
29
30 * Add support for finalizers on LispObject derived classes
31
32 * Upgrade ASDF to 2.0.16.1
33
34 * #\ reader macro now understands #\uNNNN as unicode codepoints
35
36 * JAVA:JRESOLVE-METHOD returns same method as would have been
37   called by JAVA:JCALL with the same arguments
38
39 * Ant 'update' target to upload application to Google App Engine
40
41 * Simple RUN-PROGRAM implementation
42
43 * Support for custom slot definitions according to AMOP
44
45 * New JAVA:*JAVA-OBJECT-TO-STRING-LENGTH* variable to control pretty
46   printing of Java objects
47
48 * JSS - more dynamic Lisp/Java FFI - (http://lsw2.googlecode.com/svn/trunk)
49   imported
50
51 * (REQUIRE :ABCL-CONTRIB) adds 'abcl-contrib.jar' to the ASDF search path
52
53 * Support for weak references in hash tables through a :WEAKNESS keyword
54   argument to MAKE-HASH-TABLE; with SYS:HASH-TABLE-WEAKNESS for inspection
55
56 * Support for loading ASDF systems from JAR archives
57
58 * Fast SHA1, SHA256 and SHA512 cryptographic hashes for files
59
60 * Beginnings of a manual
61
62 * ABCL/ASDF integration with Maven provided systems
63
64 * ASDF-JAR:PACKAGE function to package ASDF systems into JARs
65
66Changes
67=======
68
69 * Reduced code size in the compiler by changing COMPILE-TEST-FORM
70
71 * Enhanced SLIME inspector for JAVA:JAVA-OBJECT
72
73 * Reimplemented MERGE-PATHNAMES
74
75 * TRANSLATE-PATHNAME aligned with SBCL's behaviour if version is wild
76
77 * Removed PRINT-OBJECT methods duplicating Java side code
78
79 * Refactored code in SYSTEM:ZIP function
80
81 * Allow JCOERCE to convert any number to java.lang.Byte (using
82   its two's complement)
83
84 * Replace MAKE-IMMEDIATE-OBJECT with +NULL+, +TRUE+ and +FALSE+ constants
85   (the only supported ones)
86
87 * Better separation between java-collections package and Java FFI
88
89 * JAVA:ADD-TO-CLASSPATH is now a generic function
90
91Fixes
92=====
93
94 * Google App Engine example fixed
95
96 * MAKE-PATHNAME erroneously merges directories as in MERGE-PATHNAME
97
98 * Pretty printer routines using SYS:OUTPUT-OBJECT with GRAY-STREAM
99
100 * Value of *PRINT-CASE* affects file (to FASL) compilation
101
102 * MAKE-PATHNAME ignores version in :DEFAULTS
103
104 * URI decoding algorithm in Pathname.java
105
106 * JNEW-ARRAY-FROM-ARRAY should create byte[] arrays
107
108Version 0.25.0
109==============
110svn://common-lisp.net/project/armedbear/svn/tags/0.25.0/abcl
111(10 March 2011)
112
113Features
114--------
115
116* Add :resolve-symlinks keyword argument for DIRECTORY.
117
118* Support -- as a command line parameter for the REPL.
119
120* Preliminary support for Maven deployment.
121
122* Add an initargs cache for speedups in check-initargs. This should
123  make the initarg checking in CLOS quite a bit faster.
124
125* Incorporate output of 'svnversion' into LISP-IMPLEMENTATION-VERSION.
126
127* Ant target for generating Javadoc.
128
129Fixes
130-----
131
132* [svn r13229] Remove non-existing THREAD-LOCK and THREAD-UNLOCK from autoloads.
133
134* [svn 13228] Fix incorrect elimination of named local functions
135  declared inline when they're actually reified in the flet/labels body.
136
137* [svn r13217] Forward-referenced classes work properly now.
138
139* [svn r13209] Add initarg checking to REINITIALIZE-INSTANCE.
140
141* [svn r13204] FINALIZE-INHERITANCE is (more) AMOP compatible.
142
143* [svn r13203] Create ATOMIC-DEFGENERIC macro, in order to eliminate
144  FMAKUNBOUND calls and the resulting windows where no function is bound to
145  symbols which are the most essential building blocks in CLOS/AMOP.
146
147* [svn r13200] Atomically swap generic functions into place of temporary
148  DEFUNs for all standard-class slot accessors.
149  Note: This addresses the recursive requirement to be able
150  to allocate objects and classes while changing the functions
151  used to create them.
152
153* [svn r13196] Provide more context regarding the reason of autoloading.
154  Note: This change *hugely* helps debugging.
155
156* [svn r13189] Fix MACROEXPAND-ALL autoloader which should be
157  loaded from 'format.lisp'.
158
159* [svn r13188] Fix DEFSTRUCT trying to generate accessors named NIL
160
161* [svn r13187] Fix #125: FASL reader should not convert symbol
162  case [Qi FASL loading issues].
163
164* [svn r13185] Fix #119: Incorrect dynamic environment for
165  evaluation of :CLASS allocation slot initforms.
166
167* [svn r13182-r13184] Fix error printing issues.
168
169* [svn r13181] Increase autoload verbosity: include FASLs too
170  (not only Java classes).
171
172Changes
173-------
174
175* Merge 'unsafe-p-removal' branch.
176
177Version 0.24.0
178==============
179svn://common-lisp.net/project/armedbear/svn/tags/0.24.0/abcl
180(22 January 2011)
181
182Features
183--------
184
185* [svn r130103-r13107] Implemented JNULL_REF_P to distinguish a
186  JAVA-OBJECT which contains a Java "null" from the Lisp NIL.
187
188* [svn r13102] More type-conversion helpers in JAVA package:
189  LIST-FROM-JARRAY, VECTOR-FROM-JARRAY, and LIST-FROM-JENUMERATION.
190
191* [svn r13078] JVM::MAKE-CLASS-INTERFACE-FILE provides an interface
192  for the creation of Java interfaces as serialized by the new
193  classwriter code.  An example of use can be found in
194  "examples/misc/dynamic-interfaces.lisp".
195
196* [svn r13087] Upgraded to ASDF-2.012
197
198
199Fixes
200-----
201
202* [svn r13135] Fix the problem that FASLs can contain
203  a limited number of functions.
204
205* [svn r13117][ticket #117] Fix stack inconsistency error.
206
207* [svn r13018][ticket #114] Fix strange backtrace growth.
208
209* [svn r13105] Fix Pathname.java failing to find boot.lisp in an
210  "unpacked JAR" situation found by running ABCL in the Glassfish v3
211  servlet container.
212
213* [svn r13096] For arrays, add initialization with the default value
214  of the element type if neither INITIAL-ELEMENT nor INITIAL-CONTENT
215  have been specified.  Found by: dmalves_ (freenode irc nick).
216
217* [svn r13094] Eliminate flushes after every character in
218  javax.scripting support.
219
220* [svn r13090] Make --batch exit, use Lisp.exit() in places where
221  applicable so that the streams are flushed, hence allowing --eval
222  output to be flushed.
223
224* [svn r13088] Fix algorithim error in writing byte sequences via
225  RandomAccessCharacterFile.  Found and fixed by David Kirkman.
226
227
228Changes
229-------
230
231* [svn r13141-13146,13156] Make ABCL a well behaving library to better
232  support embedding: NEVER call System.exit() again.  Instead, ABCL now
233  throws org.armedbear.lisp.ProcessingTerminated and
234  org.armedbear.lisp.IntegrityError.
235
236* [svn r13111] Added a "tools" directory available in SVN repository
237  to contain tools for developing ABCL in various states.  The first
238  inhabitant is 'code-grapher.lisp' that provides a prototype to
239  diagram a JVM instruction sequence via graphviz.
240
241* [svn r13101] Reduced verbosity of the AbclScriptEngine.
242
243* [svn r13097-13100] Slight refactoring of PATHNAME code, further
244  specifying URI escaping rules.
245
246* [svn r13091-2] Better error reporting for UnhandledCondition thrown
247  from the Interpreter, storing the originating Java error in the
248  "cause" field if the cause is a subclass of JAVA_EXCEPTION.
249
250
251Version 0.23.1
252==============
253svn://common-lisp.net/project/armedbear/svn/tags/0.23.1/abcl
254(01 December 2010)
255
256Fixes
257-----
258
259* [svn r13509-10] Allow JSR-223 clients to query ABCL metadata without
260  incurring the entire interpreter startup time.
261
262* [svn r13506] Fix probles with loading FASLs in directories
263  containing whitespace characters.
264 
265  We now require all PATHNAME objects constructed via a namestring
266  containing the "file" scheme to be URI encoded according to
267  RFC3986. 
268
269
270Version 0.23
271============
272svn://common-lisp.net/project/armedbear/svn/tags/0.23.0/abcl
273(25 November, 2010)
274
275Features
276--------
277
278* [svn r12986] Update to ASDF 2.010.1
279
280* [svn r12982] Experimental support for the long form
281     of DEFINE-METHOD-COMBINATION
282
283* [svn r12994] New java-interop macros: CHAIN and JMETHOD-LET
284
285* [svn r13030-31,r13034] ASDF-INSTALL improvements: Ensure that the
286     ASDF registry contains the ASDF-INSTALL locations.  Better
287     resolution mechanism for 'gpg' binary.
288
289Fixes
290-----
291
292* [svn r13039] Restore the Lisp-based build
293
294* [ticket #108][svn r13027] Fix download problems with ASDF-INSTALL
295
296* [svn r12995-12997] Changes to generated byte code to prevent JRockit JVM
297     from crashing when optimizing it
298
299* Various fixes in order to complete the Maxima test suite without failures
300
301* [ticket #98] THREAD type specifier not exported from the THREADS package
302
303* [svn r12946] Fix CLOS thread-safety
304
305* [svn r12930] Fix non-constantness of constant symbols when using SET
306
307* [svn r12929] Don't throw conditions on floating point underflow
308    (fixes Maxima failures)
309
310* [svn r12928] Fix for Java-collections-as-lisp-sequences support
311
312* [svn r12927] Fix for regression to moved threads related symbols
313
314* [ticket #104] SET changes value of symbols defined with DEFCONSTANT
315
316* [ticket #88] Need a predicate to indicate source of compiled version
317      ie Java vs Lisp
318
319* [ticket #106] DEFSTRUCT :include with :conc-name creating overwriting
320      inherited slot accessors
321
322* [ticket #97] Symbol imported in multiple packages reported multiple
323      times by APROPOS
324
325* [ticket #107] Incorrect compilation of (SETF STRUCTURE-REF) expansion
326
327* [ticket #105] DIRECTORY ignores :WILD-INFERIORS
328
329Other
330-----
331
332* [svn r12918] Compiler byte code generator cleanup: introduction
333      of generic class file writer, elimination of special purpose code
334      in the compiler.
335
336* Number of hashtable implementations reduced to 1 (from 5)
337
338* Reduced use of 'synchronized' global hash table access by using
339      the java.util.concurrent package
340
341Version 0.22
342============
343svn://common-lisp.net/project/armedbear/svn/tags/0.22.0/abcl
344(September 24, 2010)
345
346Fixes
347-----
348
349* [svn r12902] Fix reading data with scandinavian latin1 characters
350
351* [svn r12906] Respect the CLASSPATH environment variable in the
352  abcl wrapper scripts
353
354* [ticket #103] DOCUMENTATION not autoloaded
355
356Other
357-----
358
359* [svn r12819] Until-0.22-compatibility hacks (in threads support) removed
360
361
362
363Version 0.21
364============
365svn://common-lisp.net/project/armedbear/svn/tags/0.21.0/abcl
366(July 24, 2010)
367
368
369Features
370--------
371
372* [svn r12818] Update to ASDF 2.004
373
374* [svn r12738-805] Support for custom CLOS slot definitions and
375  custom class options.
376
377* [svn r12756] slot-* functions work on structures too.
378
379* [svn r12774] Improved Java integration: jmake-proxy can implement
380  more than one interface.
381
382* [svn r12773] Improved Java integration: functions to dynamically
383  manipulate the classpath.
384
385* [svn r12755] Improved Java integration: CL:STRING can convert Java
386  strings to Lisp strings.
387
388Fixes
389-----
390
391* [svn 12809-10-20] Various printing fixes.
392
393* [svn 12804] Fixed elimination of unused local functions shadowed by macrolet.
394
395* [svn r12798-803] Fixed pathname serialization across OSes.
396  On Windows pathnames are always printed with forward slashes,
397  but can still be read with backslashes.
398
399* [svn r12740] Make JSR-223 classes compilable with Java 1.5
400
401Other
402-----
403
404* [svn r12754] Changed class file generation and FASL loading
405  to minimize reflection.
406
407* [svn r12734] A minimal Swing GUI Console with a REPL
408  is now included with ABCL.
409
410Version 0.20
411============
412svn://common-lisp.net/project/armedbear/svn/tags/0.20.0/abcl
413(24 May, 2010)
414
415
416Features
417--------
418
419* [svn r12576] Support for CLOS METACLASS feature.
420
421* [svn r12591-602] Consolidation of copy/paste code in the readers.
422
423* [svn r12619] Update to ASDF2 (specifically to ASDF 1.719).
424
425* [svn r12620] Use interpreted function in FASL when compilation fails.
426
427* [ticket #95] PATHNAME-JAR and PATHNAME-URL subtypes now handle jar
428  and URL references working for OPEN, LOAD, PROBE-FILE,
429  FILE-WRITE-DATE, DIRECTORY, et. al.
430
431* Many small speed improvements (by marking functions 'final').
432
433* [ticket #91] Threads started through MAKE-THREAD now have a
434    thread-termination restart available in their debugger.
435
436* [svn r12663] JCLASS supports an optional class-loader argument.
437
438* [svn r12634] THREADS:THREAD-JOIN implemented.
439
440* [svn r12671] Site specific initialization code can be included in
441  builds via the 'abcl.startup.file' Ant property.
442
443Fixes
444-----
445
446* [ticket #89] Inlining of READ-LINE broken when the return value
447    is unused.
448
449* [svn r12636] Java class verification error when compiling PROGV
450    in a context wanting an unboxed return value (typically a
451    logical expression).
452
453* [svn r12635] ABCL loads stale fasls instead of updated source
454    even when LOAD is called with a file name without extension.
455
456* [ticket #92] Codepoints between #xD800 and #xDFFF are incorrectly
457    returned as characters from CODE-CHAR.
458
459* [ticket #93] Reader doesn't handle zero returned values from
460    macro functions correctly.
461
462* [ticket #79] Different, yet similarly named, uninterned symbols
463    are incorrectly coalesced into the same object in a fasl.
464
465* [ticket #86] No restarts available to kill a thread, if none
466    bound by user code.
467
468* [svn r12586] Increased function dispatch speed by eliminating
469    FIND-CLASS calls (replacing them by constant references).
470
471* [svn r12656] PATHNAME-JAR now properly uses HTTP/1.1 HEAD requests
472  to detect if remote resource has been changed.
473
474* [svn r12643] PATHNAME-JAR now properly references Windows drive
475    letters on DEVICE other than the default.
476
477* [svn r12621] Missing 'build-from-lisp.sh' referenced in README now
478    included in source release.
479
480Other
481-----
482
483* [svn r12581] LispCharacter() constructors made private, in favor
484    of getInstance() for better re-use of pre-constructed characters.
485
486* [svn r12583] JAVA-CLASS reimplemented in Lisp.
487
488* [svn r12673] Load 'system.lisp' moved later in boot sequence so
489    unhandled conditions drop to debugger.
490
491* [svn r12675] '--nosystem' commandline option inhibits loading of
492    'system.lisp'.
493
494* [svn r12642] Under Windows, pathname TYPE components can now contain
495    embedded periods iff they end in '.lnk' to support shortcuts.
496
497
498Version 0.19
499============
500svn://common-lisp.net/project/armedbear/svn/trunk/abcl
501(14 Mar, 2010)
502
503Features
504--------
505
506* [svn r12518] *DISASSEMBLER* may now contain a hook which returns the
507  command to disassemble compiled functions.
508
509* [svn r12516] An implementation of user-extensible sequences as
510  proposed in Christopher Rhodes, "User-extensible sequences in Common
511  Lisp", Proc. of the 2007 International Lisp Conference.
512
513* [svn r12513] Implement SYS:SRC and SYS:JAVA logical pathname
514  translations for system Lisp source and the root of the Java package
515  structure, respectively.
516
517* [svn r12505] All calls to anonymous functions and local functions that have
518  been declared inline are now converted to LET* forms, reducing stack usage
519  and the number of generated classes.
520
521* [svn r12487] An initial port ASDF-INSTALL now forms the first ABCL
522  contrib.  Such contribs are optionally built by the Ant target
523  'abcl.contrib'.  ASDF-INSTALL is not expected to work very well
524  under Windows in its present state.
525
526* [svn r12447] [ticket:80] REQUIRE now searches for ASDF systems.
527
528* [svn r12422] Jar pathname support extensively re-worked and tested
529  so that LOAD, PROBE-FILE, TRUENAME, DIRECTORY, and WRITE-FILE-DATE
530  all work both for local and remote jar pathnames of the form
531  "jar:URL!/JAR-ENTRY".
532
533  The loading ASDF systems from jar files is now possible.
534
535  SYS:PATHNAME-JAR-P predicate signals whether a pathname references a
536  jar.
537
538  NB: jar pathnames do *not* currently work as an argument to OPEN.
539
540  SYS:UNZIP implemented to unpack ZIP files.
541
542  SYS:ZIP now has a three argument version for creating zip files with
543  hierarchical entries.
544
545* [svn r12450] Collect unprocessed command-line arguments in
546  EXT:*COMMAND-LINE-ARGUMENT-LIST* (Dennis Lambe Jr.)
547
548* [svn r12414] SYS::%GET-OUTPUT-STREAM-ARRAY returns a Lisp byte array
549  from a Java byte array stream.
550
551* [svn 12402] ABCL.TEST.LISP:RUN-MATCHING will now execute that subset
552  of tests which match a string.
553
554
555Fixes/Optimizations
556-------------------
557
558* [svn r12526] Unbinding of PROGV bound variables on local transfer
559  of control (within-java-function jump targets)
560
561* [svn r12510] The new ansi-test WITH-STANDARD-IO-SYNTAX.23 passes.
562  Our with-standard-io-syntax implementation now correctly resets all necessary
563  pprint variables. Patch by Douglas R. Miles, thanks for the contribution!
564
565* [svn r12485] Pathnames starting with "." can now have TYPE.
566
567* [svn r12484] FASLs containing "." characters not used to indicate
568  type (i.e. ".foo.bar.baz.abcl") can now be loaded.
569
570* [svn r12422] Pathname.java URL contructor under Windows now properly
571  interprets the drive letter.
572
573* [svn r12449] The 'abcl.jar' produced by Netbeans now contains a valid
574  manifest (found by Paul Griffionen).
575
576* [svn r12441] ZipCache now caches all references to ZipFiles based on
577  the last-modified time for local files.  Remote files are always
578  retrieved due to problems in the underlying JVM code.
579
580  SYS:REMOVE-ZIP-CACHE implements a way to invalidate an entry given a
581  pathname.
582
583* [svn r12439] Remove duplication of java options in Windows
584  'abcl.bat' script.
585
586* [svn r12437] CHAR-CODE-LIMIT is the upper execlusive limit (found by
587  Paul Griffionen).
588
589* [svn r12436] Describe formatting was missing a newline (reported by
590  Blake McBride).
591
592* [svn 12469] Ensure that FILE-ERROR always has a value (possibly NIL)
593  for its PATHNAME member.
594
595* [svn r14222] MERGE-PATHNAMES no longer potentially shares structure
596  between its result and *DEFAULT-PATHNAME-DEFAULTS*.
597
598* [svn r12416] Fixed ANSI LAMBDA.nn test failures caused by errors in
599  lambda inlining.
600
601* [svn r12417] [ticket:83] Fix TRANSLATE-LOGICAL-PATHNAME regression.
602  (Alan Ruttenberg).
603
604* [svn r12412] Optimize memory efficiency of FORMAT by use of a
605  hashtable rather than a CHAR-CODE-LIMIT array.
606
607* [svn r12408] FIND-SYMBOL requires a  string argument.
608
609* [svn r12400] Make NIL (as symbol) available to the compiler.
610
611* [svn r12398] Move lambda list analysis to compile time where possible.
612
613* [svn r12397] BROADCAST-STREAM obeys default external format fixing
614  ANSI MAKE-BROADCAST-STREAM.8.
615
616* [svn r12395] Improve arglist display for SLIME (Matthias Hölzl).
617
618* [svn r12394] Optimize array utilization in closures.
619
620* [svn r12393] Optimize array functions in compiler which don't
621  require clearing the VALUES array.
622
623* [svn r12392] Optimize/normalize aspects of boot.lisp
624
625* [svn r12391] Prevent duplicated subclasses form occuring.
626
627
628Other
629-----
630
631* [svn r12447] SYS::*MODULE-PROVIDER-FUNCTION* now provides a mechanism
632  to extend the REQUIRE resolver mechanism at runtime.
633
634* [svn r12430] Ant based build no longer writes temporary files to
635  contain the Lisp build instructions.
636
637* [svn r12481] STANDARD-CLASS now has slots to be inherited by
638  deriving metaclasses in support of the (in progress) work on
639  metaclass.
640
641* [svn r12425] No longer ignore the METACLASS defclass option in
642  support of the (in progress) work on metaclass
643
644* [svn r12422] SYS::*LOAD-TRUENAME-FASL* now contains the TRUENAME of
645  the Java "*.cls" component when loading a packed FASL.
646
647* [svn r12461] Human readable Java representations for class cast
648  exceptions for NULL and UNBOUND values.
649
650* [svn r12453 et. ff.] Large numbers of the implementation of Java
651  primitives have been declared in a way so that a stack trace
652  provides a much more readable indication of what has been invoked.
653  Primitives which extend Primitive are prefixed with "pf_"; those
654  which extend SpecialOperator are prefixed with "sf_".
655
656* [svn r12422] The internal structure of a jar pathname has changed.
657  Previously a pathname with a DEVICE that was itself a pathname
658  referenced a jar.  This convention was not able to simultaneously
659  represent both jar entries that were themselves jar files (as occurs
660  with packed FASLs within JARs) and devices which refer to drive
661  letters under Windows.  Now, a pathname which refers to a jar has a
662  DEVICE which is a proper list of at most two entries.  The first
663  entry always references the "outer jar", and the second entry (if it
664  exists) references the "inner jar".
665
666* [svn r12419] Ant 'abcl.release' target centralizes the build steps
667  necessary for creating releases.
668
669* [svn r12409] Compiler now rewrites function calls with (LAMBDA 
) as
670  the operator to LET* forms.
671
672* [svn r12415] CLASS-FILE renamed to ABCL-CLASS-FILE to prepare for
673  (in progress) reworking of Stream inheritance.
674
675* [svn r123406] 'test/lisp/abcl/bugs.lisp' forms a default location to
676  add unit tests for current bug testing.  The intention is to move
677  these tests into the proper location elsewhere in the test suite
678  once they have been fixed.
679
680* [svn r124040] Java tests upgraded to use junit-4.8.1.  Netbeans
681  project runtime classpath now uses compilation results before source
682  directory, allowing the invocation of ABCL in interpreted mode if
683  the Ant 'abcl.compile.lisp.skip' property is set.  Java unit tests
684  for some aspects of jar pathname work added.
685
686*  New toplevel 'doc' directory now contains:
687
688   + [svn r12410] Design for the (in progress) reworking of the Stream
689     inheritance.
690
691   + [svn r12433] Design and current status for the re-implementation
692     of jar pathnames.
693
694* [svn r12402] Change ABCL unit tests to use the ABCL-TEST-LISP definition
695  contained in 'abcl.asd'.  Fixed and renabled math-tests.  Added new
696  tests for work related to handling jar pathnames.
697
698* [svn r12401] The REFERENCES-NEEDED-P field of the LOCAL-FUNCTION structure now
699  tracks whether local functions need the capture of an actual
700  function object.
701
702
703Version 0.18.1
704==============
705svn://common-lisp.net/project/armedbear/svn/tags/0.18.1/abcl
706(17 Jan, 2010)
707
708Features:
709
710 * Support for printing java objects with print-object
711 * Support for disassembling proxied functions
712
713Bugs fixed:
714
715 * maxima works again
716
717Version 0.18.0
718==============
719svn://common-lisp.net/project/armedbear/svn/tags/0.18.0/abcl
720(12 Jan, 2010)
721
722
723Features:
724
725 * Programmable handling of out-of-memory and stack-overflow conditions
726 * Faster initial startup (to support Google App Engine)
727 * Faster special variable lookup
728 * New interface for binding/unwinding special variables
729 * Implement (SETF (STREAM-EXTERNAL-FORMAT <stream>) <format>)
730 * Implement (SETF (JAVA:JFIELD <object>) <value>)
731 * Constant FORMAT strings get compiled for performance
732
733
734Bugs fixed:
735
736 * FASLs are system default encoding dependent (ticket 77)
737 * I/O of charset-unsupported characters causes infinite loop (ticket 76)
738 * Memory leak where on unused functions with documentation
739 * ANSI PRINT-LEVEL.* tests
740 * Continued execution after failing to handle Throwable exceptions
741 * Line numbers in generated java classes incorrect
742 * JCALL, JNEW doesn't select best match when multiple applicable methods
743 * STREAM-EXTERNAL-FORMAT always returns :DEFAULT, instead of actual format
744 * REPL no longer hangs in Netbeans 6.[578] output window
745 * Lambda-list variables replaced by surrounding SYMBOL-MACROLET
746
747
748Other changes
749
750 * LispObject does not inherit from Lisp anymore
751 * Many functions declared 'final' for performance improvement
752 * SYSTEM:*SOURCE* FASLs for system files no longer refer to intermediate build location
753
754
755Version 0.17.0
756==============
757svn://common-lisp.net/project/armedbear/svn/tags/0.17.0/abcl
758(07 Nov, 2009)
759
760
761Features:
762
763  * Google App Engine example project "Hello world"
764  * Support for loading FASLs from JAR files
765  * Checking of init-arguments for MAKE-INSTANCE (CLOS)
766  * Support for *INVOKE-DEBUGGER-HOOK* (to support SLIME)
767  * Reduced abcl.jar size (bytes and number of objects)
768  * Faster access to locally bound specials (compiler efficiency)
769  * Java property to print autoloading information: abcl.autoload.verbose
770  * Experimental: binary fasls
771  * Default Ant build target now "abcl.clean abcl.wrapper" (from abcl.help)
772  * ConditionThrowable class renamed to ControlTransfer,
773      parent class changed to RuntimeException (to make it unchecked)
774  * API no longer throws ConditionThrowable/ControlTransfer
775
776
777Bugs fixed:
778
779  * Better fix for #63: Prevent exceptions from happening (GO and RETURN-FROM)
780  * Restore ability for ABCL to be build host for SBCL
781  * CLOS performance improvements through looser COMPILE dependency
782  * Compilation fix for highest SPEED setting (triggered by CL-BENCH)
783  * COMPILE's use of temp files eliminated
784  * OpenJDK on Darwin now correctly identified
785  * Incorrect block names for SETF functions defined by LABELS
786  * Fixed MULTIPLE-VALUE-CALL with more than 8 arguments
787  * Incorrect identification of lexical scope on recursive TAGBODY/GO
788    and BLOCK/RETURN-FROM blocks (compiler and interpreter)
789  * Correctly return 65k in char-code-limit (was 256, incorrectly)
790  * Fixes to be able to run the BEYOND-ANSI tests (part of ANSI test suite)
791  * Compiler typo fix
792  * Implementation of mutex functionality moved to lisp from Java
793  * Functions handling #n= and #n# are now compiled
794  * Autoload cleanups
795  * System package creation cleaned up
796  * CHAR-CODE-LIMIT correctly reflects CHAR-CODE maximum return value
797  * Precompiler macroexpansion failure for macros expanding into
798      special operators
799
800
801Version 0.16.1
802==============
803svn://common-lisp.net/project/armedbear/svn/tags/0.16.1/abcl
804(17 Oct, 2009)
805
806Bugs fixed:
807
808  * More careful checking for null args in LispStackFrame
809  * Honor appearance of &allow-other-keys in CLOS MAKE-INSTANCE
810  * Fix #63: GO forms to non-existent TAGBODY labels would exit ABCL
811  * Don't leak temp files during compilation
812
813Version 0.16.0
814==============
815(06 SEP 2009)
816svn://common-lisp.net/project/armedbear/svn/tags/0.16.0/abcl
817
818  Summary of changes:
819  ------------------
820  * Fixed generated wrapper for path names with spaces (Windows)
821  * Fixed ticket #58: Inspection of Java objects in Lisp code
822  * Restored functionality of the built-in profiler
823  * Profiler extended with hot-spot counting (as opposed to call counting)
824  * Stack sampling in the profiler moved to scheduler thread to
825    reduce impact on the program execution thread
826  * THE type-checking for the interpreter
827    (for simple-enough type specifications)
828  * Added structure argument type checking in structure slot
829    accessor functions
830  * Make GENSYM thread-safe
831  * Various performance fixes found by running the raytracer
832    from http://www.ffconsultancy.com/languages/ray_tracer/benchmark.html
833  * Better initarg checking for make-instance and change-class
834    Fixes ansi-test errors CHANGE-CLASS.1.11, MAKE-INSTANCE.ERROR.3,
835    MAKE-INSTANCE.ERROR.4, CHANGE-CLASS.ERROR.4 and SHARED-INITIALIZE.ERROR.4
836  * Improve performance of StackFrames (Erik Huelsmann, Ville Voutilainen,
837    with input from Peter Graves and Douglas Miles)
838  * Improve performance of CLOS eql-specializers via cache (Anton Vodonosov)
839  * 'build-from-lisp.sh' shell script (Tobias Rittweiler)
840  * New threading primitives aligned with Java/JVM constructs (Erik Huelsmann)
841
842      SYNCHRONIZED-ON
843      OBJECT-NOTIFY
844      OBJECT-NOTIFY-ALL
845  * THREADS package created to hold threads related primitives:
846
847      THREADP THREAD-UNLOCK THREAD-LOCK THREAD-NAME THREAD-ALIVE-P
848      CURRENT-THREAD DESTROY-THREAD INTERRUPT-THREAD WITH-THREAD-LOCK
849      MAKE-THREAD-LOCK MAKE-THREAD INTERRUPT-THREAD
850
851      MAPCAR-THREADS
852
853      GET-MUTEX MAKE-MUTEX WITH-MUTEX RELEASE-MUTEX
854
855    These primitives are still part of the EXTENSIONS package but are
856    now to be considered as deprecated, marked to be removed with
857    0.22
858  * Stacktraces now contain calls through Java code relevant to
859    debugging (Tobias Rittweiler)
860
861    Backtrace functionality been moved from EXT:BACKTRACE-AS-LIST to
862    SYS:BACKTRACE to mark this changes.  The methods SYS:FRAME-TO-STRING
863    and SYS:FRAME-TO-LIST can be used to inspect the new
864    LISP_STACK_FRAME and JAVA_STACK_FRAME objects
865  * Various stream input performance optimizations
866  * Fixed breakage when combining Gray streams and the pretty printer
867  * Performance improvements for resolution of non-recursive #=n and #n#
868
869
870Version 0.15.0
871==============
872svn://common-lisp.net/project/armedbear/svn/tags/0.15.0/abcl
873(07 Jun, 2009)
874
875 Summary of changes:
876 -------------------
877  * 2 more MOP exported symbols to support Cells port
878  * Updated FASL version
879  * Support (pre)compilation of functions with a non-null lexical environment
880  * Compiler and precompiler cleanups
881  * 'rt.lisp' copy from ANSI test suite removed
882  * Many documentation additions for the (pre)compiler
883  * JSR-233 support improvements
884  * Refactoring of classes:
885   - deleted: CompiledFunction, ClosureTemplateFunction, CompiledClosure,
886              Primitive0R, Primitive1R, Primitive2R
887   - renamed: CompiledClosure [from ClosureTemplateFunction]
888  * Compiler support for non-constant &key and &optional initforms
889  * Fixed ticket #21: JVM stack inconsistency [due to use of RET/JSR]
890  * Numerous special bindings handling fixes, especially with respect
891    to (local) transfer of control with GO/RETURN-FROM
892  * Paths retrieved using URL.getPath() require decoding (r11815)
893  * Build doesn't work inside paths with spaces (r11813)
894  * Compilation of export of a symbol not in *package* (r11808)
895  * Moved compiler-related rewriting of forms from precompiler to compiler
896  * Removed chained closures ('XEPs') in case of &optional arguments only
897  * Loading of SLIME fails under specific conditions (r11791)
898  * Binding of *FASL-ANONYMOUS-PACKAGE* breaks specials handling (r11783)
899  * Fixed ANSI tests: DO-ALL-SYMBOLS.{6,9,12}, DEFINE-SETF-EXPANDER.{1,6,?},
900      MULTIPLE-VALUE-SETQ.{5,8}, SYMBOL-MACROLET.8, COMPILE-FILE.{17,18}
901  * COMPILE and COMPILE-FILE second and third values after a failed
902      invocation inside the same compilation-unit (r11769)
903  * JCLASS on non-existing classes should signal an error (r11762)
904  * Dotted lambda lists break interpretation (r11760)
905  * Implementation of MACROEXPAND-ALL and COMPILER-LET (r11755)
906  * Switch from casting to 'instanceof' for performance (r11754)
907  * Google App Engine support: don't die if 'os.arch' isn't set (r11750)
908  * Excessive stack use while resolving #n= and #n# (r11474)
909
910
911Version 0.14.1
912==============
913(5 Apr, 2009)
914svn://common-lisp.net/project/armedbear/svn/tags/0.14.1/abcl
915
916 Summary of changes:
917 -------------------
918  * Include this CHANGES file and scripting files in the tar and zip files
919
920
921Version 0.14.0
922==============
923(5 Apr, 2009)
924svn://common-lisp.net/project/armedbear/svn/tags/0.14.0/abcl
925
926 Summary of changes:
927 -------------------
928  * Increased clarity on licensing (Classpath exception
929     mentioned in COPYING, removed LICENSE)
930  * Resolved infinite recursion on TRACEing the compiler
931  * Changes on the lisp based build system for parity with Ant
932  * Fixed interpreter creation in Java Scripting
933  * libabcl.so no longer created; it was solely about installing
934     a SIGINT handler. Libraries should not do that.
935  * boxing of LispObject descendants in JCALL/JCALL-RAW fixed
936  * OpenBSD and NetBSD platform detection
937  * fixed special bindings restores in compiled code for
938     MULTIPLE-VALUE-BIND/LET/LET*/PROGV and function bodies
939  * introduced variadic list() function to replace list1() ... list9()
940  * fix return value type of ACOS with complex argument
941  * fixed precision of multiplication of complex values
942  * fixed use of COMPILE inside file compilation (i.e. COMPILE-FILE)
943  * fix expansion of macros inside RESTART-CASE
944     (fixes RESTART-CASE ANSI failures)
945  * fix macroexpansion in the precompiler
946  * Fixnum and Bignum now use a static factory method;
947      constructors are now private -> increases chances of numbers
948      being EQ
949  * Code cleanup in EXPT to fix (EXPT <any-number> <Bignum>)
950
951
952Version 0.13.0
953==============
954(28 Feb, 2009)
955svn://common-lisp.net/project/armedbear/svn/tags/0.13.0/abcl
956
957 Summary of changes:
958 -------------------
959  * Separated J and ABCL into two trees
960  * Many many compiler code cleanups
961  * NetBeans project files
962  * Support for CDR6 (See http://cdr.eurolisp.org/document/6/)
963  * More efficient code emission in the compiler
964  * Ant build targets for testing (abcl.test)
965  * Use ConcurrentHashMap to store the lisp threads for increased performance
966  * Fix adjustability of expressly adjustable arrays (ticket #28)
967  * Fix calculation of upperbound on ASH in the compiler
968     (don't calculate numbers too big, instead, return '*')
969  * Introduce LispInteger as the super type of Bignum and Fixnum
970  * Boxing/unboxing for SingleFloat and DoubleFloat values,
971      inclusive of unboxed calculations
972  * Fixed URL decoding bug in loadCompiledFunction (use java.net.URLDecoder)
973  * Fixed line number counting
974  * Inlining of simple calculations (+/-/*)
975  * All static fields declared 'final'
976  * Add support for java.lang.Long based on Bignum to our FFI
977
978
Note: See TracBrowser for help on using the repository browser.