source: tags/1.9.2/CHANGES

Last change on this file was 15715, checked in by Mark Evenson, 11 months ago

abcl-1.9.2: update CHANGES

  • Property svn:eol-style set to native
File size: 78.3 KB
Line 
1Version 1.9.2
2=============
3
4June 21, 2023
5
6
7<https://abcl.org/svn/tags/1.9.2/>
8<https://github.com/armedbear/abcl/>
9<https://gitlab.common-lisp.net/abcl/abcl/>
10
11* [r15712] JNA contrib has been updated to jna-5.13.0
12
13* [r15711] (Alan Ruttenberg) Restore most of the speed of the generic
14  function cache that was degraded with abcl-1.9.1
15
16* [r15709] (Alejandrozf) The ABCL-STEPPER contrib provides a
17  interpreted implementation of CL:STEP.
18
19* [r15692][r15701]-[r15707] Substantially re-worked the Gray Stream
20  implementation to fix many of its outstanding issues.
21
22* [r15700] Introduced the POSIX-SYSCALLS contrib which allows one to
23  set environment variables in the hosting JVM process.
24
25* [r15698] (Uthar) Fix GRAY-STREAMS:STREAM-ELEMENT-TYPE for binary
26  streams.
27
28* [r15689] (jpellegrini) Fix CL:LOG for behavior at zero.
29
30* [r15686] Extensive grouting of accumulated bitrot in the ASDF-JAR
31  contrib to enable more complete packaging of non-compilation
32  artifacts as well as systems residing in jar files.
33
34* [r15683] EXTENSION:REGISTER-ASDF adds a directory to ASDF by using
35  the configuration API.
36
37* [r15682] SYSTEM:ZIP now works with source in jar files.
38
39* [r15674] (Uthar) Augment JAVA:JNEW-RUNTIME-CLASS docstring.
40
41* [r15673] The outdated GNU Info version of User Manual has been
42  removed.  The GNU Info conversion was done by hand, and is neither
43  easily reproducible nor particually accurate at this point.
44
45* [r15672] Fix build under podman by qualify remote registry for
46  containerization base.
47
48
49
50Version 1.9.1
51=============
52
53February 23, 2023
54
55<https://abcl.org/svn/tags/1.9.1/>
56<https://github.com/armedbear/abcl/>
57<https://gitlab.common-lisp.net/abcl/abcl/>
58
59* [r15652] (Tarn W. Burton) Avoid NIL in simple LOOP from FORMAT
60  directives.
61
62* [r15651] Maven may now be used for building/testing ABCL.
63
64* [r15650] The build autoconfigure targets for openjdk17+ now add
65  necessary opens command line switches to enable the successful use
66  of CL+SSL via CFFI on such platforms.
67
68* [r15653][r15647] ABCL-ASDF:MAKE-LOCAL-MAVEN downloads a version of
69  Maven installed into the local XDG directory location and configures
70  its subsequent use in the current session.  ABCL-ASDF provides a
71  restart to invoke this installation if Maven can't be located at
72  runtime.
73
74* [r15644] (alejandrozf) fix compilation of a few TYPE-ERROR cases
75
76* [r15643][r15645] (oldk1331) Fix SYS:RUN-PROGRAM waiting problems
77
78* [r15639-40] (Alan) DEFMETHOD now accepts subtypes of MOP:SPECIALIZER
79  as a discriminator.
80
81* [r15636] Provide SETF'abl api for inspecting and modifying the
82  underlying JVM context classloader.
83
84* [r15635] Implement THREADS:GET-JAVA-THREAD
85
86* [r15633] Update openjdk versions ci installation automation to use
87  latest openjdk8, openjdk11, openjdk17, and openjdk19 binaries.
88
89* [r15632] ABCL-INTROSPECT properly scope reference to JavaStackFrame
90
91* [r15631] Update IDE build/debug artifacts to Netbeans 16
92
93* [r15630] (alejandrozf) Fix compilation of top-level lambda in
94  function position.
95
96* [r15628] (alejandrozf) Fix COMPILE-FILE-PATHNAME for Maxima.
97
98* [r15622-24] Use TLS for all http resource names.
99
100* [r15619] (alejandrozf) Accept KEYWORD as a package name when interning.
101
102* [r15617] Upgrade to jna-5.12.1.
103
104* [r15616] Enable compilation of wide indicies for ALOAD, ASTORE,
105  ILOAD, ISTORE, LLOAD, and LSTORE opcodes.
106
107* [r15610] Revisit strategy for use of virtual threads.  Native
108  threads are now the default.  The ability to spawn virtual threads
109  is indicated by the presence of :VIRTUAL-THREADS in CL:*FEATURES*.
110  Setting the special THREADS:*THREADING-MODEL* to :VIRTUAL results in
111  THREADS:MAKE-THREADS spawning virtual threads.
112
113* [r15609] Fix inspection of LispThread stack segments
114
115* [r15605] (Uthar) Implement array types for JNEW-RUNTIME-CLASS
116
117* [r15604] (Uthar) Implement superclass constructor chaining for
118  JNEW-RUNTIME-CLASS
119
120* [r15557] (Uthar) Fix class annotations on openjdk17 and newer
121
122* [r15596] (Alejandrozf) Implement proper use of signals to fallback
123  to the use of interpreted form for compilation results larger than
124  65535 bytes.  Fixes loading of Fricas0
125
126* [r15594] Update to asdf-3.3.6
127
128
129Version 1.9.0
130=============
131
132May 1, 2022
133
134<https://abcl.org/svn/tags/1.9.0/>
135<https://github.com/armedbear/abcl/>
136<https://gitlab.common-lisp.net/abcl/abcl/>
137
138* [r15572] (Jonathan Cunningham) Update reference to free version of
139  Rhode's Extensible Sequence paper
140
141* [r15571] (Alan Ruttenberg) JSS update to javaparser-3.24.2 Fix
142  tests, fix typo, lazily initialize via LOAD-JAVAPARSER on the first
143  use of the number argument version of the macro.
144
145* [r15570] (Uthar) Prevent JCLASS-SUPERCLASS from failing on names
146  (keywords) of classes generated by JNEW-RUNTIME-CLASS
147
148* [r15562] (Alan Ruttenberg) Add a restart for undefined functions
149
150* [r15561] Clarify call and lambda arguments limits somewhat
151
152* [r15560] (Alan Ruttenberg) Support for catch tags in SLIME
153
154* [r15559] (Alan Ruttenberg) Record source location for slot readers
155
156* [r15558] ABCL-INTROSPECT explictly home exported symbols in
157  ABCL-INTROSPECT/SYSTEM to identify machinery added to the SYSTEM
158  package after initial ANSI boot.
159
160* [r15549] (alejandrozf) Fix (coerce 'documentation 'function)
161
162* [r15548] (alejandrozf) Fill slots operation and operands with
163  DivisionByZero condition when it is raised
164 
165* [r15545] (alejandrozf) Update fill pointer when arrays are shrunk if
166  necessary.
167
168* [r15544] [r15543] (phoe) Use PUSHNEW for CL:*FEATURES*; place
169  :EXTENSIBLE-SEQUENCES in CL:*FEATURES* where appropiate
170
171* [r15542] (alejandrozf) Accessible symbols are always printed with
172  package prefix
173
174* [r15541] (alejandrozf) Improve DRIBBLE to save almost everything,
175  lexically closing over new REPLs, now cleanly closing/restarting
176
177* [r15494] When reading ZIP archives from streams, use modified date
178  of byte source.
179
180* [r15493] The implmentation now uses :NEWEST for the version of
181  references to EXT:JAR-PATHNAME objects which have been cached.
182
183* [r15492] Address inconsistency between populating entries in
184  EXT:JAR-PATHNAME.  A DIRECTORY should always be :ABSOLUTE in a
185  EXT:JAR-PATHNAME unless there is no name or type component.
186
187* [r15491] Fix ZipCache to use the file system modification date
188
189* [r15490] EXT:AS-JAR-PATHNAME-ARCHIVE returns reference to a
190  CL:PATHNAME as a EXT:JAR-PATHNAME
191
192* [r15489] DISABLE-ZIP-CACHE isn't currently working
193
194* [r15486] (Eric Timmons) Fix SYS:PROCESS-PID with SYS:RUN-PROGRAM
195
196* [r15483] Explictly scope all symbols in fasl loader
197
198* [r15481] Fix (or (unsigned-byte 8) (unsigned-byte 32)) vector reset
199
200* [r15480][r15484] (Robert Munyer) New algorithim for
201  COMPILE-FILE-PATHNAME
202
203* [r15479] ABCL-BUILD now tests with ant-1.10.9
204
205* [r15478] ZS3 fix allocation for non-simple (unsigned-byte 8) vectors
206
207* [r15538] (contrapunctus) needled to correct outdated HTML links
208
209* [r15537] [r15536] [r15535] [r15534] [r15533] [r15532] ABCL-BUILD
210  Correct deprecated JAVA-COMPILE-FILE, add file unit for top-level
211  targets, implement COPY-DIRECTORIES-RECURSIVELY utility, docstring
212  for exported ENSURE-MAVEN, clean compile errors, updateant URIs to
213  available versions
214
215* [r15527] JNA update to jna-5.9.0
216
217* [r15525] JSS fix introspecting abcl.jar under openjdk1[67]
218
219* [r15524] [r15520] Test released LTS Java editions for
220  openjdk{8,11,17} with Adoptium.
221
222* [r15523] (Scott Burson) Corrections to ENCODE-UNIVERSAL-TIME for
223  dates after 2037.
224
225* [r15521] Use java.lang.Integer.valueOf() rather than constructor
226
227* [r15519] (Samuel Hunter) Fix and standardize all error reader
228  functions.
229
230* [r15518] (Uthar) Remove confusing comment in example
231
232* [r15515] ASDF Fix JAR-PATHNAME loading systems
233  under Windows
234
235* [r15513] (alejandrozf) Fix generic lambda lists congruency with
236  keywords
237
238* [r15511] (Phil Eaton) Support variadic arguments with more required
239  parameters
240
241* [r15504] Allow JAVA:JCLASS to work with non-primtive arrays suffixed
242  with "[]"
243
244* [r15503] ABCL-AIO Fix finding ABCL-CONTRIB
245
246* [r15502] build: deprecate use of abcl.implementation.version
247
248* [r15501] (daewok) Uppercase arch before pushing it to *FEATURES*
249
250* [r15500] (Ferada) Fix printing of RANDOM-STATE
251
252* [r15496] Support use of Project Loom virtual threads.  When the
253  underlying JVM supports virtual threads, :VIRTUAL-THREADS will be
254  present in CL:*FEATURES*
255
256* [r15495] This release targets openjdk8, openjdk11, and openjdk17
257
258
259Version 1.8.0
260=============
261
262October 29, 2020
263
264<https://abcl.org/svn/tags/1.8.0/>
265<https://github.com/armedbear/abcl/>
266<https://gitlab.common-lisp.net/abcl/abcl/>
267
268Features
269--------
270
271* [r15390-r15406][r15408-r15413][r15422-r15425][r15434-r15458][r15460-15463]
272  Overhauled JAR-PATHNAME and URL-PATHNAME subtypes of PATHNAME to fully support
273  recursive addressing of zip within both local and remote zip
274  archives.
275
276Incompatibilities
277-----------------
278
279* [r15414] Change algorithm for determining pathname type from
280  parsing namestrings to be more like SBCL and CCL
281
282     | Expression | NAME   | TYPE |
283     |------------+--------+------|
284     | #p"..."    | ".."   | ""   |
285     | #p".foo"   | ".foo" | NIL  |
286
287Enhancements
288------------
289
290* [r15378][r15421] Support openjdk15
291
292* [r15360-r15365] (Alessio) Serialization of top-level, named functions.
293
294* [r15353] JAVA:JCLASS now works on all arrays of primitive type.
295
296* [r15356] ABCL-INTROSPECT adds EXT:READ-CLASS to conveniently read
297  java class bytes from the source referenced by a PATHNAME.
298
299* [r15366] The compiler now properly emits make-array for top-level specialized
300  vector forms.
301
302* [r15367] Loading ABCL-INTROSPECT now adds the function
303  EXT:STREAM-UNIX-FD which returns the integer of the underlying file
304  descriptor from a socket stream reference.
305
306* [r15368] Less cryptic warnings for ignored socket write timeout.
307
308* [r15381] JNEW-ARRAY-FROM-ARRAY now capable of constructing all
309  possible arrays of primitive type.
310
311
312Fixes
313-----
314
315* [r15359] Fix running openjdk11 compilation on openjdk8.
316
317* [r15358] Fix SYS:RUN-PROGRAM issues with openjdk11.
318
319* [r15357] Re-work strategy for the denotation of the hosting runtime
320  platform in CL:*FEATURES* to include a "JAVA-<n>" where "<n>" is an
321  integer denoting the major version of the platform according to
322  JEP-223.
323
324* [r15351][r15352] For CL:MAKE-ARRAY, ensure :NIO-BUFFER argument
325  works in all cases, fix :NIO-DIRECT for (unsigned-byte 16)
326  specialized arrays.
327
328* [r15369][r15376] Fix wildcard matching to work on pathnames
329  consisting of only #\* characters.
330
331* [r15377] (Daniel Kochmański) Fix loop destructuring problems.
332
333* [r15379] Fix VECTOR-PUSH-EXTEND for (UNSIGNED-BYTE 8).
334
335* [r15427] Define CALL-NEXT-METHOD and NEXT-METHOD-P as local functions.
336
337* [r15386] Make the pre-compiler be more careful in optimizing lambdas.
338
339* [r15388] Ensure that SYS:CHECK-REDEFINITION does not signal error
340  conditions.
341
342* [r15387] Fix FILE-POSITION by resetting file charset decoder before
343  conversion.
344
345* [r15383] Fix capacity allocation for arrays specialized on
346
347         (or (unsigned-byte 16)
348             (unsigned-byte 32))
349
350  created via an CL:MAKE-ARRAY :NIO-BUFFER argument.
351
352
353Contrib
354-------
355
356* [r15420] Use jna-5.6.0.
357
358* [r15384] quicklisp-abcl attempts to remove all Quicklisp fasls on
359  failure to load.
360
361* ASDF-JAR loading compiled fasls stored in JAR archives
362  now works again.
363
364
365Build
366-----
367
368* [r15426] Ensure that we construct the manual with a proper version.
369
370* [r15407] Building and running a local ABCL hopefully does more of
371  what you mean.
372
373
374Tests
375-----
376
377* [r15416] The default reporting via abcl/test/lisp/parse-ansi-tests is
378  for compiled tests.
379
380* [r15385] Travis CI now uses versions of STATIC-VECTORS, CL+SSL, and
381  CFFI from Quicklisp.  Overhaul ABCL-PROVE system definition
382  explicitly enumerating tests for more deterministic behavior.
383
384* [r15382] Test usage of :NIO-BUFFER keyword in CL:MAKE-ARRAY.
385
386* [r15380] Tests for creating primitive java arrays.
387
388
389Version 1.7.1
390=============
391
392July 18, 2020
393
394<https://abcl.org/svn/tags/1.7.1/>
395<https://github.com/armedbear/abcl/>
396<https://gitlab.common-lisp.net/abcl/abcl/>
397
398Fixes
399-----
400
401* [r15337] Fix ELT on vectors specialized on (unsigned-byte 32)
402
403* [r15327] Restore svref optimizations for SIMPLE-VECTOR sorts
404
405* [r15326] Fix sorting vectors of length 0
406
407
408
409Version 1.7.0
410=============
411June 3, 2020
412
413<https://abcl.org/svn/tags/1.7.0/>
414<https://github.com/armedbear/abcl/commit/91f7561840ee5ded6f35922119ed7dc8442747cd>
415<https://gitlab.common-lisp.net/abcl/abcl/-/commit/799cfb697d20652e06ffa760f07288823424cf2f>
416
417The implementation now runs on the openjdk6, openjdk7, openjdk8,
418openjdk11, openjdk13, and openjdk14 JVM runtimes.
419
420
421Enhancements
422------------
423
424* [r15305][r15306][r15307] The :NIO symbol is now present in
425  CL:*FEATURES*, denoting the use of java.nio.ByteBuffer et. al. in
426  the implementation of arrays specialized on commonly used unsigned
427  byte-types.  CL:MAKE-ARRAY now has the :NIO-BUFFER and :NIO-DIRECT
428  keyword arguments useful in the construction of such arrays.
429
430* [r15280][r15283] The default implementation for CL:DISASSEMBLE has
431  been switched from jad to javap.  The SYS:CHOOSE-ASSEMBLER interface
432  is now able to switch between the jad, javap, fernflower, Procyon,
433  and CFR backends provided as loaded ASDF definitions contained in
434  the ABCL-INTROSPECT contrib.
435
436* [r15268] ABCL-BUILD:DIRECTORY-HASHES outputs the SHA256 hashes of files in
437  a directory.
438
439* [r15282] The ABCL-INTROSPECT contrib now adds the EXT:WRITE-CLASS method
440  to write the bytecode representation of a Java class to disk.
441
442* [r15293] The Dockerfile has been updated to use openjdk11
443
444
445Fixes
446-----
447
448* [r15292] Fixed all known outstanding problems with DECODE-FLOAT for
449  values less than normalized floats.
450
451* [r15287] Attempts to fill specialized 32-bit arrays with elements
452   greater than 2^32-1 now properly signals a type error.
453     
454* [r15267] ABCL-BUILD:ANT/CALL no longer signals an error on failure
455  instead reporting associated error messages.
456
457* [r15281] Autoconfiguration for builds on supported platforms extended.
458
459* [r15290] The invocation of CL-BENCH now utilizes its ASDF definition.
460
461* [r15294][r15298] The contents of the <file:ci/> directory are now
462  included in the source release, and have had all mention of
463  TRAVIS_BUILD_DIR removed decoupling their use from the presence of
464  Travis.
465
466Tests
467-----
468
469* [r15277] (pdietz) Additional tests for compiler failures.
470
471* [r15278][r15279] (phoe) Added tests for unbound slots
472  DIVISION-BY-ZERO has ARITHMETIC-ERROR-OPERANDS.
473
474* [r15284][r15285][r15288] The CI now tests the ability to use OpenSSL
475  via CL+SSL.
476
477* [r15289] The CI now tests the version CFFI with
478  CFFI-SYS:MAKE-SHAREABLE-BYTE-VECTOR implemented.
479
480* [r15291] The CI now tests IRONCLAD.
481
482
483
484Version 1.6.1
485=============
486April 24, 2020
487
488<https://abcl.org/svn/tags/1.6.1/>
489<https://abcl.org/trac/changeset/15270>
490<https://github.com/armedbear/abcl/commit/cef85a7f5573733d08117f04295a744f9f986c6a>
491<https://gitlab.common-lisp.net/abcl/abcl/-/commit/1d237263a7a0cda49bf1b21a8cd586642aca99e4>
492
493Enhancements
494------------
495
496* [r15223] Fix compiler for java.lang.VerifyError with PROGN
497  (somewhat-functional-programmer)
498
499* [r15250] ABCL now builds and runs across openjdk{6,7,8,11,13,14}
500
501* [r15256] Build autoconfiguration via ci/create-build-properties.bash
502
503* [r15252] Provide accessor in URL-STREAM for underlying java.io.InputStream
504
505* [r15226] [INCOMPLETE] Address problems with DECODE-FLOAT
506  (Robert Dodier)
507
508
509Fixes
510-----
511
512* [r15229] Maven central repository now requires TLS
513
514* [r15242] jstatic: check narrowing for explicit method reference
515
516* [r15232] [r15233] [r15241] Reworking DWIM on java call sites
517
518   The FFI will now find Java call sites whose types are Short or Byte
519   with integers if they can be narrowed without losing information.
520   This work should be considered provisional, subject to possible
521   revision.
522
523* [r15234] Fix calling Java methods with varargs parameters
524
525* [r15233] Fix calling Java methods with short and byte parameters
526
527* [r15231] abcl-build: test the install of maven-3.6.3
528
529* [r15238] build: ensure javac compiles with UTF-8 encoding
530
531* [r15243] abcl-asdf: rework Maven usage strategy
532
533* [r15245] abcl-asdf: use WITH-AETHER macro to ensure Maven Aether is loaded
534
535* [r15251] abcl-asdf:  assume that either 'which' or 'where' works
536
537Updates
538-------
539
540* [r15240] Use ASDF-3.3.4
541
542
543Tests
544-----
545
546* [r15239] ci: now use latest CFFI distributed with Quicklisp
547
548* [r15247] t/format-dollar: correction for CL:FORMAT dollar usage
549
550* [r15248] t/jcoerce-numerics: JCOERCE across numerics without losing information
551
552* [r15249] t/decode-float: tests for currently broken handling of CL:DECODE-FLOAT
553
554
555Version 1.6.0
556=============
557November 22, 2019
558
559<https://abcl.org/svn/tags/1.6.0>
560
561Compatiblity
562------------
563
564ABCL 1.6.0 supports building and running on openjdk6, openjdk7,
565openjdk8, and openjdk11.
566
567Enhancements
568-----------
569
570* [r15085] Add a restart for generics defined over functions or macros
571  when arguments don't match (Alan).
572
573* [r15086] jss: Disambiguate java class lookup in dynamic scope
574  (Alan).
575
576* [r15087] jss: Optimizations for jss field accessors (Alan).
577
578* [r15089] [r15090] jss: JSS:TO-HASHSET converts java.util.List
579  references to java.util.Hashset (Alan).
580
581* [r15091] jss: Improve JSS:J2LIST, add JSS:JMAP (Olof).
582
583* [r15092] Make JVM class names more intelligible (Olof).
584
585* [r15093] abcl-asdf: Support multiple Maven repositories (Olof).
586
587* [r15101] [r15102] [r15103] abcl-asdf: add test cases for multiple
588  repositories (Olof).
589
590* [r15095] Define undefined conditions and handler functions following
591  error-fun='error pattern (Alan).
592
593* [r15105] jss: make use of warning muffling (Olof).
594
595* [r15133] [r15134] Support building and running in openjdk11.
596
597* [r15142] Signal better error for out-of-bounds CL:REPLACE (Olof).
598
599* [r15148] docker: use the now standardized openjdk8 container,
600  install ant and maven dependencies.
601
602Fixes
603-----
604
605* [r15096] Fix and check array types for JSS:JMAP/J2LIST (Olof).
606
607* [r15097] abcl-asdf: compatiblity with maven-3.5.0.
608
609* [r15099] Export the JVM:*RESIGNAL-COMPILER-WARNINGS* interface.
610
611* [r15100] Fix ASDF usage of MVN module (Olof).
612
613* [r15107] Fix translate-directory-components-aux: throw takes 2
614  arguments (metawilm).
615
616* [r15114] Intern SYSTEM:AVAILABLE-ENCODINGS symbols (Robert Dodier).
617
618* [r15115] abcl-asdf: fix ABCL-ASDF:MVN-MODULE collect request (Alan).
619
620* [r15116] Fix CL:PRINT-OBJECT of null pointer (Alan).
621
622* [r15117] The compiled version of JSS:INVOKE-RESTARGS was evaluating
623  the first argument twice (Alan).
624
625* [r15118] abcl-asdf: stop complaining about not loading a file named
626  the module name (Alan).
627
628* [r15120] Don't evaluate format control string in ReaderError (Javier
629  Olaechea).
630
631* [r15124] Fix monetary floating-point formatted output (Scott
632  Burson).
633
634* [r15125] Stackframe head edge case fix (Alan).
635
636* [r15137] Fix ANSI-TESTS GENSYM.ERROR.10 and GENSYM.ERROR.11 (Douglas
637    Miles).
638
639* [r15138] Fix ANSI-TEST MAKE-CONCATENATED-STREAM.30 failure (Douglas
640    Miles).
641
642* [r15139] Fix ANSI-TESTS FILE-POSITION.10 (Douglas Miles).
643
644* [r15141] compiler: fix stack inconsistency errors
645  (somewhat-functional-programmer).
646
647* [r15143] Check for element type before filling vectors (Olof).
648
649* [r15144] Fix high start index for CL:SUBSEQ (Olof).
650
651* [r15146] JSS read sharp expression bugfixes (Alan).
652
653* [r15149] jss: explicitly scope JSS:TO-HASHSET.
654
655Updates
656-------
657
658* ASDF 3.3.3
659
660* JNA 5.5.0
661
662
663Version 1.5.0
664=============
665June 11, 2017
666
667Enhancements
668------------
669
670* [r14934] ABCL-INTROSPECT a contrib for accessing ABCL compiler
671  information (Alan).
672
673* [r14907] ABCL-AIO all-in-one jar target creates dist/abcl-aio.jar (Alan).
674
675* [r15009] Rework ABCL-BUILD as a contrib which uses UIOP machinery to
676  invoke Ant on <file:build.xml>, unifying all build mechanisms to a single
677  prescriptive source artifact external to Common-Lisp.
678
679* [r14911] [r14955] [r14914]  Source recording on SYS:SOURCE plist
680  PRECOMPILER possibly beta reduce form with function
681  position lambda, record arglist during Build
682
683* [r14912] [r14922] Re-write the ASDF descriptions using secondary systems
684
685* [r14917] build: 'abcl.clean.application.fasls' now cleans only ABCL fasls
686
687* [r14923] Added Dockerfile to package ABCL in Docker
688
689* [r14927] Build add ability to download Maven from Ant
690
691* [r14931] Bless EXT:GET-PID as the offical way to get process id
692
693* [r14947] JSS syntax for access Java fields (Alan)
694
695* [r14962] JSS:J2LIST as a convenience method for turning "anything"
696  in Java to an appropriate Lisp list.
697
698* [r14967] (Provisional) ABCL-ASDF JDK-JAR ASDF class to describe JDK
699  path locations (Alan).
700
701* [r14969] Add QUICKLISP-ABCL:*QUICKLISP-PARENT-DIR* special (Alan).
702
703* [r14978] Implement MAKE-LOAD-FORM for Java fields (Alan).
704
705* [r15013] Restore the ability SYSTEM:CHOOSE-ASSEMBLER to use Objectweb
706
707* [r15018] Enable use of MVN-MODULE in ASDF definitions (Alan).
708
709* [r15019] Add NAMED-READTABLES from <​https://github.com/melisgl/named-readtables>
710
711* [r15062] ABCL-INTROSPECT 'javaparser.asd' definition adds a
712  SHARPSIGN-ONE-QUOTATION_MARK macro to evaluate arbitrary Java expressions
713
714
715Fixes
716-----
717
718* [r14902] Fix CL:OPEN for :DIRECTION :INPUT (pipping)
719
720* [r14903] JNEW-RUNTIME-CLASS Make static functions and :int
721  parameters work.  Fix return conversion for null.  Ensure that the
722  same classloader is used (olof).
723
724* [r14905] ABCL-ASDF uses the value of the reported Maven home to look
725  for libraries, fixing loading CFFI under FreeBSD 11-RELEASE.
726
727* [r14906] JSS:LOOKUP-CLASSNAME would return allcaps class name if not
728  found (alan).
729
730* [r14909] QUICKLISP-ABCL simplify load/compile logic.
731
732* [r14918] JAVA Remove generic Throwable handler from JAVA:JFIELD innards
733
734* [r14919] ABCL-ASDF fix finding Maven on Fedora
735
736* [r14926] ABCL-ASDF fix problems with test suite's reliance on PROVE
737
738* [r14921] CL:DIRECTORY no longer errors on files containing asterisk characters
739
740* [r14950] Fix restart calculation for compiled closures (Alan)
741
742* [r14952] Guard printing of large Java objects (Alan)
743
744* [r14953] Fix debugging frames which don't have a pathname (Alan)
745
746* [r14956] Show function documentation in describe (Alan)
747
748* [r14966] JAVA:CHAIN returns last value of computation (Alan)
749
750* [r14973] ABCL-ASDF probes for "mvn" and "mvn.cmd" under Windows
751
752* [r14974] Standardize the use of CL:*LOAD-VERBOSE* to control loading
753  verbosity.
754
755* [r14976] Fix CL:GET-OUTPUT-STREAM-STRING to reset underlying buffer
756
757* [r14979] Fix JavaObject.getParts() for Java arrays (Alan).
758
759* [r14980] Fix SETF for EXT:URL-PATHNAME-FRAGMENT
760
761* [r14987] Fix CL:MAKE-PATHNAME for explicitly nil HOST
762
763* [r14996] Correctly implement 'time-of-the-time' daylight savings
764  semantics (Scott).
765
766* [r15001] Fix signalling simple error with #\~ in CL:FORMAT string
767  (Alan).
768
769* [r15002] Fix problems with SHARED-INITIALIZE (Olof).
770
771* [r15003] Fix ENSURE-GENERIC-FUNCTION when removing definition (Olof).
772
773* [r15004] Fix DESTRUCTURING-BIND with &rest arguments (Olof)
774
775* [r15024] Optimise LOGCOUNT (Olof).
776
777* [r15026] Support bignum argument for FILE-POSITION (Olof).
778
779* [r15032] Better directory validation; handle :UNSPECIFIC (Olof).
780
781* [r15033] Fix LOOP code size estimation (Olof).
782
783* [r15034] Fix NTH inlining type mismatch (Olof).
784
785* [r15035] Fix byte code verification error in edge case (Olof).
786
787* [r15036] Fix PACKAGE-ERROR-PACKAGE behaviour (Olof).
788
789* [r15037] Fix MAX type derivation (Olof).
790
791* [r15038] Fix NPE if directory can't be accessed (Olof).
792
793* [r15044] Documentation renders less/greater-than characters correctly (Olof).
794
795
796Updates
797-------
798
799* ASDF 3.2.1
800
801
802Version 1.4.0
803=============
80408-OCT-2016
805
806<https://abcl.org/svn/tags/1.4.0/>
807<https://abcl.org/trac/changeset/14888>
808
809Enhancements
810============
811
812* Consolidated RUN-PROGRAM fixes (ferada, pipping)
813
814  In support of getting a more universal UIOP:RUN-PROGAM across all
815  contemporary Lisp implementations.
816
817* Upstream consolidated patchset (ferada)
818
819** [r14857] Support `FILE-POSITION` on string streams.
820** [r14859] Add multiple disassembler selector.
821** [r14860] Add EXTERNAL-ONLY option to APROPOS.
822** [r14861] Fix nested classes from JARs not visible with JSS.
823
824* [r14840-2] (Scott L. Burson) Introduced "time of time" semantics for
825  {encode,decode}-universal time.
826
827* EXTENSIONS:MAKE-TEMP-FILE now takes keyword arguments to
828  specify values of the prefix and suffix strings to the underlying
829  JVM implementation of java.io.File.createTempFile().
830
831* [r14849] EXT:OS-{UNIX,WINDOWS}-P now provide a pre-ASDF runtime check on hosting platform
832
833Fixes
834-----
835
836* [r14863] RandomCharacterFile (vibhu)
837
838* [r14839] (JSS) Ensure the interpolation of Java symbol names as strings (alan ruttenberg)
839
840* [r14889] Fix ANSI-TEST SXHASH.8 (dmiles)
841
842Updates
843------
844
845* [r14883] asdf-3.1.7.27
846
847* [r14849] jna-4.2.2
848
849Removed
850-------
851
852* [r14885] ASDF-INSTALL was removed
853
854
855Version 1.3.3
856=============
85718-SEP-2015
858
859<https://abcl.org/svn/tags/1.3.3/>
860
861
862Enhancements
863------------
864
865*  [r14802,r14813] Add character name for non-breaking space
866
867   Use a human readable name for character 160, #\No-break_space,
868   following sbcl, ccl and clisp. This permits the Quicklisp system
869   spinneret to load.  The #\No-break_space name is a valid
870   CHAR-NAME/NAME-CHAR pair, but is not emitted as a glyph under the
871   current output encoding under the CL:FORMAT "~:c" directive as
872   these implementations do by default.
873
874   Thanks to Javier Olaechea.
875
876Fixes
877-----
878
879* [r14808] CL:FILE-WRITE-DATE fixed for logical pathnames
880
881* ANSI-TEST
882
883** Update references to new git repository at
884   <git+https://gitlab.common-lisp.net/ansi-test/ansi-test.git>
885
886** ABCL now runs the git master consolidated ANSI-TEST suite which
887   features subdirectories and distinquished value for
888   *DEFAULT-PATHNAME-DEFAULTS*.
889
890** ABCL.TEST.ANSI:CLEAN-TESTS now acts recursively via appropiate
891   Pathname wildcards to match new directory structure.
892
893* ASDF
894
895  Fix COMPILE-SYSTEM to offer full ANSI environment for ASDF and
896  ABCL-CONTRIB.
897
898* ABCL-ASDF
899
900** Use of Maven has been robustified.
901
902*** [r14803] Fix usage with all known versions through maven-3.3.3
903
904   Addresses <http://abcl.org/trac/ticket/390>.
905
906*** [r14806] Fix usage with specifying local Maven repository
907
908** More complete attempt at re-initialization via
909
910        (ABCL-ASDF:INIT :force t)
911
912
913Version 1.3.2
914=============
91519-APR-2015
916
917<https://abcl.org/svn/tags/1.3.2/>
918
919
920Enhancements
921------------
922
923* Make result of DEFINE-MODIFY-MACRO available at compilation time
924  [r14727]
925
926
927Fixes
928-----
929* Fix failed AVER [#289] [r14763]
930
931* Fix incorrect dead code elimination
932
933  Additionally, don't recurse into flet/labels upon elimination of a
934  single labels function; simply continue by changing the applicable
935  set.  Reported by Vibhu Mohindra. [r14754][r14756]
936
937* Numeric tower repairs on promoting floats across representation
938  boundaries [r14749-50] (Massimiliano Ghilardi).
939
940* Return SIMPLE-ERROR for invalid external-format arguments.[r14735]
941
942* Lisp stack frame representation now formatted as unreadable. [r14738-9]
943
944Contrib
945-------
946
947* JSS
948
949** Fix GET-JAVA-FIELD and SET-JAVA-FIELD [r14718]
950
951** no longer error on NO-SUCH-JAVA-FIELD, by setting fields as
952   accessible where necessary [r14715] [r14725]
953
954* ABCL-ASDF
955
956** Update to current Maven support (keep up with changing APIs through
957   the Maven 3.2.3-3.2.5 hysteresis) [r14742-7] (Cyrus Hamon).
958
959** Special-case JNA artifacts with alternate network location [r14733]
960
961** Further work on ABCL-ASDF:RESOLVE [r14732] (Cyrus Hamon)
962
963** Find Maven under FreeBSD ports [r14723], under OS X Homebrew [r14776]
964
965
966* ABCL-JAR
967
968** Fix ASDF-JAR:PACKAGE [#376] [r14717][r14720][r14736] (Eduardo Bellani)
969
970*  ASDF
971
972** Updated to version 3.1.4.
973
974
975Version 1.3.1
976=============
97730-APR-2014
978
979<https://abcl.org/svn/tags/1.3.1/>
980
981## Fixed
982
983*  The underlying Java Function Interface (JFI) now converts CL:T and
984   CL:NIL to JAVA:+TRUE+ and JAVA:+FALSE+.  Users who wish to
985   reference a JAVA:+NULL+ should do so explicitly.
986   <http://abcl.org/trac/changeset/14694>
987
988*  Make JCALL work in more places.  Thanks to Olof-Joachim Frahm.
989   <http://abcl.org/trac/changeset/14683>
990
991*  Interpolate CL:SLEEP and THREADS:OBJECT-WAIT for timeouts below the
992   Planck timer ("1ns") to a nanosecond.
993   <http://abcl.org/trac/changeset/14679>
994
995*  Update to ASDF 3.1.0.103.
996   <http://abcl.org/trac/changeset/14661>
997
998   Fixes loading of Ironclad and other Quicklisp systems.
999
1000*  Fix Uniform Naming Convention (aka "UNC" or "network") paths under Windows.
1001   <http://abcl.org/trac/changeset/14659>
1002
1003   DIRECTORY now works again on UNC paths.
1004
1005   UNC paths may be either specified with either back slash (#\\) or
1006   forward slash (#\/) doubled as the first character in a Pathname
1007   namestring.
1008
1009   The patterns in
1010
1011        //<server>/<share>/[directories-and-files]
1012
1013   are parsed as
1014
1015    <server> is stored as HOST.
1016
1017    <share> is stored as DEVICE.
1018
1019    [directories-and-files] gets parsed as per the normal rules under
1020    Windows.
1021
1022   Mixing namestrings with both backslash and slash characters can
1023   lead to unpredictable results.  It is recommended not to use
1024   backslash characters in namestrings if it can be avoided.  The
1025   pathname printed representation is always normalized to using
1026   forward slash delimiters.
1027
1028
1029*  Find contrib based on system jar name.
1030   <http://abcl.org/trac/changeset/14657>
1031
1032   From Olof-Joachim Frahm.
1033
1034
1035Version 1.3.0
1036=============
103715-MAR-2014
1038
1039<https://abcl.org/svn/tags/1.3.0/>
1040
1041
1042## Features
1043
1044*  Make LispStackFrame.UNAVAILABLE_ARG a singleton object,
1045   and lazily create the little used portions of the Lisp stack.
1046
1047    Aggressively cache and control the use of memory by the underlying
1048    Lisp stack frame representation by introducing the private
1049    LispThread.StackFrame and LispThread.StackSegments classes.
1050
1051    Contributed by Dmitry Nadezhin.
1052
1053    LispStackFrame object are allocated on every
1054    LispThread.execute(...) .  However, they are seldom [accessed]
1055    ([... verify via] inspect[tion of the] stack trace). This patch
1056    delays allocation of LispStackFrame? objects until they are
1057    requested.  Raw information about stack frames is stored in
1058    stack. Stack is an Object[] array (more precisely a list of [...]4
1059    [Mib] Object[] arrays).
1060
1061    ME: We are going to need a way to try to less agressively grab 4Mib
1062    chunks in low memory situations.
1063
1064    Memory profiling of ABCL shows that the classes with largest
1065    allocation count are org.armedbear.lisp.LispStackFrame and
1066    org.armedbear.lisp.LispStackFrame.UnavailableArgument.
1067
1068    Contributed by Dmitry Nadezhin.
1069
1070    [r14572]: http://abcl.org/trac/changeset/14572
1071    [r14579]: http://abcl.org/trac/changeset/14579
1072
1073*  ASDF 3.0.1.94 shipped with the implementation
1074
1075*  per function call stack and memory exception handler in CL:COMPILE
1076
1077   Inline calls to jrun-exception-protected (used by handler-bind to
1078   catch out of memory conditions).  This commit saves generation
1079   roughly 50 cls files.
1080
1081   [r14552]: http://abcl.org/trac/changeset/14552
1082
1083*  SYS:SHA256 audited
1084
1085    The functionality if the SYS:SHA256 algorithim has been audited for
1086    use on inputs of single for files with recently shipping ORCL Java 7
1087    implementations (through jdk-1.7.0_51).
1088
1089    [r14582]:  http://abcl.org/trac/changeset/14582
1090
1091* Connect to NetBeans controlled JDWP via SLIME
1092
1093    The Netbeans IDE configuration now includes a way to connect to
1094    the running-under-jdb ABCL via SLIME.  One needs a version of
1095    SLIME able to be loaded from its 'swank.asd' definition. 
1096
1097* Install 'abcl.jar' and 'abcl-contrib.jar' locally as Maven artifacts
1098
1099    The Ant `abcl.mvn.install` target now installs build artifacts
1100    into the local Maven repository (Olof-Joachim Frahm)
1101
1102    [r14579]: http://abcl.org/trac/changeset/14606
1103
1104## Compatibility
1105
1106*  CL:DIRECTORY
1107
1108   The implementation specific :RESOLVE-SYMLINKS argument to the ANSI
1109   DIRECTORY function has been changed to nil.  This implements
1110   behavior closer to SBCL and guarantees that a DIRECTORY operation
1111   will not signal a file error.
1112
1113   [r14619]: http://abcl.org/trac/changeset/14619
1114   [ticket-340]: http://abcl.org/trac/ticket/340
1115
1116## Fixes
1117
1118*  Fix CL:SLEEP for intervals less than a millisecond. 
1119
1120   For intervals less than or equal to a nanosecond, including an
1121   interval of zero, the current thread merely yields execution to
1122   other threads.
1123
1124   [r14632]: http://abcl.org/trac/changeset/14632
1125
1126
1127## Tested
1128
1129### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.7.0_51-b13" "x86_64-Mac_OS_X-10.9.1"
1130
1131### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.8.0-b129" "x86_64-Mac_OS_X-10.9.2"
1132
1133## Contrib
1134
1135#### abcl-asdf
1136
1137*  Now working with both Maven 3.0.x and 3.1.x.  Thanks to Anton for
1138   the help!
1139
1140   [ticket-328]: http://abcl.org/trac/ticket/328
1141
1142*  cache Maven dependency resolution to avoid repeated lookups.
1143
1144   Instead of calling ABCL-ASDF:RESOLVE in both the ASDF COMPILE-OP
1145   and LOAD-OP, we now cache the result of invocation in COMPILE-OP
1146   and add this value in the LOAD-OP phase. Contributed by Cyrus
1147   Harmon.
1148
1149   [r14631]: http://abcl.org/trac/changeset/14631
1150
1151#### jna
1152 
1153   Now references jna-4.0.0.  Some incompatibility with CFFI ([in
1154   progress with fixing upstream][cffi-easye]).
1155
1156[cffi-easye]: http://github.com/easye/cffi/
1157
1158
1159Version 1.2.1
1160=============
116127-JUN-2013
1162
1163<http//abcl.org/svn/tags/1.2.1/abcl/CHANGES>
1164<http://abcl.org/releases/1.2.1>
1165
1166*  Tested:  orcl-jdk-1.7.0_25 orcl-jdk-1.6.0_43
1167
1168** ansi tests rc-2 failing 11-13 of 21708 total. 
1169   Some regressions since 1.1.1
1170
1171*  Stablility fixes; additional Quicklisp compatibility
1172
1173** Fix (make-instance 'standard-generic-function)
1174
1175
1176Version 1.2.0
1177=============
117801-JUN-2013
1179
1180<https://abcl.org/svn/tags/1.2.0/>
1181<https//abcl.org/svn/tags/1.2.0/abcl/CHANGES>
1182
1183
1184Released at ECLM 2013 Madrid, ES // 01 June 2013
1185
1186   * Package local nicknames to behave like SBCL
1187
1188   * ASDF 3.0.1 is now shipped with the implementation
1189
1190   * a more robust MOP implementation
1191
1192   * Common cases of creating purely synthetic JAVA:JNEW-RUNTIME-CLASS
1193     now (mostly) work.  Please report corner cases for fixing.
1194
1195   * the system autoloader has been extended to cover functions bound to
1196     symbol properties
1197
1198
1199
1200Version 1.1.1
1201=============
120214-FEB-2013
1203
1204<https://abcl.org/svn/tags/abcl/1.1.1/CHANGES>
1205
1206
1207  * All reported errors with the MOP implementation have been addressed.
1208
1209  * An autoloader for SETF expansion functions has been implemented,
1210    eliminating the errors associated with not being able to use (SETF
1211    SYMBOL) without first invoking SYMBOL as a function. [#266
1212
1213  * All outstanding regressions in the ANSI test suite with respect to
1214    abcl-1.0.1 have been fixed.
1215 
1216  * The ability to resolve Maven components in ASDF system definitions has been restored.
1217
1218Issues Resolved
1219---------------
1220
1221[#266]  PSETF.47 ANSI regression 
1222[#284]  checks in ensure-generic-function-using-class should occur later
1223[#296]  SLIME fails to initialize with (SETF DOCUMENTATION) undefined   
1224[#198]  Hunchentoot run failure   
1225[#228]  Need to implement autoloader facility for SETF functions
1226[#288]  Control character names   
1227[#290]  Compiling (defvar *foo* '(quote . x)) throws an error
1228[#293]  Loop and default value for of-type problem 
1229[#294]  Reader doesn't recognize terminating characters in some cases
1230[#299]  ABCL-ASDF:MVN components not loading
1231
1232Version 1.1.0
1233=============
123407-DEC-2012
1235
1236<https://abcl.org/svn/tags/1.1.0/abcl/>
1237
1238
1239Features
1240--------
1241
1242  *  A functioning (A)MOP implementation through the hard work of Rudi
1243     Schlatte (@rudi)
1244
1245  *  The implementation can be used across many more Quicklisp systems
1246     through a process of extensive testing.  Thanks @xach!
1247
1248     Nota bene: all of the following systems need patches to work as
1249     of the 2012-10-13 Quicklisp.  All patches have been accepted in
1250     at least an initial form by the upstream maintainers.
1251
1252     ** CLOSER-MOP
1253        Quite possible with local patches
1254     ** CFFI
1255       Needs patches to 2012-10-13 Quicklisp.  [!!?]
1256       *** Dynamic interfaces idempotent across process -- no more reloading
1257     ** HUNCHENTOOT
1258       *** some bugs with underlying streams to be fixed in abcl-1.2-dev
1259     ** CXML
1260        Basic XML parsing works.  XPath still borked. [???]     
1261  *  Java 5 bytecode Compiler
1262
1263     The internal Lisp-to-Java bytecode compiler has been hardened by
1264     regression testing across Quicklisp libraries. 
1265
1266     **  Extensive interpreter/compiler bug fixes due to access to cl-test-suite [???] @antov
1267     ** large objects (?!?)
1268
1269  *  The facility to construct runtime classes via JNEW-RUNTIME-CLASS (@astalla)
1270
1271    Pretty close to full coverage of primtives for creating synthethic
1272    java classes at runtime.  Easy to extend with your needs; sensible
1273    defaults.
1274 
1275    ** Fields
1276    *** getter/setters
1277    ** Annotations
1278
1279
1280  * ASDF
1281
1282     ** Stock ASDF-2.26.6 which includes #+abcl conditional patches
1283        for the URL-PATHAME and JAR-PATHNAME implementation extensions
1284        to ANSI.
1285
1286  *  ABCL-CONTRIB
1287
1288     ** ABCL-ASDF
1289
1290        Network installation of binary artifacts named by Maven POM uris.
1291
1292        *** checks at runtime if a given class is present in the
1293            accessible classloaders
1294
1295        *** If the check for the presence of a class fails, find a
1296            maven-3.0.4 binary locally, execute its Aether connector
1297            to retrieve its transitive dependencies from the network.
1298
1299      ** JSS
1300         
1301         Java Syntax Sucks.  q.v [lsw2]
1302   
1303         Extensive bugfixing wrt. method resolution [#229]
1304
1305      ** JFLI
1306
1307         A "captured from the wild" version of what @rich.hickey did before Clojure.
1308       
1309Changes
1310-------
1311
1312  * [#249] PATHNAME merge semantics DWIMs on an inferred type
1313
1314  Extends ANSI PATHNAME in a non-conforming manner, which was probably
1315  already the case.
1316
1317  * [r13695] Reimplementation of global symbol macros to avoid using
1318    the symbol's value slot.
1319
1320  * [r13696] DEFMACRO now supports documentation strings as per the
1321    ANSI specification.
1322
1323  * [r13700] ABCL loads under the Weblogic 10.3 application server.
1324
1325  * [r13768] [#193] Allow zero-length symbols
1326 
1327  * [r13785] JNEW-RUNTIME-CLASS gets fields and annotations
1328 
1329  * [r13790] JNEW-RUNTIME-CLASS getters/setters for fields
1330
1331  * [r13796] [r13797] N3 DOAP description for ABCL
1332
1333  * [r13803] Build target 'abcl-contrib.jar' packages ABCL-CONTRIB
1334
1335Fixes
1336-----
1337
1338  * ANSI [#241]
1339 
1340     ** &AUX parameters fixes RESTAS
1341
1342   
1343  * [#221] Stack exhaustsion on funcall in non-existing package
1344
1345  * [#113] DEFSTRUCT concurrency
1346
1347  * [#216][#211] Compiler
1348
1349    ** stack inconsistency
1350
1351  * [#187] Better SORT and STABLE-SORT via Jorge Tavares [???]
1352
1353Issues Resolved
1354---------------
1355
1356    * [#234]    ABCL-ASDF mvn errors with VERSION slot unbound 
1357    * [#237]    JNA fails to load blocking CFFI
1358    * [#249]    Problems under Ubuntu   
1359    * [#250]    SYS:SHA256 does not compile     
1360    * [#265]    COMPILE-FILE.2 COMPILE-FILE.2A ANSI regression 
1361    * [#268]    ABCL-ASDF working with maven-3.0.3     
1362    * [#269]    SLIME cannot browse systems with November Quicklisp     
1363    * [#270]    Is BUGS.DEFEGENERIC.1 a valid test?     
1364    * [#271]    ASDF-2.26 changes synced upstream
1365    * [#272]    DESCRIBE.[14] ANSI regression   rschlatte       
1366    * [#275]    ABCL-CONTRIB still provided if abcl-contrib.jar cannot be located       
1367    * [#276]    defmethod doesn't call add-method       
1368    * [#277]    reinitialize-instance on class metaobjects incorrect
1369    * [#113]    DEFSTRUCT redefinition can crash ABCL on MAKE-STRUCT
1370    * [#199]    CL:DEFMETHOD fails for &AUX arguments that reference other arguments   
1371    * [#213]    ABCL-ASDF breakage on trunk     
1372    * [#215]    ABCL-ASDF:RESOLVE should work in more (some?) cases     
1373    * [#229]    JSS method resolution failure   
1374    * [#246]    CFFI: dynamically generated classes referred from .fasl can not be found after ABCL restart
1375    * [#168]    Compilation fails for quicklisp let-plus       
1376    * [#187]    Stack Overflow for Worst-case Vector Sort       
1377    * [#202]    ENSURE-GENERIC-FUNCTION assumes LAMBDA-LIST is NIL
1378    * [#204]    abcl-asdf maybe-parse-mvn ignores version information
1379    * [#205]    JSS logic for resolving methods a little wonky (could use better diagnostics on why resolution has failed)     
1380    * [#207]    DECLARE should signal conditions when type declarations are violated
1381    * [#210]    Add JFLI to contrib     
1382    * [#217]    ANSI tests wont run on Revision 14011: /trunk/abcl     
1383    * [#219]    Keyword argument checking for lambda lists is too lenient for ANSI     
1384    * [#220]    Lambda list checking too lenient       
1385    * [#224]    Autoloader fails when *read-XXXX* variables bound to non-standard values       
1386    * [#225]    One of the paths in STD-COMPUTE-DISCRIMINATING function not working     
1387    * [#235]    Compiled cl+ssl sources not reloadable 
1388    * [#241]    &rest and &aux can't coexist anymore in lambda lists   
1389    * [#243]    ClassCastException in MAKE-PATHNAME     
1390    * [#245]    Slots of a class with a custom meta-class are reported as unbound.     
1391    * [#247]    CFFI: $Proxy3 is not assignable to com.sun.jna.Pointer 
1392    * [#252]    MOP rework broke profiler?     
1393    * [#254]    Cannot load ASDF systems in jar archives with ASDF-BINARY-LOCATIONS-COMPATIBILTY enabled
1394    * [#255]    ASDF file encoding specification doesn't work   
1395    * [#263]    loading systems from abcl-contrib fails if CLASSPATH has a component with wildcard
1396    * [#264]    abcl-asdf.asd broken since revision 14233
1397    * [#60      ]Implement USE-FAST-CALLS properly
1398    * [#130]    "SLIME under Windows has ""extra"" CRLF"       
1399    * [#172]    DOCUMENTATION does not work for generic functions       
1400    * [#174]    Conformance bug in time implementation when using SLIME
1401    * [#175]    abcl.release target fails occasionally  unassigned     
1402    * [#189]    Compiler fails for 'unsigned-byte type declaration     
1403    * [#201]    &WHOLE broken in DEFINE-METHOD-COMBINATION     
1404    * [#206]    COMPILER-UNSUPPORTED-FEATURE-ERROR is derived from CONDITION, rather than from ERROR   
1405    * [#208]    "Files loaded via ""--load <FILE>"" on the command line have no pathname defaults"     
1406    * [#211]    closure-common fails to load correctly after compilation       
1407    * [#214]    Stack overflow when compiler macro with fallback is triggered   
1408    * [#232]    Allow wrapper script to reference install directory instead of build directory
1409    * [#192]    ASDF::IMPLEMENTATION-IDENTIFIER contains ABCL build environment identifier
1410    * [#195]    prompt is displayed twice when evaluating NIL at the REPL
1411
1412Version 1.0.1
1413==============
141409-JAN-2012
1415
1416<https://abcl.org/svn/tags/1.0.1/abcl/>
1417
1418
1419Changes
1420-------
1421
1422  * Updated ASDF to 2.019
1423
1424  * User Manual now contains more polished formating from docstring
1425    groveling, an index of symbols, and additional enhancements.
1426
1427  * 'abcl.properties.in' now contains examples of optimizing the ABCL
1428    wrapper script for 64bit instances for Java7 and for Java6. 
1429
1430  * [r13720] Randomize string hash computation to guard against
1431    exploits.
1432
1433  * [r13723] New internal API in Package.java for looking up internal
1434    vs. external symbols.
1435
1436Fixes
1437-----
1438
1439  * [#181][r13718] The implementation now correctly loads ASDF definitions
1440    from jar archives.  This had prevented the ABCL-CONTRIB loading
1441    mechanism from working.
1442
1443  * [#177] Made the mechanism for locating the abcl-contrib archive
1444    more robust
1445
1446  * [#177] LIST-DIRECTORY no longer ignores :RESOLVE-SYMLINKS
1447
1448  * [r13706] Fix Streadm.readToken() bug reported by Blake McBride.
1449
1450  * [#183][r13703] Move threads-jss.lisp out of system source to
1451    restore conditional recompilation logic.
1452
1453
1454Version 1.0.0
1455==============
145622-OCT-2011
1457
1458<https://abcl.org/svn/tags/1.0.0/abcl/>
1459
1460Released at the European Common Lisp Meeting Amsterdam 2011
1461
1462
1463Features
1464--------
1465
1466 * (Draft) manual
1467
1468 * Much better Quicklisp system capabilities (trivial-garbage,
1469 bordeaux-threads, parenscript, cxml, et. al.)
1470
1471Changes
1472-------
1473
1474 * Updated ASDF to 2.017.22
1475
1476Fixes
1477-----
1478
1479 * CLOSURE-HTML now compiles
1480
1481 * DEFINE-METHOD-COMBINATION long form implemented
1482
1483
1484Version 0.27.0
1485==============
1486
1487<https://abcl.org/svn/tags/0.27.0/>
1488
1489
1490Features
1491--------
1492
1493 * ABCL works as an SBCL build host
1494
1495 * Huge (> 64k) literal object support (fixes CL-UNICODE support)
1496
1497 * The ABCL-ASDF contrib allows the specification of JAR-FILE or
1498   JAR-DIRECTORY components that can be resolved via a PATHNAME.  The
1499   MVN component bootstraps a Maven3 Aether connector to locally
1500   replicate a versioned jar artifact for dynamic inclusion in the
1501   CLASSPATH.
1502
1503Changes
1504-------
1505
1506 * Renamed LispObject.writeToString() method to (more Lispy) printObject()
1507
1508 * New LispObject.princToString() for user readable output
1509
1510 * Changed behaviour of LispObject.unreadableString() to signal
1511   errors when *PRINT-READABLY* is non-NIL
1512
1513 * Static initializers moved to <clinit>() (java: static { }) to
1514   prevent repeated execution when invoking the constructor multiple times
1515
1516 * Compiler clean-ups
1517
1518 * Changed implementation of LABELS to eliminate the need
1519   to *always* create a closure
1520
1521 * File compiler (COMPILE-FILE) clean-ups
1522
1523 * When calling a function with the wrong number of arguments,
1524   report the expected (range) of arguments
1525
1526 * Upgraded ASDF to 2.017
1527
1528 * JSS:JLIST-TO-LIST now converts any java.list.List to a Lisp list.
1529
1530 * The ASDF extensions from JSS for the "jar-directory", "jar-file",
1531   and "class-file-directory" types have been refactored into the
1532   ABCL-ASDF contrib as well as the *ADDED-TO-CLASSPATH* variable
1533   which records dynamically added dependencies.  Use the
1534   JSS:ENSURE-COMPATIBILITY function to have JSS include these
1535   dependencies. 
1536
1537*  As long as ABCL-ASDF:ENSURE-MVN-VERSION can dynamically introspect
1538   and then load Maven 3 libraries at runtime, ASDF components of type
1539   MVN can now be used to specify versioned JVM artifacts.
1540
1541 * Threads spawned by THREADS:MAKE-THREAD can terminate the Lisp image
1542   via the EXT:QUIT and EXT:EXIT functions.
1543
1544
1545Fixes
1546-----
1547
1548 * MULTIPLE-VALUE-PROG1.10 (ansi test) fixed
1549
1550 * [ticket #148] READTABLE-CASE :INVERT doesn't work for uninterned symbols
1551
1552 * [ticket #161] READTABLE-CASE of current readtable affects FASL content
1553
1554 * [ticket #162] Non-symbol in variable position of SETQ form causes
1555   class verification failure
1556
1557 * [ticket #163] Local functions shadow global macro and function bindings
1558   (fixes PARENSCRIPT support)
1559
1560 * [ticket 158] Readable printing of the string "#<abc>" does not signal
1561   a PRINT-NOT-READABLE error anymore
1562
1563 * Fixed SYNTAX.SHARP-BACKSLASH.6 and SYNTAX.SHARP-BACKSLASH.7
1564
1565 * Fixed many PPRINT.* test suite failures
1566
1567 * [ticket #151] LOAD fails for whitespace in JAR-PATHNAME
1568
1569
1570Version 0.26.2
1571==============
157214-AUG-2011
1573
1574<http://abcl.org/svn/tags/0.26.2/abcl>
1575
1576Features
1577--------
1578  * Enable compilation with Java 7
1579
1580Fixes
1581-----
1582  * Fix loading from fasls under Windows with whitespace in pathname.
1583
1584  * Fix #131: Don't include ':' in the version string.
1585
1586  * Fix #141: SETF of APPLY not working with arbitrary function.
1587
1588  * Include filename in the error string being reported.
1589
1590  * Include the test source in the release.
1591
1592  * Include ASDF definition in source release.
1593 
1594
1595Version 0.26.1
1596==============
159727-JUL-2011
1598
1599<https://abcl.org/svn/tags/0.26.1/abcl>
1600
1601Features
1602--------
1603
1604 * Upgrade ASDF to 2.017.
1605
1606Fixes
1607-----
1608
1609 * Fix compilation problems by including the
1610   org.armedbear.lisp.protocol source in the build process
1611
1612 * Printing of conditions defined with DEFINE-CONDITION
1613
1614 * Regression with failing SYNTAX.SHARP-BACKSLASH.6
1615   and SYNTAX.SHARP-BACKSLASH.7 ANSI test suite failures
1616
1617 * Multiple failures in PPRINT.* ANSI test suite failures
1618
1619 * String interop with Java for strings with fill pointer
1620
1621 * Made #\Uxxxx a synonym for character codes with values greater than
1622   255 on input, but never output as the character name by the
1623   implementation.
1624
1625Version 0.26.0
1626==============
162710-JUL-2011
1628
1629<https://abcl.org/svn/tags/0.26.0/abcl>
1630
1631Features
1632--------
1633
1634 * Add support for weak reference objects
1635
1636 * Add support for finalizers on LispObject derived classes
1637
1638 * Upgrade ASDF to 2.0.16.1
1639
1640 * #\ reader macro now understands #\uNNNN as unicode codepoints
1641
1642 * JAVA:JRESOLVE-METHOD returns same method as would have been
1643   called by JAVA:JCALL with the same arguments
1644
1645 * Ant 'update' target to upload application to Google App Engine
1646
1647 * Simple RUN-PROGRAM implementation
1648
1649 * Support for custom slot definitions according to AMOP
1650
1651 * New JAVA:*JAVA-OBJECT-TO-STRING-LENGTH* variable to control pretty
1652   printing of Java objects
1653
1654 * JSS - more dynamic Lisp/Java FFI - (http://lsw2.googlecode.com/svn/trunk)
1655   imported
1656
1657 * (REQUIRE :ABCL-CONTRIB) adds 'abcl-contrib.jar' to the ASDF search path
1658
1659 * Support for weak references in hash tables through a :WEAKNESS keyword
1660   argument to MAKE-HASH-TABLE; with SYS:HASH-TABLE-WEAKNESS for inspection
1661
1662 * Support for loading ASDF systems from JAR archives
1663
1664 * Fast SHA1, SHA256 and SHA512 cryptographic hashes for files
1665
1666 * Beginnings of a manual
1667
1668 * ABCL/ASDF integration with Maven provided systems
1669
1670 * ASDF-JAR:PACKAGE function to package ASDF systems into JARs
1671
1672Changes
1673=======
1674
1675 * Reduced code size in the compiler by changing COMPILE-TEST-FORM
1676
1677 * Enhanced SLIME inspector for JAVA:JAVA-OBJECT
1678
1679 * Reimplemented MERGE-PATHNAMES
1680
1681 * TRANSLATE-PATHNAME aligned with SBCL's behaviour if version is wild
1682
1683 * Removed PRINT-OBJECT methods duplicating Java side code
1684
1685 * Refactored code in SYSTEM:ZIP function
1686
1687 * Allow JCOERCE to convert any number to java.lang.Byte (using
1688   its two's complement)
1689
1690 * Replace MAKE-IMMEDIATE-OBJECT with +NULL+, +TRUE+ and +FALSE+ constants
1691   (the only supported ones)
1692
1693 * Better separation between java-collections package and Java FFI
1694
1695 * JAVA:ADD-TO-CLASSPATH is now a generic function
1696
1697Fixes
1698=====
1699
1700 * Google App Engine example fixed
1701
1702 * MAKE-PATHNAME erroneously merges directories as in MERGE-PATHNAME
1703
1704 * Pretty printer routines using SYS:OUTPUT-OBJECT with GRAY-STREAM
1705
1706 * Value of *PRINT-CASE* affects file (to FASL) compilation
1707
1708 * MAKE-PATHNAME ignores version in :DEFAULTS
1709
1710 * URI decoding algorithm in Pathname.java
1711
1712 * JNEW-ARRAY-FROM-ARRAY should create byte[] arrays
1713
1714Version 0.25.0
1715==============
171610-MAR-2011
1717
1718<https://abcl.org/svn/tags/0.25.0/abcl>
1719
1720
1721Features
1722--------
1723
1724* Add :resolve-symlinks keyword argument for DIRECTORY.
1725
1726* Support -- as a command line parameter for the REPL.
1727
1728* Preliminary support for Maven deployment.
1729
1730* Add an initargs cache for speedups in check-initargs. This should
1731  make the initarg checking in CLOS quite a bit faster.
1732
1733* Incorporate output of 'svnversion' into LISP-IMPLEMENTATION-VERSION.
1734
1735* Ant target for generating Javadoc.
1736
1737Fixes
1738-----
1739
1740* [svn r13229] Remove non-existing THREAD-LOCK and THREAD-UNLOCK from autoloads.
1741
1742* [svn 13228] Fix incorrect elimination of named local functions
1743  declared inline when they're actually reified in the flet/labels body.
1744
1745* [svn r13217] Forward-referenced classes work properly now.
1746
1747* [svn r13209] Add initarg checking to REINITIALIZE-INSTANCE.
1748
1749* [svn r13204] FINALIZE-INHERITANCE is (more) AMOP compatible.
1750
1751* [svn r13203] Create ATOMIC-DEFGENERIC macro, in order to eliminate
1752  FMAKUNBOUND calls and the resulting windows where no function is bound to
1753  symbols which are the most essential building blocks in CLOS/AMOP.
1754
1755* [svn r13200] Atomically swap generic functions into place of temporary
1756  DEFUNs for all standard-class slot accessors.
1757  Note: This addresses the recursive requirement to be able
1758  to allocate objects and classes while changing the functions
1759  used to create them.
1760
1761* [svn r13196] Provide more context regarding the reason of autoloading.
1762  Note: This change *hugely* helps debugging.
1763
1764* [svn r13189] Fix MACROEXPAND-ALL autoloader which should be
1765  loaded from 'format.lisp'.
1766
1767* [svn r13188] Fix DEFSTRUCT trying to generate accessors named NIL
1768
1769* [svn r13187] Fix #125: FASL reader should not convert symbol
1770  case [Qi FASL loading issues].
1771
1772* [svn r13185] Fix #119: Incorrect dynamic environment for
1773  evaluation of :CLASS allocation slot initforms.
1774
1775* [svn r13182-r13184] Fix error printing issues.
1776
1777* [svn r13181] Increase autoload verbosity: include FASLs too
1778  (not only Java classes).
1779
1780Changes
1781-------
1782
1783* Merge 'unsafe-p-removal' branch.
1784
1785Version 0.24.0
1786==============
178722-JAN-2011
1788
1789<https://abcl.org/svn/tags/0.24.0/abcl>
1790
1791Features
1792--------
1793
1794* [svn r130103-r13107] Implemented JNULL_REF_P to distinguish a
1795  JAVA-OBJECT which contains a Java "null" from the Lisp NIL.
1796
1797* [svn r13102] More type-conversion helpers in JAVA package:
1798  LIST-FROM-JARRAY, VECTOR-FROM-JARRAY, and LIST-FROM-JENUMERATION.
1799
1800* [svn r13078] JVM::MAKE-CLASS-INTERFACE-FILE provides an interface
1801  for the creation of Java interfaces as serialized by the new
1802  classwriter code.  An example of use can be found in
1803  "examples/misc/dynamic-interfaces.lisp".
1804
1805* [svn r13087] Upgraded to ASDF-2.012
1806
1807
1808Fixes
1809-----
1810
1811* [svn r13135] Fix the problem that FASLs can contain
1812  a limited number of functions.
1813
1814* [svn r13117][ticket #117] Fix stack inconsistency error.
1815
1816* [svn r13018][ticket #114] Fix strange backtrace growth.
1817
1818* [svn r13105] Fix Pathname.java failing to find boot.lisp in an
1819  "unpacked JAR" situation found by running ABCL in the Glassfish v3
1820  servlet container.
1821
1822* [svn r13096] For arrays, add initialization with the default value
1823  of the element type if neither INITIAL-ELEMENT nor INITIAL-CONTENT
1824  have been specified.  Found by: dmalves_ (freenode irc nick).
1825
1826* [svn r13094] Eliminate flushes after every character in
1827  javax.scripting support.
1828
1829* [svn r13090] Make --batch exit, use Lisp.exit() in places where
1830  applicable so that the streams are flushed, hence allowing --eval
1831  output to be flushed.
1832
1833* [svn r13088] Fix algorithim error in writing byte sequences via
1834  RandomAccessCharacterFile.  Found and fixed by David Kirkman.
1835
1836
1837Changes
1838-------
1839
1840* [svn r13141-13146,13156] Make ABCL a well behaving library to better
1841  support embedding: NEVER call System.exit() again.  Instead, ABCL now
1842  throws org.armedbear.lisp.ProcessingTerminated and
1843  org.armedbear.lisp.IntegrityError.
1844
1845* [svn r13111] Added a "tools" directory available in SVN repository
1846  to contain tools for developing ABCL in various states.  The first
1847  inhabitant is 'code-grapher.lisp' that provides a prototype to
1848  diagram a JVM instruction sequence via graphviz.
1849
1850* [svn r13101] Reduced verbosity of the AbclScriptEngine.
1851
1852* [svn r13097-13100] Slight refactoring of PATHNAME code, further
1853  specifying URI escaping rules.
1854
1855* [svn r13091-2] Better error reporting for UnhandledCondition thrown
1856  from the Interpreter, storing the originating Java error in the
1857  "cause" field if the cause is a subclass of JAVA_EXCEPTION.
1858
1859
1860Version 0.23.1
1861==============
186201-DEC-2010
1863
1864<https://abcl.org/svn/tags/0.23.1/abcl>
1865
1866
1867Fixes
1868-----
1869
1870* [svn r13509-10] Allow JSR-223 clients to query ABCL metadata without
1871  incurring the entire interpreter startup time.
1872
1873* [svn r13506] Fix probles with loading FASLs in directories
1874  containing whitespace characters.
1875 
1876  We now require all PATHNAME objects constructed via a namestring
1877  containing the "file" scheme to be URI encoded according to
1878  RFC3986. 
1879
1880
1881Version 0.23
1882============
188325-NOV-2010
1884
1885<https://abcl.org/svn/tags/0.23.0/abcl>
1886
1887
1888Features
1889--------
1890
1891* [svn r12986] Update to ASDF 2.010.1
1892
1893* [svn r12982] Experimental support for the long form
1894     of DEFINE-METHOD-COMBINATION
1895
1896* [svn r12994] New java-interop macros: CHAIN and JMETHOD-LET
1897
1898* [svn r13030-31,r13034] ASDF-INSTALL improvements: Ensure that the
1899     ASDF registry contains the ASDF-INSTALL locations.  Better
1900     resolution mechanism for 'gpg' binary.
1901
1902Fixes
1903-----
1904
1905* [svn r13039] Restore the Lisp-based build
1906
1907* [ticket #108][svn r13027] Fix download problems with ASDF-INSTALL
1908
1909* [svn r12995-12997] Changes to generated byte code to prevent JRockit JVM
1910     from crashing when optimizing it
1911
1912* Various fixes in order to complete the Maxima test suite without failures
1913
1914* [ticket #98] THREAD type specifier not exported from the THREADS package
1915
1916* [svn r12946] Fix CLOS thread-safety
1917
1918* [svn r12930] Fix non-constantness of constant symbols when using SET
1919
1920* [svn r12929] Don't throw conditions on floating point underflow
1921    (fixes Maxima failures)
1922
1923* [svn r12928] Fix for Java-collections-as-lisp-sequences support
1924
1925* [svn r12927] Fix for regression to moved threads related symbols
1926
1927* [ticket #104] SET changes value of symbols defined with DEFCONSTANT
1928
1929* [ticket #88] Need a predicate to indicate source of compiled version
1930      ie Java vs Lisp
1931
1932* [ticket #106] DEFSTRUCT :include with :conc-name creating overwriting
1933      inherited slot accessors
1934
1935* [ticket #97] Symbol imported in multiple packages reported multiple
1936      times by APROPOS
1937
1938* [ticket #107] Incorrect compilation of (SETF STRUCTURE-REF) expansion
1939
1940* [ticket #105] DIRECTORY ignores :WILD-INFERIORS
1941
1942Other
1943-----
1944
1945* [svn r12918] Compiler byte code generator cleanup: introduction
1946      of generic class file writer, elimination of special purpose code
1947      in the compiler.
1948
1949* Number of hashtable implementations reduced to 1 (from 5)
1950
1951* Reduced use of 'synchronized' global hash table access by using
1952      the java.util.concurrent package
1953
1954Version 0.22
1955============
195624-SEP-2010
1957
1958<https://abcl.org/svn/tags/0.22.0/abcl>
1959
1960Fixes
1961-----
1962
1963* [svn r12902] Fix reading data with scandinavian latin1 characters
1964
1965* [svn r12906] Respect the CLASSPATH environment variable in the
1966  abcl wrapper scripts
1967
1968* [ticket #103] DOCUMENTATION not autoloaded
1969
1970Other
1971-----
1972
1973* [svn r12819] Until-0.22-compatibility hacks (in threads support) removed
1974
1975
1976
1977Version 0.21
1978============
197924-JUL-2010
1980
1981<https://abcl.org/svn/tags/0.21.0/abcl>
1982
1983
1984Features
1985--------
1986
1987* [svn r12818] Update to ASDF 2.004
1988
1989* [svn r12738-805] Support for custom CLOS slot definitions and
1990  custom class options.
1991
1992* [svn r12756] slot-* functions work on structures too.
1993
1994* [svn r12774] Improved Java integration: jmake-proxy can implement
1995  more than one interface.
1996
1997* [svn r12773] Improved Java integration: functions to dynamically
1998  manipulate the classpath.
1999
2000* [svn r12755] Improved Java integration: CL:STRING can convert Java
2001  strings to Lisp strings.
2002
2003Fixes
2004-----
2005
2006* [svn 12809-10-20] Various printing fixes.
2007
2008* [svn 12804] Fixed elimination of unused local functions shadowed by macrolet.
2009
2010* [svn r12798-803] Fixed pathname serialization across OSes.
2011  On Windows pathnames are always printed with forward slashes,
2012  but can still be read with backslashes.
2013
2014* [svn r12740] Make JSR-223 classes compilable with Java 1.5
2015
2016Other
2017-----
2018
2019* [svn r12754] Changed class file generation and FASL loading
2020  to minimize reflection.
2021
2022* [svn r12734] A minimal Swing GUI Console with a REPL
2023  is now included with ABCL.
2024
2025Version 0.20
2026============
202724-MAY-2010
2028
2029<https://abcl.org/svn/tags/0.20.0/abcl>
2030
2031
2032Features
2033--------
2034
2035* [svn r12576] Support for CLOS METACLASS feature.
2036
2037* [svn r12591-602] Consolidation of copy/paste code in the readers.
2038
2039* [svn r12619] Update to ASDF2 (specifically to ASDF 1.719).
2040
2041* [svn r12620] Use interpreted function in FASL when compilation fails.
2042
2043* [ticket #95] PATHNAME-JAR and PATHNAME-URL subtypes now handle jar
2044  and URL references working for OPEN, LOAD, PROBE-FILE,
2045  FILE-WRITE-DATE, DIRECTORY, et. al.
2046
2047* Many small speed improvements (by marking functions 'final').
2048
2049* [ticket #91] Threads started through MAKE-THREAD now have a
2050    thread-termination restart available in their debugger.
2051
2052* [svn r12663] JCLASS supports an optional class-loader argument.
2053
2054* [svn r12634] THREADS:THREAD-JOIN implemented.
2055
2056* [svn r12671] Site specific initialization code can be included in
2057  builds via the 'abcl.startup.file' Ant property.
2058
2059Fixes
2060-----
2061
2062* [ticket #89] Inlining of READ-LINE broken when the return value
2063    is unused.
2064
2065* [svn r12636] Java class verification error when compiling PROGV
2066    in a context wanting an unboxed return value (typically a
2067    logical expression).
2068
2069* [svn r12635] ABCL loads stale fasls instead of updated source
2070    even when LOAD is called with a file name without extension.
2071
2072* [ticket #92] Codepoints between #xD800 and #xDFFF are incorrectly
2073    returned as characters from CODE-CHAR.
2074
2075* [ticket #93] Reader doesn't handle zero returned values from
2076    macro functions correctly.
2077
2078* [ticket #79] Different, yet similarly named, uninterned symbols
2079    are incorrectly coalesced into the same object in a fasl.
2080
2081* [ticket #86] No restarts available to kill a thread, if none
2082    bound by user code.
2083
2084* [svn r12586] Increased function dispatch speed by eliminating
2085    FIND-CLASS calls (replacing them by constant references).
2086
2087* [svn r12656] PATHNAME-JAR now properly uses HTTP/1.1 HEAD requests
2088  to detect if remote resource has been changed.
2089
2090* [svn r12643] PATHNAME-JAR now properly references Windows drive
2091    letters on DEVICE other than the default.
2092
2093* [svn r12621] Missing 'build-from-lisp.sh' referenced in README now
2094    included in source release.
2095
2096Other
2097-----
2098
2099* [svn r12581] LispCharacter() constructors made private, in favor
2100    of getInstance() for better re-use of pre-constructed characters.
2101
2102* [svn r12583] JAVA-CLASS reimplemented in Lisp.
2103
2104* [svn r12673] Load 'system.lisp' moved later in boot sequence so
2105    unhandled conditions drop to debugger.
2106
2107* [svn r12675] '--nosystem' commandline option inhibits loading of
2108    'system.lisp'.
2109
2110* [svn r12642] Under Windows, pathname TYPE components can now contain
2111    embedded periods iff they end in '.lnk' to support shortcuts.
2112
2113
2114Version 0.19
2115============
211614-MAR-2010
2117
2118<https://abcl.org/svn/tags/0.19/abcl>
2119
2120
2121Features
2122--------
2123
2124* [svn r12518] *DISASSEMBLER* may now contain a hook which returns the
2125  command to disassemble compiled functions.
2126
2127* [svn r12516] An implementation of user-extensible sequences as
2128  proposed in Christopher Rhodes, "User-extensible sequences in Common
2129  Lisp", Proc. of the 2007 International Lisp Conference.
2130
2131* [svn r12513] Implement SYS:SRC and SYS:JAVA logical pathname
2132  translations for system Lisp source and the root of the Java package
2133  structure, respectively.
2134
2135* [svn r12505] All calls to anonymous functions and local functions that have
2136  been declared inline are now converted to LET* forms, reducing stack usage
2137  and the number of generated classes.
2138
2139* [svn r12487] An initial port ASDF-INSTALL now forms the first ABCL
2140  contrib.  Such contribs are optionally built by the Ant target
2141  'abcl.contrib'.  ASDF-INSTALL is not expected to work very well
2142  under Windows in its present state.
2143
2144* [svn r12447] [ticket:80] REQUIRE now searches for ASDF systems.
2145
2146* [svn r12422] Jar pathname support extensively re-worked and tested
2147  so that LOAD, PROBE-FILE, TRUENAME, DIRECTORY, and WRITE-FILE-DATE
2148  all work both for local and remote jar pathnames of the form
2149  "jar:URL!/JAR-ENTRY".
2150
2151  The loading ASDF systems from jar files is now possible.
2152
2153  SYS:PATHNAME-JAR-P predicate signals whether a pathname references a
2154  jar.
2155
2156  NB: jar pathnames do *not* currently work as an argument to OPEN.
2157
2158  SYS:UNZIP implemented to unpack ZIP files.
2159
2160  SYS:ZIP now has a three argument version for creating zip files with
2161  hierarchical entries.
2162
2163* [svn r12450] Collect unprocessed command-line arguments in
2164  EXT:*COMMAND-LINE-ARGUMENT-LIST* (Dennis Lambe Jr.)
2165
2166* [svn r12414] SYS::%GET-OUTPUT-STREAM-ARRAY returns a Lisp byte array
2167  from a Java byte array stream.
2168
2169* [svn 12402] ABCL.TEST.LISP:RUN-MATCHING will now execute that subset
2170  of tests which match a string.
2171
2172
2173Fixes/Optimizations
2174-------------------
2175
2176* [svn r12526] Unbinding of PROGV bound variables on local transfer
2177  of control (within-java-function jump targets)
2178
2179* [svn r12510] The new ansi-test WITH-STANDARD-IO-SYNTAX.23 passes.
2180  Our with-standard-io-syntax implementation now correctly resets all necessary
2181  pprint variables. Patch by Douglas R. Miles, thanks for the contribution!
2182
2183* [svn r12485] Pathnames starting with "." can now have TYPE.
2184
2185* [svn r12484] FASLs containing "." characters not used to indicate
2186  type (i.e. ".foo.bar.baz.abcl") can now be loaded.
2187
2188* [svn r12422] Pathname.java URL contructor under Windows now properly
2189  interprets the drive letter.
2190
2191* [svn r12449] The 'abcl.jar' produced by Netbeans now contains a valid
2192  manifest (found by Paul Griffionen).
2193
2194* [svn r12441] ZipCache now caches all references to ZipFiles based on
2195  the last-modified time for local files.  Remote files are always
2196  retrieved due to problems in the underlying JVM code.
2197
2198  SYS:REMOVE-ZIP-CACHE implements a way to invalidate an entry given a
2199  pathname.
2200
2201* [svn r12439] Remove duplication of java options in Windows
2202  'abcl.bat' script.
2203
2204* [svn r12437] CHAR-CODE-LIMIT is the upper execlusive limit (found by
2205  Paul Griffionen).
2206
2207* [svn r12436] Describe formatting was missing a newline (reported by
2208  Blake McBride).
2209
2210* [svn 12469] Ensure that FILE-ERROR always has a value (possibly NIL)
2211  for its PATHNAME member.
2212
2213* [svn r14222] MERGE-PATHNAMES no longer potentially shares structure
2214  between its result and *DEFAULT-PATHNAME-DEFAULTS*.
2215
2216* [svn r12416] Fixed ANSI LAMBDA.nn test failures caused by errors in
2217  lambda inlining.
2218
2219* [svn r12417] [ticket:83] Fix TRANSLATE-LOGICAL-PATHNAME regression.
2220  (Alan Ruttenberg).
2221
2222* [svn r12412] Optimize memory efficiency of FORMAT by use of a
2223  hashtable rather than a CHAR-CODE-LIMIT array.
2224
2225* [svn r12408] FIND-SYMBOL requires a  string argument.
2226
2227* [svn r12400] Make NIL (as symbol) available to the compiler.
2228
2229* [svn r12398] Move lambda list analysis to compile time where possible.
2230
2231* [svn r12397] BROADCAST-STREAM obeys default external format fixing
2232  ANSI MAKE-BROADCAST-STREAM.8.
2233
2234* [svn r12395] Improve arglist display for SLIME (Matthias Hölzl).
2235
2236* [svn r12394] Optimize array utilization in closures.
2237
2238* [svn r12393] Optimize array functions in compiler which don't
2239  require clearing the VALUES array.
2240
2241* [svn r12392] Optimize/normalize aspects of boot.lisp
2242
2243* [svn r12391] Prevent duplicated subclasses form occuring.
2244
2245
2246Other
2247-----
2248
2249* [svn r12447] SYS::*MODULE-PROVIDER-FUNCTION* now provides a mechanism
2250  to extend the REQUIRE resolver mechanism at runtime.
2251
2252* [svn r12430] Ant based build no longer writes temporary files to
2253  contain the Lisp build instructions.
2254
2255* [svn r12481] STANDARD-CLASS now has slots to be inherited by
2256  deriving metaclasses in support of the (in progress) work on
2257  metaclass.
2258
2259* [svn r12425] No longer ignore the METACLASS defclass option in
2260  support of the (in progress) work on metaclass
2261
2262* [svn r12422] SYS::*LOAD-TRUENAME-FASL* now contains the TRUENAME of
2263  the Java "*.cls" component when loading a packed FASL.
2264
2265* [svn r12461] Human readable Java representations for class cast
2266  exceptions for NULL and UNBOUND values.
2267
2268* [svn r12453 et. ff.] Large numbers of the implementation of Java
2269  primitives have been declared in a way so that a stack trace
2270  provides a much more readable indication of what has been invoked.
2271  Primitives which extend Primitive are prefixed with "pf_"; those
2272  which extend SpecialOperator are prefixed with "sf_".
2273
2274* [svn r12422] The internal structure of a jar pathname has changed.
2275  Previously a pathname with a DEVICE that was itself a pathname
2276  referenced a jar.  This convention was not able to simultaneously
2277  represent both jar entries that were themselves jar files (as occurs
2278  with packed FASLs within JARs) and devices which refer to drive
2279  letters under Windows.  Now, a pathname which refers to a jar has a
2280  DEVICE which is a proper list of at most two entries.  The first
2281  entry always references the "outer jar", and the second entry (if it
2282  exists) references the "inner jar".
2283
2284* [svn r12419] Ant 'abcl.release' target centralizes the build steps
2285  necessary for creating releases.
2286
2287* [svn r12409] Compiler now rewrites function calls with (LAMBDA 
) as
2288  the operator to LET* forms.
2289
2290* [svn r12415] CLASS-FILE renamed to ABCL-CLASS-FILE to prepare for
2291  (in progress) reworking of Stream inheritance.
2292
2293* [svn r123406] 'test/lisp/abcl/bugs.lisp' forms a default location to
2294  add unit tests for current bug testing.  The intention is to move
2295  these tests into the proper location elsewhere in the test suite
2296  once they have been fixed.
2297
2298* [svn r124040] Java tests upgraded to use junit-4.8.1.  Netbeans
2299  project runtime classpath now uses compilation results before source
2300  directory, allowing the invocation of ABCL in interpreted mode if
2301  the Ant 'abcl.compile.lisp.skip' property is set.  Java unit tests
2302  for some aspects of jar pathname work added.
2303
2304*  New toplevel 'doc' directory now contains:
2305
2306   + [svn r12410] Design for the (in progress) reworking of the Stream
2307     inheritance.
2308
2309   + [svn r12433] Design and current status for the re-implementation
2310     of jar pathnames.
2311
2312* [svn r12402] Change ABCL unit tests to use the ABCL-TEST-LISP definition
2313  contained in 'abcl.asd'.  Fixed and renabled math-tests.  Added new
2314  tests for work related to handling jar pathnames.
2315
2316* [svn r12401] The REFERENCES-NEEDED-P field of the LOCAL-FUNCTION structure now
2317  tracks whether local functions need the capture of an actual
2318  function object.
2319
2320
2321Version 0.18.1
2322==============
232317-JAN-2010
2324
2325<https://abcl.org/svn/tags/0.18.1/abcl>
2326
2327
2328Features:
2329
2330 * Support for printing java objects with print-object
2331 * Support for disassembling proxied functions
2332
2333Bugs fixed:
2334
2335 * maxima works again
2336
2337Version 0.18.0
2338==============
233912-JAN-2010
2340
2341<https://abcl.org/svn/tags/0.18.0/abcl>
2342
2343Features:
2344
2345 * Programmable handling of out-of-memory and stack-overflow conditions
2346 * Faster initial startup (to support Google App Engine)
2347 * Faster special variable lookup
2348 * New interface for binding/unwinding special variables
2349 * Implement (SETF (STREAM-EXTERNAL-FORMAT <stream>) <format>)
2350 * Implement (SETF (JAVA:JFIELD <object>) <value>)
2351 * Constant FORMAT strings get compiled for performance
2352
2353
2354Bugs fixed:
2355
2356 * FASLs are system default encoding dependent (ticket 77)
2357 * I/O of charset-unsupported characters causes infinite loop (ticket 76)
2358 * Memory leak where on unused functions with documentation
2359 * ANSI PRINT-LEVEL.* tests
2360 * Continued execution after failing to handle Throwable exceptions
2361 * Line numbers in generated java classes incorrect
2362 * JCALL, JNEW doesn't select best match when multiple applicable methods
2363 * STREAM-EXTERNAL-FORMAT always returns :DEFAULT, instead of actual format
2364 * REPL no longer hangs in Netbeans 6.[578] output window
2365 * Lambda-list variables replaced by surrounding SYMBOL-MACROLET
2366
2367
2368Other changes
2369
2370 * LispObject does not inherit from Lisp anymore
2371 * Many functions declared 'final' for performance improvement
2372 * SYSTEM:*SOURCE* FASLs for system files no longer refer to intermediate build location
2373
2374
2375Version 0.17.0
2376==============
237707-NOV-2009
2378
2379<https://abcl.org/svn/tags/0.17.0/abcl>
2380
2381
2382Features:
2383
2384  * Google App Engine example project "Hello world"
2385  * Support for loading FASLs from JAR files
2386  * Checking of init-arguments for MAKE-INSTANCE (CLOS)
2387  * Support for *INVOKE-DEBUGGER-HOOK* (to support SLIME)
2388  * Reduced abcl.jar size (bytes and number of objects)
2389  * Faster access to locally bound specials (compiler efficiency)
2390  * Java property to print autoloading information: abcl.autoload.verbose
2391  * Experimental: binary fasls
2392  * Default Ant build target now "abcl.clean abcl.wrapper" (from abcl.help)
2393  * ConditionThrowable class renamed to ControlTransfer,
2394      parent class changed to RuntimeException (to make it unchecked)
2395  * API no longer throws ConditionThrowable/ControlTransfer
2396
2397
2398Bugs fixed:
2399
2400  * Better fix for #63: Prevent exceptions from happening (GO and RETURN-FROM)
2401  * Restore ability for ABCL to be build host for SBCL
2402  * CLOS performance improvements through looser COMPILE dependency
2403  * Compilation fix for highest SPEED setting (triggered by CL-BENCH)
2404  * COMPILE's use of temp files eliminated
2405  * OpenJDK on Darwin now correctly identified
2406  * Incorrect block names for SETF functions defined by LABELS
2407  * Fixed MULTIPLE-VALUE-CALL with more than 8 arguments
2408  * Incorrect identification of lexical scope on recursive TAGBODY/GO
2409    and BLOCK/RETURN-FROM blocks (compiler and interpreter)
2410  * Correctly return 65k in char-code-limit (was 256, incorrectly)
2411  * Fixes to be able to run the BEYOND-ANSI tests (part of ANSI test suite)
2412  * Compiler typo fix
2413  * Implementation of mutex functionality moved to lisp from Java
2414  * Functions handling #n= and #n# are now compiled
2415  * Autoload cleanups
2416  * System package creation cleaned up
2417  * CHAR-CODE-LIMIT correctly reflects CHAR-CODE maximum return value
2418  * Precompiler macroexpansion failure for macros expanding into
2419      special operators
2420
2421
2422Version 0.16.1
2423==============
242417-OCT-2009
2425
2426<https://abcl.org/svn/tags/0.16.1/abcl>
2427
2428Bugs fixed:
2429
2430  * More careful checking for null args in LispStackFrame
2431  * Honor appearance of &allow-other-keys in CLOS MAKE-INSTANCE
2432  * Fix #63: GO forms to non-existent TAGBODY labels would exit ABCL
2433  * Don't leak temp files during compilation
2434
2435Version 0.16.0
2436==============
243706-SEP-2009
2438
2439<https://abcl.org/svn/tags/0.16.0/abcl>
2440
2441  Summary of changes:
2442  ------------------
2443  * Fixed generated wrapper for path names with spaces (Windows)
2444  * Fixed ticket #58: Inspection of Java objects in Lisp code
2445  * Restored functionality of the built-in profiler
2446  * Profiler extended with hot-spot counting (as opposed to call counting)
2447  * Stack sampling in the profiler moved to scheduler thread to
2448    reduce impact on the program execution thread
2449  * THE type-checking for the interpreter
2450    (for simple-enough type specifications)
2451  * Added structure argument type checking in structure slot
2452    accessor functions
2453  * Make GENSYM thread-safe
2454  * Various performance fixes found by running the raytracer
2455    from http://www.ffconsultancy.com/languages/ray_tracer/benchmark.html
2456  * Better initarg checking for make-instance and change-class
2457    Fixes ansi-test errors CHANGE-CLASS.1.11, MAKE-INSTANCE.ERROR.3,
2458    MAKE-INSTANCE.ERROR.4, CHANGE-CLASS.ERROR.4 and SHARED-INITIALIZE.ERROR.4
2459  * Improve performance of StackFrames (Erik Huelsmann, Ville Voutilainen,
2460    with input from Peter Graves and Douglas Miles)
2461  * Improve performance of CLOS eql-specializers via cache (Anton Vodonosov)
2462  * 'build-from-lisp.sh' shell script (Tobias Rittweiler)
2463  * New threading primitives aligned with Java/JVM constructs (Erik Huelsmann)
2464
2465      SYNCHRONIZED-ON
2466      OBJECT-NOTIFY
2467      OBJECT-NOTIFY-ALL
2468  * THREADS package created to hold threads related primitives:
2469
2470      THREADP THREAD-UNLOCK THREAD-LOCK THREAD-NAME THREAD-ALIVE-P
2471      CURRENT-THREAD DESTROY-THREAD INTERRUPT-THREAD WITH-THREAD-LOCK
2472      MAKE-THREAD-LOCK MAKE-THREAD INTERRUPT-THREAD
2473
2474      MAPCAR-THREADS
2475
2476      GET-MUTEX MAKE-MUTEX WITH-MUTEX RELEASE-MUTEX
2477
2478    These primitives are still part of the EXTENSIONS package but are
2479    now to be considered as deprecated, marked to be removed with
2480    0.22
2481  * Stacktraces now contain calls through Java code relevant to
2482    debugging (Tobias Rittweiler)
2483
2484    Backtrace functionality been moved from EXT:BACKTRACE-AS-LIST to
2485    SYS:BACKTRACE to mark this changes.  The methods SYS:FRAME-TO-STRING
2486    and SYS:FRAME-TO-LIST can be used to inspect the new
2487    LISP_STACK_FRAME and JAVA_STACK_FRAME objects
2488  * Various stream input performance optimizations
2489  * Fixed breakage when combining Gray streams and the pretty printer
2490  * Performance improvements for resolution of non-recursive #=n and #n#
2491
2492
2493Version 0.15.0
2494==============
249507-Jun-2009
2496
2497<https://abcl.org/svn/tags/0.15.0/abcl>
2498
2499
2500 Summary of changes:
2501 -------------------
2502  * 2 more MOP exported symbols to support Cells port
2503  * Updated FASL version
2504  * Support (pre)compilation of functions with a non-null lexical environment
2505  * Compiler and precompiler cleanups
2506  * 'rt.lisp' copy from ANSI test suite removed
2507  * Many documentation additions for the (pre)compiler
2508  * JSR-233 support improvements
2509  * Refactoring of classes:
2510   - deleted: CompiledFunction, ClosureTemplateFunction, CompiledClosure,
2511              Primitive0R, Primitive1R, Primitive2R
2512   - renamed: CompiledClosure [from ClosureTemplateFunction]
2513  * Compiler support for non-constant &key and &optional initforms
2514  * Fixed ticket #21: JVM stack inconsistency [due to use of RET/JSR]
2515  * Numerous special bindings handling fixes, especially with respect
2516    to (local) transfer of control with GO/RETURN-FROM
2517  * Paths retrieved using URL.getPath() require decoding (r11815)
2518  * Build doesn't work inside paths with spaces (r11813)
2519  * Compilation of export of a symbol not in *package* (r11808)
2520  * Moved compiler-related rewriting of forms from precompiler to compiler
2521  * Removed chained closures ('XEPs') in case of &optional arguments only
2522  * Loading of SLIME fails under specific conditions (r11791)
2523  * Binding of *FASL-ANONYMOUS-PACKAGE* breaks specials handling (r11783)
2524  * Fixed ANSI tests: DO-ALL-SYMBOLS.{6,9,12}, DEFINE-SETF-EXPANDER.{1,6,?},
2525      MULTIPLE-VALUE-SETQ.{5,8}, SYMBOL-MACROLET.8, COMPILE-FILE.{17,18}
2526  * COMPILE and COMPILE-FILE second and third values after a failed
2527      invocation inside the same compilation-unit (r11769)
2528  * JCLASS on non-existing classes should signal an error (r11762)
2529  * Dotted lambda lists break interpretation (r11760)
2530  * Implementation of MACROEXPAND-ALL and COMPILER-LET (r11755)
2531  * Switch from casting to 'instanceof' for performance (r11754)
2532  * Google App Engine support: don't die if 'os.arch' isn't set (r11750)
2533  * Excessive stack use while resolving #n= and #n# (r11474)
2534
2535
2536Version 0.14.1
2537==============
253805-Apr-2009
2539
2540<https://abcl.org/svn/tags/0.14.1/abcl>
2541
2542
2543Summary of changes:
2544-------------------
2545 * Include this CHANGES file and scripting files in the tar and zip files
2546
2547
2548Version 0.14.0
2549==============
255005-APR-2009
2551
2552<https://abcl.org/svn/tags/0.14.0/abcl>
2553
2554 Summary of changes:
2555 -------------------
2556  * Increased clarity on licensing (Classpath exception
2557     mentioned in COPYING, removed LICENSE)
2558  * Resolved infinite recursion on TRACEing the compiler
2559  * Changes on the lisp based build system for parity with Ant
2560  * Fixed interpreter creation in Java Scripting
2561  * libabcl.so no longer created; it was solely about installing
2562     a SIGINT handler. Libraries should not do that.
2563  * boxing of LispObject descendants in JCALL/JCALL-RAW fixed
2564  * OpenBSD and NetBSD platform detection
2565  * fixed special bindings restores in compiled code for
2566     MULTIPLE-VALUE-BIND/LET/LET*/PROGV and function bodies
2567  * introduced variadic list() function to replace list1() ... list9()
2568  * fix return value type of ACOS with complex argument
2569  * fixed precision of multiplication of complex values
2570  * fixed use of COMPILE inside file compilation (i.e. COMPILE-FILE)
2571  * fix expansion of macros inside RESTART-CASE
2572     (fixes RESTART-CASE ANSI failures)
2573  * fix macroexpansion in the precompiler
2574  * Fixnum and Bignum now use a static factory method;
2575      constructors are now private -> increases chances of numbers
2576      being EQ
2577  * Code cleanup in EXPT to fix (EXPT <any-number> <Bignum>)
2578
2579
2580Version 0.13.0
2581==============
258228-FEB-2009
2583
2584<https://abcl.org/svn/tags/0.13.0/abcl>
2585
2586 Summary of changes:
2587 -------------------
2588  * Separated J and ABCL into two trees
2589  * Many many compiler code cleanups
2590  * NetBeans project files
2591  * Support for CDR6 (See http://cdr.eurolisp.org/document/6/)
2592  * More efficient code emission in the compiler
2593  * Ant build targets for testing (abcl.test)
2594  * Use ConcurrentHashMap to store the lisp threads for increased performance
2595  * Fix adjustability of expressly adjustable arrays (ticket #28)
2596  * Fix calculation of upperbound on ASH in the compiler
2597     (don't calculate numbers too big, instead, return '*')
2598  * Introduce LispInteger as the super type of Bignum and Fixnum
2599  * Boxing/unboxing for SingleFloat and DoubleFloat values,
2600      inclusive of unboxed calculations
2601  * Fixed URL decoding bug in loadCompiledFunction (use java.net.URLDecoder)
2602  * Fixed line number counting
2603  * Inlining of simple calculations (+/-/*)
2604  * All static fields declared 'final'
2605  * Add support for java.lang.Long based on Bignum to our FFI
2606
2607
Note: See TracBrowser for help on using the repository browser.