New in 1.7.0 ------------ * Added a pyeclib-backend tool to list backends, check their availability, test failure modes, and benchmark encode and decode operations. * Added support for a new isa_l_rs_vand_inv backend. * Binary wheels now bundle liberasurecode==1.7.1 and ISA-L==2.31.1 * Various packaging improvements and modernization. * Dropped support for Python versions 2.7, 3.5, 3.6, 3.7, 3.8, and 3.9. * Various other minor bugs fixes and improvements New in 1.6.4 ------------ * Binary wheels support a broader range of processors. New in 1.6.3 ------------ * Only destroy liberasurecode descriptors on liberasurecode versions where it should be safe to do so. New in 1.6.2 ------------ * Updated liberasurecode dependency to 1.4.0. For more information, see https://bugs.launchpad.net/pyeclib/+bug/1639691 * Fix a resource leak when creating many ECDrivers. * Test against Python 3.11 - 3.13. * Fix building on free-threaded Python 3.13. * Binary wheels (bundling liberasurecode==1.6.4 and ISA-L==2.31.0) are now published to PyPI. New in 1.6.1 ------------ * Deprecate Jerasure support * Use Py_ssize_t when calling PyArg_Parse * Test against Python 3.8 - 3.10 * Use the Python Stable ABI; abi3 wheels may now be built with python setup.py bdist_wheel --py-limited-api=cp35 * Various other minor bugs fixes and improvements New in 1.6.0 ------------ * Find liberasurecode in more environments * Test against Python 3.7 * Test with more backends New in 1.5.0 ------------ * Added support for Phazr.IO libphazr library. * Fixed error handling that caused segfaults. * Use version number exposed by liberasurecode. * various other minor bugs fixes and improvements. New in 1.4.0 ------------ * Added support for ISA-L Cauchy * Fixed memory leak in get_metadata * Added soft warning log line when using liberasurecode <1.3.1 New in 1.3.1 ------------ * Updated name in setup.py to work with release tooling. New in 1.3.0 ------------ * Updated liberasurecode dependency to 1.2.0. * Fixed memory leak in get_segment_info (Launchpad bug #1604335). * Properly return an error code if liberasurecode returns an invalid fragment size. * ECDriver() now requries "k" and "m" values to be passed in. * Fix some requirements and installation instruction. New in 1.2.1 ------------ * Eliminate spurious syslog messages and added cleaner mechanism for querying all available backends on a system. * Moved source code hosting from bitbucket to Openstack infra. This is first release with Openstack Infra New in 1.2.0 ------------ * Remove integrated liberasurecode - the prereq library is now available in major deb/rpm based distros * Eliminate liberasurecode-related rpath checks, library searches and architecture validation * Changes for compatibility with liberasurecode versions prior to 1.1.0 * Make VALID_EC_TYPES a runtime property - dynamically look for liberasurecode EC schemes available at runtime * More comprehensive unit test coverage * Add travis-ci build config for automated build/tests New in 1.1.0 ------------ * Eliminate pyeclib dependency on alloc functions internal to liberasurecode * Update include subdirs to be explicit * Update internal liberasurecode version to 1.1.0 New in 1.0.9 ------------ * Eliminate rpath handling in setup.py * Clean py34 shared libraries created during build * Fix integer truncation issue with PyBuildValue on Big Endian systems by explicitly casting the size argument passed in to Py_ssize_t. Also fix import issue with the API test where older versions of Python fail to import. * Add --install-liberasurecode option to setup.py. Requested by Red Hat/Debian package maintainers. * Update bundled liberasurecode version to 1.0.9 New in 1.0.8 ------------ * Support for a new Reed-Soloman backend (liberasurecode_rs_vand) - naive, non-accelerated version, native to liberasurecode * Single version, with liberasurecode distributed in the package, installed if necessary. No versions going forward with Jerasure included. Use 'liberasurecode_rs_vand' for default test backend. * Test code refactor for eliminating duplicated code, add cases for liberasurecode_rs_vand and making jerasure/isa_l test cases conditional. * Better Python3 support * setup.py enhancements - improved library path detection on Mac OS X (and Linux) including workarounds for Mac OS X dyld bugs for library search paths - handling installroot better for optional liberasurecode installs * tox support for automated py27 and py34 testing