Package Release Info


Update Info: Base Release
Available in Package Hub : 15 SP2





Change Logs

* Mon May 20 2019
- version update to 4.5.0
  - Fully test the C implementation of the PickleCache, and fix
    discrepancies between it and the Python implementation:
  - Allow sweeping cache without ``cache_size``. ``cache_size_bytes``
    works with ``cache_size=0``, no need to set ``cache_size`` to a
    large value.
  - Require ``CFFI`` on CPython for pure-Python operation. This drops
    support for Jython (which was untested). See `issue 77
  - Fix DeprecationWarning about ``PY_SSIZE_T_CLEAN``.
    See `issue 108 <>`_.
  - Drop support for Python 3.4.
- deleted patches
  - persistent- (not needed)
* Tue Mar 05 2019 Hans-Peter Jansen <>
- Allow build with older distributions
  (%autopatch macro needs an appended empty line)
- Refresh patch persistent-
* Mon Mar 04 2019 Tomá? Chvátal <>
- Update to 4.4.3:
  * Too many changes around see CHANGES.rst
- Do not bother with documentation generating
- Add more dependencies
* Tue Aug 14 2018
- Update to 4.3.0:
  * Fix the possibility of a rare crash in the C extension when
    deallocating items. See
  * Change cPickleCache's comparison of object sizes to determine
    whether an object can go in the cache to use PyObject_TypeCheck().
    This matches what the pure Python implementation does and is
    a stronger test that the object really is compatible with the
    cache. Previously, an object could potentially include
    cPersistent_HEAD and not set tp_base to cPersistenceCAPI->pertype
    and still be eligible for the pickle cache; that is no longer the
    case. See
* Thu Jul 26 2018
- Do not restrict python version makes stuff very unresolvable
* Thu Jul 19 2018
- Clean up SPEC
- Fix tests (persistent- removes failing
* Sat Jun 24 2017
- Update to
  * Packaging-only release: fix Python 2.7 manylinux wheels.
  * Packaging-only release: get manylinux wheel built
  * Avoid raising a SystemError: error return without exception
    set when loading an object with slots whose jar generates an
    exception (such as a ZODB POSKeyError) in setstate.
  * Fix the hashcode of Python TimeStamp objects on 64-bit
    Python on Windows. See
  * Stop calling gc.collect every time PickleCache.incrgc is
    called (every transaction boundary) in pure-Python mode (PyPy).
    This means that the reported size of the cache may be wrong
    (until the next GC), but it is much faster. This should not
    have any observable effects for user code.
  * Stop clearing the dict and slots of objects added to
    PickleCache.new_ghost (typically these values are passed to
    __new__ from the pickle data) in pure-Python mode (PyPy). This
    matches the behaviour of the C code.
  * Add support for Python 3.6.
  * Fix __setstate__ interning when state parameter is not a
    built-in dict
  * Drop use of ctypes for determining maximum integer size, to
    increase pure-Python compatibility. See
  * Ensure that __slots__ attributes are cleared when a
    persistent object is ghostified. (This excluses classes that
    override __new__. See
    new_and_slots if you’re curious.)
  * Fix the hashcode of C TimeStamp objects on 64-bit Python 3
    on Windows.
  * Fixed the Python(/PYPY) implementation TimeStamp.timeTime
    method to have subsecond precision.
  * When testing PURE_PYTHON environments under tox, avoid
    poisoning the user’s global wheel cache.
  * Add support for Python 3.5.
  * Drop support for Python 2.6 and 3.2.
  * Fix manifest and re-upload to fix stray files included in
  * Make the Python implementation of Persistent and PickleCache
    behave more similarly to the C implementation. In particular,
    the Python version can now run the complete ZODB and ZEO test
  * Fix the hashcode of the Python TimeStamp on 32-bit platforms.
- Converted to single-spec
- Dropped fix_32-bit_timestamp_hashcode.patch (fixed upstream)
* Sun May 10 2015
- update to version 4.0.9:
  * Make the C and Python TimeStamp objects behave more alike
  * Intern keys of object state in __setstate__ to reduce memory
    usage when unpickling multiple objects with the same attributes
  * Add support for PyPy3
  * 100% branch coverage
- additional changes from version 4.0.8:
  * Add support for Python 3.4
  * In pure-Python Persistent, avoid loading state in _p_activate
    for non-ghost objects (which could corrupt their state). (PR #9)
  * In pure-Python, and don’t throw POSKeyError if _p_activate is
    called on an object that has never been committed. (PR #9)
  * In pure-Python Persistent, avoid calling a subclass’s
    __setattr__ at instance creation time. (PR #8)
  * Make it possible to delete _p_jar / _p_oid of a pure-Python
    Persistent object which has been removed from the jar’s cache
    (fixes aborting a ZODB Connection that has added objects).
    (PR #7)
- additional changes from version 4.0.7:
  * Avoid a KeyError from _p_accessed() on newly-created objects
    under pure-Python: these objects may be assigned to a jar, but
    not yet added to its cache. (PR #6)
  * Avoid a failure in Persistent.__setstate__ when the state dict
    contains exactly two keys. (PR #5)
  * Fix a hang in picklecache invalidation if OIDs are manually
    passed out-of-order. (PR #4)
  * Add PURE_PYTHON environment variable support: if set, the C
    extensions will not be built, imported, or tested
- update project URL
- point the source URL to pypi
- drop type-mismatch.patch: fixed upstream
- add fix_32-bit_timestamp_hashcode.patch: fix timestamp hash
  computation on 32 bit platform
- pass -q to test to avoid spamming the build log
- rename CHANGES.txt and README.txt to CHANGES.rst and README.rst:
  changed upstream
* Fri Mar 21 2014
- type-mismatch.patch: Use Py_ssize_t rather than PY_LONG_LONG for sizes
* Mon Jul 29 2013
- version 4.0.6: initial build