Starting with tag: [TAG 0.9.2 Luis Oliveira **20060908205321] [Forgot to increment the version number in the .asd file again. Luis Oliveira **20060908205602] [uffi-compat: implement missing macro DEF-POINTER-VAR Luis Oliveira **20060910015547 Reported by Ricardo Alves. ] [Fixed typo in %callback Daniel Dickison **20060912160327] [bindings.lisp: load-directory Luis Oliveira **20060925141345 - Use pathname-device and pathname-host to more accurately get the current directory on, for example, windows. Bug report and initial fix by Yaroslav Kavenchuk. ] [ECL port update Luis Oliveira **20061012220014 - Fixed the port to architectures without dynamical FFI. - Tests with too large number of arguments (> 34) are marked as expected to fail. Patch courtesy of Juan Jose Garcia-Ripoll. ] [Add declarations to cffi-sbcl.lisp Luis Oliveira **20061012224706 Patch courtesy of Yaroslav Kavenchuk. ] [Use ECL's RT. Luis Oliveira **20061013002817] [CMUCL: pick up new callback trampolines after loading core Luis Oliveira **20061117032832 Patch courtesy of Bart Botta. ] [New function: CFFI-SYS:NATIVE-NAMESTRING Luis Oliveira **20061117033120 - Use it to load foreign libraries. Using plain CL:NAMESTRING was causing trouble with OpenMCL where (namestring #p"foo.bar.baz") returns "foo\\.bar.baz". ] [Fix typo in strings.lisp Luis Oliveira **20061117033535] [Bugfixes for ECL/DFFI Luis Oliveira **20061203032620 Patch courtesy of Juan Jose Garcia-Ripoll. ] [Fix WITH-POINTER-TO-VECTOR-DATA on recent SBCLs Luis Oliveira **20061208085224 Patch courtesy of Stelian Ionescu. ] [Correctly handle duplicate loading of libraries in CMUCL. Luis Oliveira **20061219194553 Patch courtesy of Stelian Ionescu. ] [clisp: copy-in/out implementation of with-pointer-to-vector-data Luis Oliveira **20061220221141 Patch courtesy of Stelian Ionescu. ] [stdcall, namespaces, close-foreign-library Luis Oliveira **20070214124058 Three new features: - stdcall (defcfun, foreign-funcall(-pointer), defcallback) - namespaces, associate foreigns vars and functions to a specific library. (CLISP and Lispworks only) - close-foreign-library actually works now. Backwards incompatible changes: - define-foreign-library's syntax changed slightly, can't load more than one foreign library per define-foreign-library form anymore. - defcvar's syntax changed. - foreign-funcall can't funcall pointers anymore. Use foreign-funcall-pointer for that. ] [Remove finalizers. Users can use trivial-garbage instead. Luis Oliveira **20070214125318] [Generate more meaningful errors for invalid enums Luis Oliveira **20070214125726 Reported by Lars Nostdal. ] [Fix conflict Luis Oliveira **20070214132212] [Update documentation with stdcall/namespace/close-foreign-library changes Luis Oliveira **20070214144215] [Fix load-foreign-library bug Luis Oliveira **20070214195457 load-foreign-library wasn't accepting non-symbol library designators correctly. Bug reported by Stelian Ionescu. ] [Simplify load-foreign-library-error. Luis Oliveira **20070222000828] [Update TODO list Luis Oliveira **20070222004917 Removed some stuff that's already been implemented, etc... ] [New file: uffi-compat/uffi.asd Luis Oliveira **20070222005213] [Type system overhaul Luis Oliveira **20070219011856 The changes are summarized here: http://article.gmane.org/gmane.lisp.cffi.devel/1029 Also adapted tests and examples and uffi-compat. ] [Documentation update Luis Oliveira **20070222003330 - doc/Makefile: split spec and manual targets. - First documentation update reflecting the type system changes. Not complete yet. - Mention cffi-grovel. - Fix h4 margins in style.css. ] [defctype and define-foreign-type: warn if type name is a keyword or CL symbol. Luis Oliveira **20070317001532] [cffi-lispworks: don't pass NIL to register-module Luis Oliveira **20070329052606 Bug reported by Jack Unrue. ] [New TODO item about multiple versions of the manual Luis Oliveira **20070413134202] [Update comments in cffi-corman.lisp Luis Oliveira **20070413134241] [Update status in cffi-scl.lisp Luis Oliveira **20070413134343] [manual: add new *foreign-library-directories* example Luis Oliveira **20070413135416] [New example: mapping.lisp Luis Oliveira **20070413141102] [tests/Makefile: x86_64 changes Luis Oliveira **20070404060214] [fix conflict Luis Oliveira **20070415182619] [Add :class option to defcstruct Luis Oliveira **20070416205312] [Unexported and undocumented array type and operators Luis Oliveira **20070416213326 Based on code by Vasilis M. ] [load-foreign-library-path: show useful error messages Luis Oliveira **20070601033126] [Misc whitespace and reformating changes Luis Oliveira **20070601033709] [New documentation example using defcstruct and :count Luis Oliveira **20070601033804] [libraries.lisp: use *QUERY-IO* for the USE-VALUE restart Luis Oliveira **20070601034150] [with-foreign-objects: use &body instead of &rest Luis Oliveira **20070601034243 Reported by Frank Buss. ] [gmake, sparc/hppa and libraries.lisp Luis Oliveira **20070601035026 - cffi-tests.asd: use gmake on solaris too. - new cffi-features: sparc[64] and hppa[64], SCL-only. (updated the respective test) - libraries.lisp: handle ERROR instead of SIMPLE-ERROR. - tests/bindings.lisp: bugfix? Patch courtesy of Douglas Crosher. ] [Add DEFCTYPE* for Verrazano. Luis Oliveira **20070605215554] [Export DEFINE-PARSE-METHOD Luis Oliveira **20070607005840 Bug reported by Chun Tian. ] [Check for possible cycles created with DEFCTYPE[*] Luis Oliveira **20070607201117 Bug reported by Attila Lendvai. ] [Fix check-for-typedef-cycles Luis Oliveira **20070608015901 Patch courtesy of Douglas Crosher. ] [manual: fix :pointer documentation Luis Oliveira **20070618141334] [New type alias: cffi:foreign-pointer Luis Oliveira **20070618141413 - foreign-pointer: deftyped to sb-sys:system-area-pointer, ccl:macptr, etc. - manual: document it. - new tests: pointerp.1 and pointerp.2. ] [cffi-uffi-compat: fix deref-pointer Luis Oliveira **20070620173741 Bug reported by Aurelio Bignoli. ] [Slight change to :SIMPLE-PARSER's semantics Luis Oliveira **20070719182519] [Remove tabs from cffi-ecl.lisp Luis Oliveira **20070719182543] [Make libtest work with MSVC8 Luis Oliveira **20070727221628] [Get rid of SBCL warnings in tests/foreign-globals.lisp Luis Oliveira **20070730022547] [Handle docstrings properly in DEFCFUN. Luis Oliveira **20070730060953 - DEFCFUN would complain when given a docstring but no argument list. - Add test. ] [Fix stdcall tests. Luis Oliveira **20070730205407] [Add AllegroCL 8.1 support masayuki.onjo@gmail.com**20070816035650] [Minor indentation fixes to cffi-allegro.lisp Luis Oliveira **20070816140803 - Also use (eval size) instead of checking for (integerp size) in the previous patch for Allegro 8.1 support. ] [Don't discard DEFCFUN docstrings. Luis Oliveira **20070820131701 - Pass them to the underlying DEFUN or DEFMACRO. - Add tests. ] [fix: missing eval-when tomi.borbely@gmail.com**20070625144550] [Fix indentation in defctype* Luis Oliveira **20070901191050] [cffi-openmcl: fix test for cffi-features:darwin Luis Oliveira **20071214010923 - Check for :darwin-target instead of :darwinppc-target. ] [Fix export name: MAKE-SHAREABLE-BYTE-VECTOR Luis Oliveira **20080214224834 Reported by David Brown. ] [clisp: make WITH-POINTER-TO-VECTOR-DATA return the result of BODY Luis Oliveira **20080214225730 Bug report and initial patch courtesy of David Brown. ] [cmucl: fix error handling in %LOAD-FOREIGN-LIBRARY Luis Oliveira **20080214232647 Patch courtesy of Matthias Benkard. ] [Added with-foreign-strings attila.lendvai@gmail.com**20070625145911] [New functions: foreign-enum-keyword-list and foreign-bitfield-symbol-list Luis Oliveira **20070706003929] [sbcl: don't declare pointer addresses as ub32 Luis Oliveira **20071210173046 - That obviously breaks for 64-bit platforms. ] [New test: LIBRARY.ERROR.1 Luis Oliveira **20071213145907] [clisp: use UNWIND-PROTECT in WITH-POINTER-TO-VECTOR-DATA. Luis Oliveira **20080217001813 - New tests: SHAREABLE-VECTOR.[12] ] [cffi-tests: restore support for 32-bit lisps running on x86-64 Luis Oliveira **20080405162858] [cffi-clisp: add support for the upcoming 2.45 version Luis Oliveira **20080405205412 CLISP 2.45 introduces a couple of backwards-incompatible changes to some of the unexported FFI functions we use. ] [Clozure CL chokes on the CALLBACKS.BFF.* tests, disabled them Luis Oliveira **20080406221310] [Fix bitrot in cffi-ecl.lisp Luis Oliveira **20080406232533] [Small optimization in PARSE-TYPE Luis Oliveira **20080406232852 Don't need to check for cycles (which starts off by consing up a hash table) when not dealing with foreign-typedefs. Initial patch courtesy of Greg Pfeil. ] [Implemented simple compiler-macro for FOREIGN-ALLOC Luis Oliveira **20080406233331] [Define FOREIGN-LIBRARY class before it's used... Luis Oliveira **20080406233631] [cffi-tests: Lispworks needs to have libm.so loaded Luis Oliveira **20080407111146] [TAG before cffi+lotsastuff merge Luis Oliveira **20080531141112] [Integrate cffi-grovel Luis Oliveira **20070617231923 Added a groveller based on Dan Knap's and Matthew Backes's cffi-grovel and Stelian Ionescu's fork iolib-grovel. cffi-grovel is inspired by SBCL's groveller. This is a preliminary version. Includes a new wrapper generator syntax to simplify the writing of C glue libraries among other minor features. - Updated TODO items related to grovelling. - Integrated documentation into the CFFI manual. - src/libraries: use ".so" as the default library suffix. ] [manual: Use @deffn instead of @itemize for grovel forms. Luis Oliveira **20070618082056] [Encoding support using Babel Luis Oliveira **20070608022612 - Preliminary (likely buggy) version. Includes documentation and tests. - New cffi-features: big-endian and little-endian determined with CFFI code. - Needs cleaning up. ] [add :null-teminated-p keyword param to foreign-string-alloc tomi.borbely@gmail.com**20070625144637] [Added :byte-size-variable keyword arg to with-foreign-string attila.lendvai@gmail.com**20070625145836] [Added remove-from-plist into cffi-utils, copied from alexandria attila.lendvai@gmail.com**20070625145923] [Use the foreign-pointer type in strings.lisp Luis Oliveira **20070628154056] [WITH-FOREIGN-STRING changes Luis Oliveira **20070629204256 - WITH-FOREIGN-STRING's new syntax: with-foreign-string (binding &rest args) &body binding := { var | (var &optional byte-size-var) } - Update the documentation, not complete. - New test: STRING.CONVERSION.BASIC.2 ] [cffi-manual: small change to the grovel example Luis Oliveira **20070629205005] [cffi-grovel: slightly better handling of packages Luis Oliveira **20070629205115 - in-package now has a read time effect on *package* which will determine to which package various symbols (such as type names) will belong to. ] [Don't autoexport grovel definitions. Luis Oliveira **20070706003642] [cffi-grovel: defwrapper: handle foreign/lisp names Luis Oliveira **20070706003836] [with-foreign-pointer-as-string: take additional arguments Luis Oliveira **20070706130018 Changed to match the new WITH-FOREIGN-STRING syntax. Document later. ] [Foreign string changes Luis Oliveira **20070708034538 - LISP-STRING-TO-FOREIGN takes new arguments START, END and OFFSET. Also, instead of bailing out when STRING needs more octets than BUFSIZE, it fills in as much as possible. - test STRING.SHORT-WRITE.1 now passes. - FOREIGN-STRING-TO-LISP takes new argument MAX-CHARS. ] [Fix "endianness" typo Luis Oliveira **20070708035010] [Remove outdated comments re test string.short-write.1 Luis Oliveira **20070709190222] [Bug fixes Luis Oliveira **20070717031151 - Fix :LICENSE -> :LICENCE in cffi-grovel.asd - grovel.lisp fixes: * fix OpenMCL's INVOKE * have INVOKE call NATIVE-NAMESTRING * add IGNORABLE declaration to DEFINE-GROVEL-SYNTAX - CMUCL's EXT:UNIX-NAMESTRING is buggy, don't use it. - strings.lisp: pass missing max-octets argument to OCTET-COUNTER in FOREIGN-STRING-ALLOC. ] [Update strings.lisp to match Babel's accessor changes. Luis Oliveira **20070717031627] [FOREIGN-STRING-TO-LISP: return number of octets read Luis Oliveira **20070717033110 - Update test suite to reflect this change. ] [Use trivial-features. Luis Oliveira **20070719182016 Not sure if this is a great idea yet. In any case, CFFI-FEATURES is still there for backwards compatibility for the time being. ] [New feature: emulated long-long types Luis Oliveira **20070719182557 (initial suggestion and patch courtesy of Stelian Ionescu) - Update test suite to reflect this. - Tested on Allegro and Lispworks. Should work for ECL as well. ] [Remove outdated TODO items Luis Oliveira **20070720020208] [Minor change to src/types.lisp Luis Oliveira **20070720020227] [cffi-grovel: x86-64 compat changes Luis Oliveira **20070726183645 - use :long instead of :int to try and determine word size. - use -fPIC for 64-bit shared libraries. ] [grovel: use :[u]int64 without worries Luis Oliveira **20070726195250 No need to check for cffi-features:no-long-long now that we have emulated long long type. ] [Adjustments for using cffi-grovel on windows. Luis Oliveira **20070729012113] [grovel: constantenum: signal warnings properly Luis Oliveira **20070729012200] [grovel: fix invoke-cc's conditional library arguments Luis Oliveira **20070729044812] [Cleaned up compiler invokation by the groveller. Stelian Ionescu **20070729193633] [grovel: fix conflict and indentation Luis Oliveira **20070729195747] [New macro: DEFINE-C-STRUCT-WRAPPER Luis Oliveira **20070730022329 With tests STRUCT-WRAPPER.[12] ] [grovel: fix symbol names in in-package forms Luis Oliveira **20070730040942] [grovel: update comment regarding cstruct-and-class Luis Oliveira **20070730205330] [Add new types :intptr and :uintptr Luis Oliveira **20070730231111] [grovel: fix FORM-KIND Luis Oliveira **20070801143432] [Fix use of PROGN form by the groveller. Stelian Ionescu **20070801144656] [grovel: ugh, fix wording in form-kind comment Luis Oliveira **20070801145618] [grovel: fix invoke on clisp/win32 Luis Oliveira **20070803202545] [grovel: fix handling of alternatives in constantenum Luis Oliveira **20070803202607] [grovel: fix defwrapper handling of types in #'cffi-type Luis Oliveira **20070806014001] [Fix WITH-FOREIGN-POINTER-AS-STRING return values Luis Oliveira **20070806014305 - Don't return second value of FOREIGN-STRING-TO-LISP. ] [Don't use aggresive compilation declarations in BABEL-ENCODINGS:I-C-M. Luis Oliveira **20070813194957] [Add missing :after qualifier in DEFINE-C-STRUCT-WRAPPER. Luis Oliveira **20070813201639] [Update tests to reflect changes in WITH-FOREIGN-POINTER-AS-STRING Luis Oliveira **20070813230427] [Fix strings.lisp Luis Oliveira **20070813230454 - Work around apparent SBCL bug. - Handle :RE endianness in BGET and BSET. ] [grovel: fix Lispworks's %INVOKE Luis Oliveira **20070823032714] [Fix WITH-FOREIGN-POINTER-AS-STRING usage in examples. Luis Oliveira **20071208222510] [Fix WITH-FOREIGN-POINTER-AS-STRING usage in examples. (again) Luis Oliveira **20071208222804] [Unicode string update Luis Oliveira **20071210102001 - Remove outdated comments. - Use BABEL:SIMPLE-UNICODE-STRING type. - Document *DEFAULT-FOREIGN-ENCODINGS*. - Add :FREE-FROM-FOREIGN and :FREE-TO-FOREIGN boolean parameters to the :STRING type. ] [Make sure that the groveller can handle nested PROGN forms. Stelian Ionescu **20071221204127] [Simplify :[u]intptr definitons. Luis Oliveira **20080225231321 - This patch makes CMUCL happier. ] [uffi-compat: fix bitrot in CONVERT-FROM-FOREIGN-STRING Luis Oliveira **20080316132603 Reported by Christophe Rhodes. Passes all of uffi-tests again. ] [Mark DEFCFUN.VARARGS.DOCSTRING as an expected failure on CLISP Luis Oliveira **20080405205812] [cffi-lispworks: add long-long support on 64-bit platforms Luis Oliveira **20080407105414 Initial patch and testing courtesy of Tian Chun. ] [Groveler: small fix for ECL. Stelian Ionescu **20080208224019] [Add groveler directive for inline C code, as for the wrapper. Stelian Ionescu **20080405231846] [Add dependency on ALEXANDRIA, remove redundant code from CFFI-UTILS package. Stelian Ionescu **20071230233920] [Fix conflict in cffi-openmcl.lisp Luis Oliveira **20080531141647] [Minor fixes to cffi-manual.texinfo Luis Oliveira **20080531163724 Restores buildability. Courtesy of Rupert Swarbrick. ] [added support for :cc-flags for grovel-file to specify additional flags to the compiler (like -I /foo/bar) attila.lendvai@gmail.com**20080517190231] [minor change to foreign-string-to-lisp Luis Oliveira **20080601045624 Make max-chars default to (1- array-total-size-limit). ] [Update manual Luis Oliveira **20080601051732 - Fix @result{} in the HTML output. - Revamp the "Implementation support" chapter. - Fix misc documentation rot. - Delete empty sections. - Document the emulation of long-long types. - Remove UTF-8 characters since texinfo has not entered the 21st century yet. - Finish the documentation for the new encoding support. ] [cffi-manual: @section CMUCL -> @subheading Luis Oliveira **20080602200707] [cffi-openmcl: fix name conflict Luis Oliveira **20080602200804 - Import just alexandria:once-only instead of the whole package. Reported by Marko Manninen. ] [Fix emulation of [UNSIGNED-]LONG-LONG. Stelian Ionescu **20080509143516] [Remove cffi-utils Luis Oliveira **20080603222841] [Makefile: rename acl to alisp Luis Oliveira **20080603223008] [cffi-sbcl: needs when-let as well. Luis Oliveira **20080604034503] [fix groveller by adding symbolicate to alexandria attila.lendvai@gmail.com**20080604211729] [Eliminate all references to cffi-utils package. Stelian Ionescu **20080605065042] [Update make-shareable-byte-vector for LW 5.1 Luis Oliveira **20080610201920 Patch courtesy of Chun Tian. ] [tests/Makefile: deal with BSD systems properly Luis Oliveira **20080616000610 Suggestion and initial patch courtesy of Josh Elsasser. ] [Expand body only once for uffi:with-cstring. Stephen Compall **20080723044729] [CMUCL: fix NATIVE-NAMESTRING Luis Oliveira **20080728152940 - NAMESTRING didn't expand search lists. Actually read the documentation for UNIX-NAMESTRING this time and figured out why it appeared to be misbehaving in the past. ] [Small fixes and simplifications to the TEST-OPs Luis Oliveira **20080728153146] [Expect STRING.ENCODING.UTF-16.BASIC and STRING.ENCODINGS.ALL.BASIC failures Luis Oliveira **20080728224210] [cffi-tests: test stdcall only on win32 Luis Oliveira **20080728224803] [Use BABEL:UNICODE-STRING instead of STRING in a few places. Luis Oliveira **20080729002834] [Fix alignment information for emulated long long types. Luis Oliveira **20080729002927] [cffi-tests: mark some expected failures for lispworks Luis Oliveira **20080729002959] [cffi-tests: use Babel's #\ syntax Luis Oliveira **20080729003026] [cffi-tests: mark defcfun.noop as expected for CCL Luis Oliveira **20080729003748] [cffi-tests: mark expected failures for allegro. Luis Oliveira **20080729004154] [ECL: support long long on x86-64 by treating it as long. Luis Oliveira **20080729021220] [ECL: handle FILE-ERRORs in %LOAD-FOREIGN-LIBRARY Luis Oliveira **20080729021409] [cffi-tests: mark a few expected failures for ECL Luis Oliveira **20080729021553] [doc/Makefile: have upload-docs target build the manual first Luis Oliveira **20080729023240] [New and improved release script. Luis Oliveira **20080729023339] [Use :import-from for alexandria symbols. Luis Oliveira **20080729121754] [Deprecate cffi-features. Luis Oliveira **20080729124201 - Keep it around for backwards compatibility. - Don't use it from CFFI itself or the test suite. - Update the manual. ] [Add Installation chapter to the manual. Luis Oliveira **20080729131641] [update cffi.asd for version 0.10.0 Luis Oliveira **20080729140233] [TAG 0.10.0 Luis Oliveira **20080729140237] [Small fix to gendocs.sh to make same versions of bash happier. Luis Oliveira **20080729142533] [Fix typo in the manual. Luis Oliveira **20080729225554] [port uffi-compat to Clozure Stephen Compall **20080820221030] [update cffi.asd for version 0.10.1 Luis Oliveira **20080820225950] [TAG 0.10.1 Luis Oliveira **20080820225954] [manual/groveller: fix ctype's documentation Luis Oliveira **20080822133130 Reported by Stelian Ionescu. ] [manual: restore colorization workingness Luis Oliveira **20080822140947] [Make groveler directive CONSTANT more robust. Stelian Ionescu **20080822141527 If a constant's name is a keyword, change it to a symbol interned in the current package. ] [Add option DEFINE-CONSTANTS to groveler directives CENUM and CONSTANTENUM. Stelian Ionescu **20080822141800 If DEFINE-CONSTANTS is non-null, the enum members will also be defined as constants. ] [Small fix to the manual: use @var instead of @code in CENUM and CONSTANTENUM docs. Stelian Ionescu **20080822143956] [Add option BASE-TYPE to groveler directives CENUM and CONSTANTENUM. Stelian Ionescu **20080822144342] [Add wrapper directives PROCLAIM and DECLAIM. Stelian Ionescu **20080830083833]