source: tags/1.0.0/abcl/CHANGES

Last change on this file was 13574, checked in by Mark Evenson, 13 years ago

New cycle of CHANGES for abcl-0.28.0.

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