File python-cffi.changes of Package python-cffi

-------------------------------------------------------------------
Mon Apr 11 14:45:11 UTC 2016 - jmatejek@suse.com

- update to 1.5.2
  * support for cffi-based embedding
  * more robustness for shutdown logic

-------------------------------------------------------------------
Sat Jan  9 17:18:52 UTC 2016 - michael@stroeder.com

- update to version 1.4.2:
  * Nothing changed from v1.4.1.
- changes from version 1.4.1:
  * Fix the compilation failure of cffi on CPython 3.5.0. (3.5.1
    works; some detail changed that makes some underscore-starting
    macros disappear from view of extension modules, and I worked
    around it, thinking it changed in all 3.5 versions—but no: it was
    only in 3.5.1.)
- changes from version 1.4.0:
  * A better way to do callbacks has been added (faster and more
    portable, and usually cleaner). It is a mechanism for the
    out-of-line API mode that replaces the dynamic creation of
    callback objects (i.e. C functions that invoke Python) with the
    static declaration in cdef() of which callbacks are needed. This
    is more C-like, in that you have to structure your code around the
    idea that you get a fixed number of function pointers, instead of
    creating them on-the-fly.
  * ffi.compile() now takes an optional verbose argument. When True,
    distutils prints the calls to the compiler.
  * ffi.compile() used to fail if given sources with a path that
    includes "..". Fixed.
  * ffi.init_once() added. See docs.
  * dir(lib) now works on libs returned by ffi.dlopen() too.
  * Cleaned up and modernized the content of the demo subdirectory in
    the sources (thanks matti!).
  * ffi.new_handle() is now guaranteed to return unique void * values,
    even if called twice on the same object. Previously, in that case,
    CPython would return two cdata objects with the same void *
    value. This change is useful to add and remove handles from a
    global dict (or set) without worrying about duplicates. It already
    used to work like that on PyPy. This change can break code that
    used to work on CPython by relying on the object to be kept alive
    by other means than keeping the result of ffi.new_handle()
    alive. (The corresponding warning in the docs of ffi.new_handle()
    has been here since v0.8!)
- changes from version 1.3.1:
  * The optional typedefs (bool, FILE and all Windows types) were not
    always available from out-of-line FFI objects.
  * Opaque enums are phased out from the cdefs: they now give a
    warning, instead of (possibly wrongly) being assumed equal to
    unsigned int. Please report if you get a reasonable use case for
    them.
  * Some parsing details, notably volatile is passed along like const
    and restrict. Also, older versions of pycparser mis-parse some
    pointer-to-pointer types like char * const *: the “const” ends up
    at the wrong place. Added a workaround.
- changes from version 1.3.0:
  * Added ffi.memmove().
  * Pull request #64: out-of-line API mode: we can now declare
    floating-point types with typedef float... foo_t;. This only works
    if foo_t is a float or a double, not long double.
  * Issue #217: fix possible unaligned pointer manipulation, which
    crashes on some architectures (64-bit, non-x86).
  * Issues #64 and #126: when using set_source() or verify(), the
    const and restrict keywords are copied from the cdef to the
    generated C code; this fixes warnings by the C compiler. It also
    fixes corner cases like typedef const int T; T a; which would
    previously not consider a as a constant. (The cdata objects
    themselves are never const.)
  * Win32: support for __stdcall. For callbacks and function pointers;
    regular C functions still don’t need to have their calling
    convention declared.
  * Windows: CPython 2.7 distutils doesn’t work with Microsoft’s
    official Visual Studio for Python, and I’m told this is not a
    bug. For ffi.compile(), we removed a workaround that was inside
    cffi but which had unwanted side-effects. Try saying import
    setuptools first, which patches distutils...

-------------------------------------------------------------------
Thu Sep 17 11:28:00 UTC 2015 - p.drouand@gmail.com

- Update to version 1.2.1
  * No changes entry for this version
- Changes from version 1.2.0
  * Out-of-line mode: ``int a[][...];`` can be used to declare a structure
    field or global variable which is, simultaneously, of total length
    unknown to the C compiler (the ``a[]`` part) and each element is
    itself an array of N integers, where the value of N   *is  * known to the
    C compiler (the ``int`` and ``[...]`` parts around it).    Similarly,
    ``int a[5][...];`` is supported (but probably less useful: remember
    that in C it means ``int (a[5])[...];``).
  * PyPy: the ``lib.some_function`` objects were missing the attributes
    ``__name__``, ``__module__`` and ``__doc__`` that are expected e.g. by
    some decorators-management functions from ``functools``.
  * Out-of-line API mode: you can now do ``from _example.lib import x``
    to import the name ``x`` from ``_example.lib``, even though the
    ``lib`` object is not a standard module object.    (Also works in ``from
    _example.lib import   *``, but this is even more of a hack and will fail
    if ``lib`` happens to declare a name called ``__all__``.    Note that
    ``  *`` excludes the global variables; only the functions and constants
    make sense to import like this.)
  * ``lib.__dict__`` works again and gives you a copy of the
    dict---assuming that ``lib`` has got no symbol called precisely
    ``__dict__``.    (In general, it is safer to use ``dir(lib)``.)
  * Out-of-line API mode: global variables are now fetched on demand at
    every access.    It fixes issue #212 (Windows DLL variables), and also
    allows variables that are defined as dynamic macros (like ``errno``)
    or ``__thread`` -local variables.    (This change might also tighten
    the C compiler's check on the variables' type.)
  * Issue #209: dereferencing NULL pointers now raises RuntimeError
    instead of segfaulting.    Meant as a debugging aid.    The check is
    only for NULL: if you dereference random or dead pointers you might
    still get segfaults.
  * Issue #152: callbacks__: added an argument ``ffi.callback(...,
    onerror=...)``.    If the main callback function raises an exception
    and ``onerror`` is provided, then ``onerror(exception, exc_value,
    traceback)`` is called.    This is similar to writing a ``try:
    except:`` in the main callback function, but in some cases (e.g. a
    signal) an exception can occur at the very start of the callback
    function---before it had time to enter the ``try: except:`` block.
  * Issue #115: added ``ffi.new_allocator()``, which officializes
    support for `alternative allocators`__.
    .. __: using.html#callbacks
    .. __: using.html#alternative-allocators

-------------------------------------------------------------------
Mon Jun  1 18:13:10 UTC 2015 - benoit.monin@gmx.fr

- update to version 1.1.0 (fate#318838):
  * Out-of-line API mode: we can now declare integer types with
    typedef int... foo_t;. The exact size and signedness of foo_t
    is figured out by the compiler.
  * Out-of-line API mode: we can now declare multidimensional
    arrays (as fields or as globals) with int n[...][...]. Before,
    only the outermost dimension would support the ... syntax.
  * Out-of-line ABI mode: we now support any constant declaration,
    instead of only integers whose value is given in the cdef. Such
    “new” constants, i.e. either non-integers or without a value
    given in the cdef, must correspond to actual symbols in the
    lib. At runtime they are looked up the first time we access
    them. This is useful if the library defines extern const
    sometype somename;.
  * ffi.addressof(lib, "func_name") now returns a regular cdata
    object of type “pointer to function”. You can use it on any
    function from a library in API mode (in ABI mode, all functions
    are already regular cdata objects). To support this, you need
    to recompile your cffi modules.
  * Issue #198: in API mode, if you declare constants of a struct
    type, what you saw from lib.CONSTANT was corrupted.
  * Issue #196: ffi.set_source("package._ffi", None) would
    incorrectly generate the Python source to package._ffi.py
    instead of package/_ffi.py. Also fixed: in some cases, if the C
    file was in build/foo.c, the .o file would be put in
    build/build/foo.o.
- additional changes from version 1.0.3:
  * Same as 1.0.2, apart from doc and test fixes on some platforms
- additional changes from version 1.0.2:
  * Variadic C functions (ending in a ”...” argument) were not
    supported in the out-of-line ABI mode. This was a bug—there was
    even a (non-working) example doing exactly that!
- additional changes from version 1.0.1:
  * ffi.set_source() crashed if passed a sources=[..] argument.
    Fixed by chrippa on pull request #60.
  * Issue #193: if we use a struct between the first cdef() where
    it is declared and another cdef() where its fields are defined,
    then this definition was ignored.
  * Enums were buggy if you used too many ”...” in their definition
- additional changes from version 1.0.0:
  * The main news item is out-of-line module generation:
    + for ABI level, with ffi.dlopen()
    + for API level, which used to be with ffi.verify(), now
      deprecated
- add python-cffi-rpmlintrc: cffi specifically installs C headers
  in site-packages
- add new test dependency gcc-c++
- skip the tests on SLE11 since they fail on i586

-------------------------------------------------------------------
Thu Apr 23 06:33:12 UTC 2015 - mcihar@suse.cz

- Update to 0.9.2
  * No upstream changelog
    See https://bitbucket.org/cffi/cffi/commits/all for a list of
    commits

-------------------------------------------------------------------
Tue Aug 26 12:40:34 UTC 2014 - toddrme2178@gmail.com

- Update to 0.8.6
  * No upstream changelog
    See https://bitbucket.org/cffi/cffi/commits/all for a list of
    commits

-------------------------------------------------------------------
Mon May 19 16:35:30 UTC 2014 - jmatejek@suse.com

- update to 0.8.2
  * minor bugfixes
- remove cffi-pytest-integration.patch as it is no longer necessary

-------------------------------------------------------------------
Mon Mar 31 14:18:44 UTC 2014 - speilicke@suse.com

- Require libffi43-devel on SLE_11_SP2 instead of using pkg-config to fix build

-------------------------------------------------------------------
Mon Feb 24 12:09:15 UTC 2014 - mvyskocil@suse.com

- update to 0.8.1
  * fixes on Python 3 on OS/X, and some FreeBSD fixes (thanks Tobias)
- added a note wrt disabled tests
- add cffi-pytest-integration.patch: allowinf call pytest from setup.py

-------------------------------------------------------------------
Mon Nov 18 14:33:39 UTC 2013 - mvyskocil@suse.com

- update to 0.8
  * integrated support for C99 variable-sized structures
  * multi-thread safety
  * ffi.getwinerror()
  * a number of small fixes

-------------------------------------------------------------------
Thu Oct 24 10:59:45 UTC 2013 - speilicke@suse.com

- Require python-setuptools instead of distribute (upstreams merged)

-------------------------------------------------------------------
Mon Sep 30 07:51:11 UTC 2013 - mvyskocil@suse.com

- use pkgconfig(libffi) to get the most recent ffi

-------------------------------------------------------------------
Mon Aug 19 13:27:16 UTC 2013 - mvyskocil@suse.com

- Update to 0.7.2
  * add implicit bool
  * standard names are handled as defaults in cdef declarations
  * enum types follow GCC rules and not just int
  * supports simple slices x[start:stop]
  * enums are handled like ints
  * new ffi.new_handle(python_object)
  * and various bugfixes

-------------------------------------------------------------------
Sun Feb 10 09:28:56 UTC 2013 - saschpe@suse.de

- Initial version

openSUSE Build Service is sponsored by