6da74a2beac67542f3715fe23ff506c70bde26fa
[uffi.git] / ChangeLog
1 2010-02-07 Kevin Rosenberg <kevin@rosenberg.net>
2         * Version 1.8.2
3         * src/i18n.lisp: Rename function to 
4         foreign-encoded-octet-count. Fix errors.
5         * tests/i18n.lisp: New file. i18n tests fine
6         on AllegroCL 8/16 bits, SBCL unicode/non-unicode,
7         CCL, and Lispworks 6
8         * src/strings.lisp: Fix an error with decoding
9         strings on CCL.
10
11 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
12         * src/i18n.lisp: Add new function string-to-octets
13
14 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
15         * Version 1.8.1
16         * src/i18n.lisp: Add new function foreign-encoded-string-octets
17
18 2010-02-06 Kevin Rosenberg <kevin@rosenberg.net>
19         * Version 1.8.0
20         * src/strings.lisp: Initial support for external-formats with
21         foreign strings.
22
23 2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
24         * Version 1.7.3
25         * src/primitives.lisp: Fix symbol name
26
27 2010-02-05 Kevin Rosenberg <kevin@rosenberg.net>
28         * Version 1.7.2
29         * src/i18n.lisp: New file for supporting non-ASCII foreign strings.
30
31 2010-01-29 Kevin Rosenberg <kevin@rosenberg.net>
32         * Version 1.7.1
33         * src/primitives.lisp: Add :long-long and :unsigned-long-long
34         for lisp implementations that support it. Push uffi:no-long-long
35         on cl:*features* for lisp implementations that don't support it.
36
37 2010-01-28 Kevin Rosenberg <kevin@rosenberg.net>
38         * Version 1.7.0
39         * src/{functions.lisp,objects.lisp,strings.lisp}: Support Lispworks 6
40
41 2007-09-17 Kevin Rosenberg <kevin@rosenberg.net>
42         * doc/Makefile, doc/html.xsl: Change output encoding from
43         ISO-8859-1 to UTF-8
44
45 2007-07-22 Kevin Rosenberg <kevin@rosenberg.net>
46         * Version 1.6.0 (SPECIFICATION CHANGE)
47         * doc/ref_func_libr.xml: Change the specification of
48         load-foreign-library to better match the actual action of the
49         function. Rather than returning NIL for failure to load library,
50         signal an error.
51         * src/libraries.lisp: Rework load-foreign-library to ensure errors
52         are signaled on failure to load library. This was the case for
53         some implementations, change the other implementations to
54         match. (Inconsistency found due to Mark Wooding's remarks)
55
56 2007-04-12 Kevin Rosenberg <kevin@rosenberg.net>
57         * Version 1.5.18
58         * src/functions.lisp: Patch from Ian Eslick for Lispworks 5
59
60 2006-10-10 Kevin Rosenberg <kevin@rosenberg.net>
61         * Version 1.5.17
62         * src/functions.lisp: Patch from Edi Weitz for Lispworks 5/Linux
63
64 2006-09-02 Kevin Rosenberg <kevin@rosenberg.net>
65         * Version 1.5.16
66         * src/libraries.lisp: Add cygwin support
67
68 2006-08-13 Kevin Rosenberg <kevin@rosenberg.net>
69         * Version 1.5.15
70         * src/{objects,strings}.lisp: Add support for Lispworks 5
71         thanks to patches from Bill Atkins
72
73 2006-07-04 Kevin Rosenberg <kevin@rosenberg.net>
74         * Version 1.5.14
75         * src/{objects,strings}.lisp: Apply patch from Edi Weitz
76
77 2006-05-17 Kevin Rosenberg <kevin@rosenberg.net>
78         * Version 1.5.13
79         * src/libraries.lisp: Revert buggy patch from Yaroslav Kavenchuk.
80
81 2006-05-17 Kevin Rosenberg <kevin@rosenberg.net>
82         * Version 1.5.12
83         * src/libraries.lisp: Patch from Yaroslav Kavenchuk to set
84         default drive letters on MS Windows.
85
86 2006-05-11 Kevin Rosenberg <kevin@rosenberg.net>
87         * Version 1.5.11: Export new macro DEF-POINTER-VAR based on patch from
88         James Bielman to support defining variables on platforms which
89         support saving objects, such as openmcl
90
91 2006-04-17 Kevin Rosenberg <kevin@rosenberg.net>
92         * Version 1.5.10: Commit patch from Gary King for openmcl's
93         feature list change
94
95 2005-11-14 Kevin Rosenberg <kevin@rosenberg.net>
96         * Version 1.5.7
97         * src/strings.lisp: Add with-foreign-strings by James Biel
98
99 2005-11-14 Kevin Rosenberg <kevin@rosenberg.net>
100         * Version 1.5.6
101         * src/os.lisp: Remove getenv setter
102
103 2005-11-07 Kevin Rosenberg <kevin@rosenberg.net>
104         * Version 1.5.5
105         * src/os.lisp: Add support for getenv getter and setter
106
107 2005-09-17 Kevin Rosenberg <kevin@rosenberg.net>
108         * Version 1.5.4
109         * src/objects.lisp: prepend _ character for entry
110         point on Allegro macosx, patch by Luis Oliveira
111
112 2005-07-05 Kevin Rosenberg <kevin@rosenberg.net>
113         * Version 1.5.0
114         * Remove vestigial LLGPL license notices as UFFI as been
115         BSD-licensed for several years.
116
117 2005-06-09 Kevin Rosenberg <kevin@rosenberg.net>
118         * Version 1.4.39
119         * tests/objects.lisp: Rename from pointers.lisp.
120         Fix test CHPTR.4 as noted by Jorg Hohle
121         * src/objects.lisp: Remove default from ensure-char-integer
122
123 2005-06-09 Kevin Rosenberg <kevin@rosenberg.net>
124         * Version 1.4.38
125         * src/libraries.lisp: Commit patch from Edi Weitz to
126         allow plain filename library names to allow underlying
127         lisp implementation to find foreign libraries in the
128         locations known to the operating system.
129         * tests/cast.lisp: Add :module keyword as noted by Jorg Hohle.
130         * src/strings.lisp: Avoid multiple evaluation of input
131         parameters for macros as noted by Jorg Hohle.
132
133 2005-04-12 Kevin Rosenberg <kevin@rosenberg.net>
134         * Version 1.4.37
135         * src/strings.lisp: Fix variable name
136
137 2005-04-04 Kevin Rosenberg <kevin@rosenberg.net>
138         * src/strings.lisp, src/aggregates.lisp: Support change in SBCL copy
139         function [Thanks for Nathan Froyd and Zach Beane]
140
141 2005-04-03 Kevin Rosenberg <kevin@rosenberg.net>
142         * src/objects.lisp: Commit patch from James Bielman to add
143         def-foreign-var support for OpenMCL
144
145 2005-03-03 Kevin Rosenberg <kevin@rosenberg.net>
146         * src/primitives.lisp: Add support for :union types
147         [patch from Cyrus Harmon]
148         * tests/union.lisp, tests/structs.lisp: Tests for
149         union and structure types [from Cyrus Harmon]
150
151 2005-02-22 Kevin Rosenberg <kevin@rosenberg.net>
152         * src/primitives.lisp, src/strings.lisp: Better support
153         for sb-unicode [from Yoshinori Tahara and R. Mattes]
154
155 2005-01-22 Kevin Rosenberg <kevin@rosenberg.net>
156         * src/primitives.lisp: Better support SBCL-AMD64
157
158 2004-11-08 Kevin Rosenberg <kevin@rosenberg.net>
159         * src/strings.lisp: Better support sb-unicode
160         * tests/compress.lisp: Support sb-unicode
161
162 2004-10-07 Kevin Rosenberg <kevin@rosenberg.net>
163         * src/objects.lisp: Add new function:
164         convert-from-foreign-usb8
165
166 2004-04-15 Kevin Rosenberg <kevin@rosenberg.net>
167         * src/objects.lisp: Add new functions:
168         MAKE-POINTER and POINTER-ADDRESS
169
170 2004-04-13 Kevin Rosenberg <kevin@rosenberg.net>
171         * src/string.lisp: Add new FOREIGN-STRING-LENGTH
172
173 2003-08-15 Kevin Rosenberg <kevin@rosenberg.net>
174         * Added with-cast-pointer and def-foreign-var (patches submitted
175         by Edi Weitz).
176         * Added many new tests
177
178 2002-10-16 Kevin Rosenberg <kevin@rosenberg.net>
179         * Added support for SBCL and SCL
180
181 2002-09-29 Kevin Rosenberg <kevin@rosenberg.net>
182         * Numerous changes in openmcl support (uffi now supports
183         clsql on openmcl)
184
185 2002-09-19 Kevin Rosenberg <kevin@rosenberg.net>
186         - Integrate John Desoi's OpenMCL support into src-mcl
187         * examples/Makefile: add section for building on MacOS X (John Desoi)
188         * examples/test-examples: changed from mk: to asdf: package loading (KMR)
189         * examples/run-examples: changed from mk: to asdf: package loading (KMR),
190         add conditional loading if UFFI not loaded (John Desoi)
191         * examples/compress.cl: Add dylib to library types for MacOSX (John Desoi),
192         converted compressed output to hexidecimal display (KMR)
193         * examples/union.cl: Rework the tests (KMR)
194         * src-main/libraries.cl: add dylib as default library type on MacOSX (John Desoi)
195         * src-main/aggregates.cl: convert from uffi type in deref-array (John Desoi)
196
197 2002-09-16 Kevin Rosenberg <kevin@rosenberg.net>
198         - Restructure directories to move to a asdf definition file
199         without pathnames.
200
201 2002-08-25 Kevin Rosenberg <kevin@rosenberg.net>
202        - Restructure directories to attempt to properly handle both
203         Common Lisp Controller and non-CLC systems
204
205 2002-08-17 Kevin Rosenberg <kevin@rosenberg.net>
206         - add uffi.asd for ASDF users
207
208 2002-08-01 Kevin Rosenberg <kevin@rosenberg.net>
209         - Restructure directories to improve Common Lisp Controller v3
210         compatibility
211
212 2002-07-25 Kevin Rosenberg <kevin@rosenberg.net>
213         - Rework handling of logical pathnames.
214         - Move run-examples.cl to examples directory.
215
216 2002-06-28 Kevin Rosenberg <kevin@rosenberg.net>
217         - Added size-of-foreign-type function.
218
219 2002-06-26 Kevin Rosenberg <kevin@rosenberg.net>
220         - Fix bug in Lispworks allocate-foreign-object
221         - Added new :unsigned-byte type. Made :byte signed.
222
223 2002-04-27 Kevin Rosenberg <kevin@rosenberg.net>
224         - misc files
225         First debian version
226
227 2002-04-23 Kevin Rosenberg <kevin@rosenberg.net>
228         - doc/*
229         Updated to debian docbook catalog
230
231 2002-04-23 John DeSoi (desoi@mac.com)
232         * src/mcl/*
233         Improved MCL support
234
235 2002-04-06 Kevin Rosenberg <kevin@rosenberg.net>
236         * src/mcl/libraries.cl:
237         Removed unnecessary function and added find-foreign-library
238         * src/mcl/*.cl:
239         Added authorship for John DeSoi
240         * doc/ref.sgml:
241         Added documentation for find-foreign-library
242         * uffi.system:
243         Simplied logical pathnames and MCL loading
244
245 2002-04-04 John DeSoi (desoi@mac.com)
246         * src/mcl/*.cl
247         Added initial support for MCL
248
249 2002-04-02 Kevin Rosenberg <kevin@rosenberg.net>
250         * src/libraries.cl:
251         Added test for .so libraries on CMUCL and use sys::load-object-file instead
252         of alien:load-library-file
253         * examples/Makefile:
254         Updated defaults so library is created correctly on Linux, FreeBSD, and Solaris
255
256 2002-04-02 Kevin Rosenberg <kevin@rosenberg.net>
257         * examples/compress.cl:
258         Fixed missing '/'
259         * examples/union.cl:
260         Added support for SPARC big-endian
261         * test-examples.cl:
262         Automated testing suite
263
264 2002-04-01 Kevin Rosenberg <kevin@rosenberg.net>
265         * src/libraries.cl:
266         * examples/Makefile:
267         Changed default type for FreeBSD and updated Makefile for
268         FreeBSD and Solaris. Enhanced find-foreign-library to
269         take a list of types to search.
270         * examples/compress.cl:
271         Add support to use find-foreign-library
272
273 2002-03-31  Kevin Rosenberg <kevin@rosenberg.net>
274         * src/strings.cl:
275         Fixed bug in with-foreign-string (Thanks Harald Hanche-Olsen)
276         * examples/Makefile:
277         Create a .a library file for FreeBSD
278         * src/libraries.cl:
279         Added default type and find-foreign-library functions
280
281 2002-03-29  Kevin Rosenberg <kevin@rosenberg.net>
282         * src/objects.cl:
283         Fixed bug in deref-pointer (Thanks John Desoi!)
284
285 2002-03-22  Kevin Rosenberg <kevin@rosenberg.net>
286         * src/aggregates.cl:
287         Changed name and implementation of def-array to more appropriate
288         def-array-pointer
289         * src/ref.sgml:
290         Updated def-array-pointer documentation
291         * src/primitives.cl:
292         Made results of def-constant equal those of cl:defconstant
293         * src/objects.cl:
294         Made type be evaluated for with-foreign-object and allocate-foreign-object
295         * VERSION:
296         Increase to 0.3.0 to coincide with the release of CLSQL.
297
298 21 Mar 2002
299         * Fixed problem with NULL foreign-strings with CMUCL
300         * Added c-test-fns to examples for allow more specific testing
301         of UFFI. Builds on UNIX and Win32 platforms.
302         * Added def-union function, added union.cl example
303         * Fixed error with ensure-char-[character|integer]
304         * Added 2-d array example to examples/arrays.cl
305         * Fixed documentation error on gethostname
306         * Added ensure-char-* and def-union to documentation
307         * Added double-float vector example to c-test-fns
308         * Reworked cstring on Lispworks to have LW handle string conversion
309         * First pass at with-foreign-object -- unoptimized
310         * Added gethostname2 example which uses with-foreign-object
311         * Added char-array-to-pointer function to encapsulate
312         converting a char array to a char pointer
313         * Converted with-foreign-object to use stack allocation on CMUCL and LW
314         * Added benchmark code, first file is for allocation
315
316 20 Mar 2002
317         * Updated strings.cl so that foreign-strings are always unsigned.
318         Fixes a problem with strtol example.
319         * Added ensure-char-character and ensure-char-integer to handle
320         differences in implementations dereferencing of (* :char).
321         * Added section on design priorities for UFFI
322         * Added section in TODO on splitting implementation-dependent code
323
324 19 Mar 2002
325         * Added size parameter to allocate-foreign-object. Creates an array
326         of dimensions size.
327         * Got array-2d example working with a 1-d array.
328         * Cleaned strtol example
329         * Added TODO file
330
331 18 Mar 2002
332         * Documentation fixes (Erik Winkels)
333         * Fixed missing '.' in CMUCL type declarations (Erik Winkels)
334
335 17 Mar 2002
336         * Changed deref-pointer so it always returns a character when
337         called with a :char or :unsigned-char type
338         * Removed function ensure-char as no longer needed
339         * Added missing :byte specifier to Lispworks
340         * Changed default string type in Lispworks to :unsigned-char
341         which is the native type for Lispworks foreign-strings.
342         * Reworked strtol to handle new character pointing method
343
344 16 Mar 2002
345         * Fixed return value in load-foreign-library (Thanks Erik Winkels),
346         modified routine to accept pathnames as well as strings.
347         * Fix documention with :pointer-void (Again, Erik Winkels)
348         * Added missing type specifiers for CMUCL (Thanks a bunch, Erik!)
349
350 15 Mar 2002
351         * Finished basic skeleton of documentation.
352
353 14 Mar 2002
354         * Changed license to more liberal Lisp Lessor GNU Public License
355         * Fixed problem with uffi.system absent from in distribution
356         (Thanks John DeSoi)
357         * Fixed compiler warnings
358
359 11 Mar 2002
360         * Changed def-type to def-foreign-type
361         * Created new macro def-type to generate cl:deftype forms. Removed
362         uffi-declare and uffi-slot-type as they are no longer necessary.
363
364 10 Mar 2002
365         * Modified input parameters to load-foreign-library
366         * Added to documention
367         * Changed parameter order in get-slot-value and deref-array
368
369 9 Mar 2002
370         * Added to documentation
371         * Made Allegro CL array access more efficient
372         * Changed def-routine name to def-function
373         * Fixed bug in def-function for Lispworks]
374         * Fixed error in +null-c-string-pointer+ name
375         * Fixed error in (make-null-pointer) for Lispworks
376         * Reworked Lispwork c-strings to be (* :char) rather than the
377         implementation default of (* (:unsigned :char)) to be consistent
378         with CMUCL. Bumped version to 0.2.0 because of change this change.
379         * Renamed c-string to cstring to emphasize it as a basic type
380         * Modified getenv.cl example to avoid name collison with LW
381         * Modified compress.cl to setup output buffer as :unsigned*char
382         * Added test-all-examples function. All routines tested okay with
383         ACL, LW, and CMUCL
384
385 8 Mar 2002
386         * Added ZIP file output with LF->CRLF translations to distribution
387         * Modified def-enum to use uffi:def-constant rather than
388         cl:defconstant