------------------------------------------------------------------- Wed Sep 30 04:35:36 UTC 2020 - Steve Kowalik - Update to 1.5.3: * add optional index parameter to `.index()` to invert single bit * fix `sys.getsizeof(bitarray)` by adding `.__sizeof__()`, see issue #100 ------------------------------------------------------------------- Mon Aug 31 04:58:58 UTC 2020 - Steve Kowalik - Update to 1.5.2: * add PyType_Ready usage, issue #66 * speedup search() for bitarrays with length 1 in sparse bitarrays, see issue #67 * add tests * support signed integers in `util.ba2int()` and `util.int2ba()`, see issue #85 * deprecate `.length()` in favor of `len()` * Use `Py_ssize_t` for bitarray index. This means that on 32bit systems, the maximun number of elements in a bitarray is 2 GBits. We used to have a special 64bit index type for all architectures, but this prevented us from using Python's sequence, mapping and number methods, and made those method lookups slow. * speedup slice operations when step size = 1 (if alignment allows copying whole bytes) * Require equal endianness for operations: `&`, `|`, `^`, `&=`, `|=`, `^=`. This should have always been the case but was overlooked in the past. * raise TypeError when tring to create bitarray from boolean * This will be last release to still support Python 2.6 (which was retired in 2013). We do NOT plan to stop support for Python 2.7 anytime soon. ------------------------------------------------------------------- Wed Aug 5 00:59:24 UTC 2020 - Steve Kowalik - Update to 1.4.2: * C-level: - simplify pack/unpack code - fix memory leak in `~` operation (bitarray_cpinvert) * add official Python 3.9 support * improve many docstrings * add DeprecationWarning for `bitdiff()` * add DeprecationWarning when trying to extend bitarrays from bytes on Python 3 (`bitarrays(b'011')` and `.extend(b'110')`) * C-level: - rewrote `.fromfile()` and `.tofile()` implementation, such that now the same code is used for Python 2 and 3. The new implementation is more memoery efficient on Python 3. - use memcmp() in richcompare to shortcut EQ/NE, when comparing two very large bitarrays for equality the speedup can easily be 100x - simplify how unpacking is handled * add more tests * add `.clear()` method (Python 3.3 added this method to lists) * avoid overallocation when bitarray objects are initially created * raise BufferError when resizing bitarrays which is exporting buffers * add example to study the resize() function * improve some error messages * raise `NotImplementedError` with (useful message) when trying to call the `.fromstring()` or `.tostring()` methods, which have been removed in the last release ------------------------------------------------------------------- Mon Jul 6 18:40:25 UTC 2020 - Martin Hauke - Update to version 1.3.0 * add `bitarray.util.make_endian()` * `util.ba2hex()` and `util.hex2ba()` now also support little-endian * add `bitarray.get_default_endian()` * made first argument of initializer a positional-only parameter * remove `.fromstring()` and `.tostring()` methods, these have been deprecated 8 years ago, since version 0.4.0 * add `__all__` in `bitarray/__init__.py` * drop Python 3.3 and 3.4 support - Update to version 1.2.2 * `util.ba2hex` now always return a string object (instead of bytes object for Python 3), see issue #94 * `util.hex2ba` allows a unicode object as input on Python 2 * Determine 64-bitness of interpreter in a cross-platform fashion #91, in order to better support PyPy ------------------------------------------------------------------- Tue Mar 24 18:38:34 UTC 2020 - Martin Hauke - Run testsuite ------------------------------------------------------------------- Sun Mar 22 16:28:34 UTC 2020 - Martin Hauke - Update to version 1.2.1 * simplify markdown of readme so PyPI renders better * make tests for bitarray.util required (instead of warning when they cannot be imported) - Update to version 1.2.0 * add bitarray.util module which provides useful utility functions * deprecate `bitarray.bitdiff` in favor of `bitarray.util.count_xor` * use markdown for documentation * fix bug in .count() on 32bit systems in special cases when array size is 2^29 bits or larger * simplified tests by using bytes syntax * update smallints and sieve example to use new utility module * simplified mandel example to use numba * use file context managers in tests - Update to version 1.1.0 * add frozenbitarray object * add optional start and stop parameters to .count() method * add official Python 3.8 support * optimize setrange() C-function by using memset * fix issue #74, bitarray is hashable on Python 2 * fix issue #68, `unittest.TestCase.assert_` deprecated * improved test suite - tests should run in about 1 second * update documentation to use positional-only syntax in docstrings * update readme to pass Python 3 doctest * add utils module to examples - Specfile cleanup ------------------------------------------------------------------- Fri Jul 19 00:00:00 UTC 2019 - Andres Ayala Version 1.0.1: - fix readme to pass ``twine check`` ------------------------------------------------------------------- Mon Jul 15 00:00:00 UTC 2019 - killerrex@gmail.com Version 1.0.0: - fix bitarrays beings created from unicode in Python 2 - use ``PyBytes_*`` in C code, treating the Py3k function names as default, which also removes all redefinitions of ``PyString_*`` - handle negative arguments of .index() method consistently with how they are treated for lists - add a few more comments to the C code - move imports outside tests: pickle, io, etc. - drop Python 2.5 support ------------------------------------------------------------------- Mon May 20 00:00:00 UTC 2019 - killerrex@gmail.com Version 0.9.3: - refactor resize() - only shrink allocated memory if new size falls lower than half the allocated size - improve error message when trying to initialize from float or complex ------------------------------------------------------------------- Mon Apr 29 00:00:00 UTC 2019 - killerrex@gmail.com Version 0.9.2: - fix fail to compile on Windows with VS 2015, issue #72 ------------------------------------------------------------------- Sun Apr 28 00:00:00 UTC 2019 - killerrex@gmail.com Version 0.9.1: - fix types to actually be types, #29 - check for ambiguous prefix codes when building binary tree for decoding - remove Python level methods: encode, decode, iterdecode (in favor of having these implemented on the C-level along with check_codedict) - fix self tests for Python 2.5 and 2.6 - move all Huffman code related example code into examples/huffman - add code to generate graphviz .dot file of Huffman tree to examples ------------------------------------------------------------------- Mon Apr 22 00:00:00 UTC 2019 - killerrex@gmail.com Version 0.9: - more efficient decode and iterdecode by using C-level binary tree instead of a python one, #54 - added buffer protocol support for Python 3, #55 - fixed invalid pointer exceptions in pypy, #47 - made all examples Py3k compatible - add gene sequence example - add official Python 3.7 support - drop Python 2.4, 3.1 and 3.2 support ------------------------------------------------------------------- Wed May 2 10:04:07 UTC 2018 - killerrex@gmail.com - Migrate to singlespec ------------------------------------------------------------------- Thu Oct 24 10:59:15 UTC 2013 - speilicke@suse.com - Require python-setuptools instead of distribute (upstreams merged) ------------------------------------------------------------------- Thu May 16 17:58:51 UTC 2013 - jfunk@funktronics.ca - Rename test skip patch ------------------------------------------------------------------- Sat May 11 00:41:15 UTC 2013 - jfunk@funktronics.ca - Initial release