* Tue Jul 22 2025 Dirk Müller <dmueller@suse.com>
- update to 3.5.2:
* optimize util.random_p() by also using bitwise AND in final
step
* fix DeprecationWarning regarding u type code
* add verification tests for internals of util.random_p()
* optimize util.random_p() for n < 100
* add Random Bitarrays documentation
* add statistical tests for random functions
* Sat Jul 12 2025 Dirk Müller <dmueller@suse.com>
- update to 3.5.0:
* add util.random_p()
* improve sparse compression testing
* Thu Jul 03 2025 John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 3.4.3
* minor updates to documentation
* C-level:
- simplify and speedup `extend_unicode01()`
- customize `resize_lite()` - avoid unused code
- use `PyTypeObject` for bitarray type object in `_util.c` to
be consistent with `_bitarray.c`
- add and improve comments to implementation of sparse bitarray
compression
- simplify `sc_count()`
* Fri Jun 06 2025 Steve Kowalik <steven.kowalik@suse.com>
- Switch to pyproject macros.
* Fri May 30 2025 John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 3.4.2
* extend documentation of
[compression of sparse bitarrays](sparse_compression.rst)
* `util.sc_decode()` and `util.vl_decode()` now raise `StopIteration`
instead of `ValueError` when unexpected end of stream is encountered
* add debug mode tests for `read_n()`, `write_n()` and `count_from_word()`
* Sat May 17 2025 Martin Hauke <mardnh@gmx.de>
- Update to version 3.4.1
* add `pyproject.toml`, see #233
* implement `bits2bytes()` in C.
* optimize `delslice()` when `step` is larger than about 5.
* consistently name `*_span()` and `*_range()` in C for
invert, set and count.
* organize and add tests.
* Wed May 14 2025 John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 3.4.0
* remove `.endian()` method in favor of data descriptor `.endian`
* allow bitarray initializer `bytes` or `bytearray` to set buffer directly
* allow calling `.extend()` with `bytes` object (although the only
valid bytes are 0x00 and 0x01)
* add `util.byteswap()`
* add `util.correspond_all()`
* fix `.reverse()` for imported buffer
* drop Python 3.5 support
* add tests
* Mon May 05 2025 John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 3.3.2
* fix off-by-one-error in check for length of count argument
in `util.canonical_decode()`
* simplify `util.int2ba()`
* add tests
* add [masked indexing example](../examples/masked.py)
* add [tricks example](../examples/tricks.py)
* Thu Apr 24 2025 Dirk Müller <dmueller@suse.com>
- update to 3.3.1:
* remove License classifier in favor of a SPDX license
expression, #231
* reorganize and cleanup many tests
* add optional group and sep arguments' to .to01(), #230 - as
well as util.ba2hex() and util.ba2base()
* ignore whitespace in util.base2ba() and util.hex2ba()
* check for embedded nul characters when extending (and
initializing) bitarray from string
* improve testing
* add double precision floating point number example
* Tue Mar 25 2025 Nico Krapp <nico.krapp@suse.com>
- Update to 3.2.0
* add `util.xor_indices()`, #229
* add Hamming code example
- Update to 3.1.1
* updated `pythoncapi_compat.h` for pypy3.11 support, see #227
* use `__builtin_parityll()` when available in `util.parity()`
* add `parity_64()` to header
* simplify some tests
* add LFSR example
- Update to 3.1.0
* allow mask assignment to bitarrays, see #225
* add missing masked operations to pyi-file
* refactor `resize()` and avoid overallocation when downsizing buffer
* update `build_wheels.yml`
* fix some typos
* minor simplifications
* rename `growth/` example to `resize/` and add tests for `resize()`
* update gene example
* add comments
Version: 1.2.1-bp152.1.5
* Tue Mar 24 2020 Martin Hauke <mardnh@gmx.de>
- Run testsuite
* Sun Mar 22 2020 Martin Hauke <mardnh@gmx.de>
- 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 2019 Andres Ayala <killerrex@gmail.com>
Version 1.0.1:
- fix readme to pass ``twine check``
* Mon Jul 15 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 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 2019 killerrex@gmail.com
Version 0.9.2:
- fix fail to compile on Windows with VS 2015, issue #72
* Sun Apr 28 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 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 02 2018 killerrex@gmail.com
- Migrate to singlespec
* Thu Oct 24 2013 speilicke@suse.com
- Require python-setuptools instead of distribute (upstreams merged)
* Thu May 16 2013 jfunk@funktronics.ca
- Rename test skip patch
* Sat May 11 2013 jfunk@funktronics.ca
- Initial release