source: tags/1.0.1/abcl/CHANGES

Last change on this file was 13735, checked in by Mark Evenson, 12 years ago

Don't include future features in CHANGES for point release.

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