source: tags/1.9.1/CHANGES

Last change on this file was 15664, checked in by Mark Evenson, 15 months ago

1.9.1: metadata for rc-0

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