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