py313-use-format-unraisable.patch
py313-use-hashpointer.patch: add upstream patches for py3.13
support
testsuite failures with Python 3.11
* Revert "grovel: detect :float and :double in the :auto type"
* no upstream changelog provided
* no upstream changelog provided
* CPython 3 on Windows: we again try to compile with Py_LIMITED_API by default
- Update pytest in spec to add c directory tests in addition to
messages.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cffi?expand=0&rev=97
- Add support for Python 3.12. With the removal of distutils
from Python 3.12, projects using CFFI features that depend on
distutils at runtime must add a dependency on setuptools to
function under Python 3.12+. CFFI does not declare a runtime
setuptools requirement to avoid an unnecessary dependency for
projects that do not require it.
- Drop support for end-of-life Python versions (2.7, 3.6, 3.7).
- Move project source under src/; a more standard layout that
also enables CI to more easily catch packaging errors.
- Move project home to python-cffi/cffi on GitHub.
- Add support for PEP517 builds; setuptools is now a required
build dependency.
- Declare python_requires metadata for Python 3.8+. This allows
unsupported Pythons to continue using previously released
sdists and wheels.
- Add missing calls to PyObject_GC_UnTrack to avoid
ResourceWarning 15c4b71
- Remove upstreamed patch
8a3c2c816d789639b49d3ae867213393ed7abdff.patch
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cffi?expand=0&rev=92
* Fixed MANIFEST.in to include missing file for Windows arm64 support
* Fixed Linux wheel build to use gcc default ISA for libffi
* Updated setup.py Python trove specifiers to currently-tested Python versions
* CPython 3.10 support (including wheels)
* MacOS arm64 support (including wheels)
* Initial Windows arm64 support
* Misc. doc and test updates
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cffi?expand=0&rev=82
* CFFI source code is now hosted on Heptapod.
* Improved support for typedef int my_array_t[...]; with an explicit dot-dot-dot in API mode (issue #453)
* Windows (32 and 64 bits): multiple fixes for ABI-mode call to functions that return a structure.
* Experimental support for MacOS 11 on aarch64.
* and a few other minor changes and bug fixes.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cffi?expand=0&rev=71
- drop patches: 3184b0a675fc425b821b528d7fdf744b2f08dadf.patch
7a76a381534012af4790e815140d1538510b7d93.patch
e2e324a2f13e3a646de6f6ff03e90ed7d37e2636.patch
* Direct support for pkg-config.
* ffi.from_buffer() takes a new optional first argument that gives the array
type of the result. It also takes an optional keyword argument require_writable
to refuse read-only Python buffers.
* ffi.new(), ffi.gc() or ffi.from_buffer() cdata objects can now be released
at known times, either by using the with keyword or by calling the new ffi.release().
* Accept an expression like ffi.new("int[4]", p) if p is itself another cdata int[4].
* CPython 2.x: ffi.dlopen() failed with non-ascii file names on Posix
* CPython: if a thread is started from C and then runs Python code
(with callbacks or with the embedding solution), then previous versions of cffi
would contain possible crashes and/or memory leaks.
* Support for ffi.cdef(..., pack=N) where N is a power of two.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cffi?expand=0&rev=59
- update to 1.10.0:
* Issue #295: use calloc() directly instead of PyObject_Malloc()+memset()
to handle ffi.new() with a default allocator. Speeds up ffi.new(large-array)
where most of the time you never touch most of the array.
* Some OS/X build fixes (“only with Xcode but without CLT”).
* Improve a couple of error messages: when getting mismatched versions of
cffi and its backend; and when calling functions which cannot be called with
libffi because an argument is a struct that is “too complicated” (and not
a struct pointer, which always works).
* Add support for some unusual compilers (non-msvc, non-gcc, non-icc, non-clang)
* Implemented the remaining cases for ffi.from_buffer. Now all
buffer/memoryview objects can be passed. The one remaining check is against
passing unicode strings in Python 2. (They support the buffer interface, but
that gives the raw bytes behind the UTF16/UCS4 storage, which is most of the
times not what you expect. In Python 3 this has been fixed and the unicode
strings don’t support the memoryview interface any more.)
* The C type _Bool or bool now converts to a Python boolean when reading,
instead of the content of the byte as an integer. The potential
incompatibility here is what occurs if the byte contains a value different
from 0 and 1. Previously, it would just return it; with this change, CFFI
raises an exception in this case. But this case means “undefined behavior”
in C; if you really have to interface with a library relying on this,
don’t use bool in the CFFI side. Also, it is still valid to use a byte
string as initializer for a bool[], but now it must only contain \x00 or
\x01. As an aside, ffi.string() no longer works on bool[] (but it never made
much sense, as this function stops at the first zero).
* ffi.buffer is now the name of cffi’s buffer type, and ffi.buffer() works
like before but is the constructor of that type.
* ffi.addressof(lib, "name") now works also in in-line mode, not only in
out-of-line mode. This is useful for taking the address of global variables.
OBS-URL: https://build.opensuse.org/request/show/507126
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-cffi?expand=0&rev=35