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