-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathCHANGELOG
162 lines (108 loc) · 3.09 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
0.9.3
-----
* Based on Clang/LLVM 13.0.0
0.9.2
-----
* Based on Clang/LLVM 12.0.1
* Removed support for Python < 3.6
* Added support for Python 3.10
0.9.1
-----
* Add the LazyJITWrappers option in Python bindings
0.9.0
-----
* C++ compilation mode where extern "C" functions can be called
* FFI wrappers are now only compiled when needed, dividing cdef loading time by ~2
0.8.0
-----
* Support saving errno/LastError for system functions (closes #62)
* Based on Clang/LLVM 11.1
0.7.0
-----
* Based on Clang/LLVM 11
0.6.3
-----
* Python: add support to create a pointer with an arbitrary value
0.6.2
-----
* Fix Python 2.7mu wheels
0.6.1
-----
* Fix issue with alias functions
0.6.0
-----
* Add API to add custom symbols
* Add API to get base address of dlopen'ed libraries
* Python: fix creation of functions by their type and absolute address
* Python: allow creation of pointers with an arbitrary value
0.5.1
-----
* Support for inline anonymous members in structs/unions. Bug found by @Neitsa.
0.5.0
-----
* Based on LLVM8
* Many bug fixes
0.4.0
-----
* Based on LLVM7
* Use pybind11 2.2.4
0.3.0
-----
Python API changes:
* remove CFunction::call
* remove old and redundant getFunction/get*Type APIs
* Move typeof/sizeof/alignof/ptr APIs to pydffi, as they do not need the
FFI object to be called, and are generic C "builtins".
Improvements:
* Better python API for arrays
* CArrayObj iterator API
* All CObj objects now have a QualType, to honor various constness
* Generate a memoryview of a CObj as a sequence of bytes
* Generate a multi-dimensional memoryview of CArrayObj (if relevant)
* Rebase pybind11 on 2.2.3
* APIs to get the LLVM IR of function wrappers
Bug fixes:
* fix type promotion for arrays when calling C functions (invalid cast
array->pointer)
* bug in pybind11 (?): format buffer of a memoryview can become invalid
0.2.3
-----
Improvements:
* Better python API for arrays
Bug fixes:
* Support pointer to arrays as function arguments
* Fix in DFFICtx for arrays: arrays of the same type with a different number of
elements could be considered equal!
0.2.2
-----
Features:
* Support for variadic functions
* Official support of the library for Linux/AArch64
Improvements:
* Use the real C basic types as DFFI's basic types. This has a side effect that
stdint.h isn't needed anymore for the wrappers code!
* Python bindings: create a union object from its python type
Bug fixes:
* Some functions (like malloc, printf, ...) that are pre-declared by clang
weren't considered by cdef
* Support inline functions in cdef
* Fix support for (u)int128_t and complex types!
0.2.1
-----
Features:
* Support for Windows 10 x64, with bindings for Python 3
0.2.0
-----
Features:
* Support for the C99 boolean type
* Support for OSX x86 32/64 bits
* Support for Linux x86 32 bits
* Support for typedefs in cdef
Bug fixes:
* the UnknownField and AllocError exceptions were not registered in pybind11
* an invalid triple was potentially used by the LLVM JITer
* {Complex,}Float{32,64,128} are renamed into
{Complex,}{Float,Double,LongDouble} (closer to the C reality)
0.1.0
-----
Initial version