Revision history for FFI-Platypus
0.20 2015-02-05 14:06:11 -0500
- Added optional wrapper argument to FFI::Platypus#attach
and FFI::Platypus::Declare#attach
- Added FFI::Platypus#find_lib method
- FFI::CheckLib is now a runtime requirement for Platypus
- Bumped Alien::FFI requirement to 0.06
0.19 2015-02-03 13:34:53 -0500
- Accept additional extensions, in addition to dlext
Example: on OS X both .bundle and .dylib can be used
Example: although arguably wrong, on cygwin sometimes .so is used
- Added Module::Build::FFI->ffi_dlext class method
0.18 2015-01-30 15:22:07 -0500
- Improved support for C++ in Module::Build::FFI
- Module::Build::FFI can now be subclassed to support foreign
languages other than C and C++. See Module::Build::FFI::Rust as an
example.
- Added a hook to allow different names for native types. See
FFI::Platypus::Lang::Rust for an example.
- Added a hook to allow mangling of symbol (function) names. See
FFI::Platypus::Lang::CPP for an example with C++
- Module::Build::FFI#ffi_include_dir can now be an array reference
- Module::Build::FFI#ffi_source_dir can now be an array reference
- Module::Build::FFI#ffi_libtest_dir can now be an array reference
- Module::Build::FFI will build assembly source files (with .s
extensions) in the libtest and ffi directories
0.17 2015-01-28 11:11:02 -0500
- Allow integer and floating point type default to 0 when not provided
without warning
- You can now take the sizeof a custom type (it will be the size of
the native type that is actually passed on the C argument stack).
- Sizeof should be faster now as it doesn't look up the other meta
information or create a hash to contain it
- Added record type see FFI::Platypus::Type#Records
- Added bool as a primitive type.
0.16 2015-01-23 17:31:00 -0500
- Bumping Alien::FFI version requirement up to 0.04
Thus indirectly Alien::Base to 0.07
Believe this may fix a cpan testers failure that I am seeing
0.15 2015-01-23 16:46:27 -0500
- add FFI::Platypus#ignore_not_found attribute
- add FFI::Platypus#package method
- Module::Build::FFI was moved into this distribution
(formerly distributed as part of FFI-Util)
- added aliases: uchar, ushort, uint and ulong
0.14 2015-01-22 08:19:42 -0500
- Fixed some broken links in the documentation
0.12 2015-01-21 23:22:16 -0500
- First CPAN release
- Improved documentation
- Functionally identically to 0.11
0.11 2015-01-21 16:33:58 -0500
- Release candidate 2
- arguments are available during custom return type even when
platform does not support alloca
- More documentation and examples
- FFI::Platypus::API now use prototypes so you can skip the ()
0.10 2015-01-20 04:06:17 -0500
- Release candidate 1
- Added custom Types API (see FFI::Platypus::API)
- Added String Pointer custom type (FFI::Platypus::Type::StringPointer)
- Added Pointer / Size Buffer custom type (FFI::Platypus::Type::PointerSizeBuffer)
0.09 2015-01-19 03:01:48 -0500
- Third beta
- moved cast and sizeof from FFI::Platypus::Memory
into FFI::Platypus methods.
- cast and size of functions for FFI::Platypus::Declare
- attach_cast for faster casting
- renamed FFI::Platypus::Declare#function to
FFI::Platypus::Declare#attach to more closely match
the OO interface
- adjusted custom type interface
- renamed ffi_to_perl native_to_perl
- renamed perl_to_ffi perl_to_native
- type argument is now part of the hash and is called
native_type
0.08 2015-01-16 10:55:14 -0500
- Second beta
- add FFI::Platypus::Buffer
stole the buffer functions from FFI::Util
can do this with cast, but cast is slow
- Fixed bug where cast didn't work with closures.
- closure data now free'd when it the closure
goes out of scope (GH#4)
0.07 2015-01-15 18:53:45 -0500
- First (mostly complete) beta
- workaround some issues with closures
- much more comprehensive documentation
0.06 2015-01-14 17:13:57 -0500
- fix typo in last version that broke 32 bit Perls. oops.
0.05 2015-01-14 17:04:25 -0500
- Forth (and mostly complete) alpha
- custom types written in Perl are supported.
- bug fixes for 32 bit Perls (with compilers that support int64_t)
0.04 2015-01-13 11:14:54 -0500
- Third (and incomplete) alpha
- all basic types supported everywhere
- closures do not support non basic types or returning strings from a closure
0.03 2015-01-09 15:40:14 -0500
- Second (and incomplete) alpha
- closure support added (only integer arguments implmented).
- memory leak related to closures will be fixed in the next alpha.
0.02 2015-01-07 17:40:35 -0500
- Early (and incomplete) alpha
0.01 2015-01-07 17:21:27 -0500
- Original (and incompatible) prototype