Commit Graph

9 Commits

Author SHA1 Message Date
rdb b806035c40 putil: Switch to new Python 3.13+ public long APIs for BitArray 2025-12-31 20:06:03 +01:00
rdb e01cb590de Merge branch 'release/1.10.x' 2023-10-13 23:24:48 +02:00
Mitchell Stokes 893f5ce492 Fix assert on Py_SIZE(long) when using Python 3.12
Starting with Python 3.12, passing a PyLong into Py_SIZE() triggers an
assertion. PyLong (and the whole C API) is transitioning to be more
opaque and expose fewer implementation details.
2023-10-13 10:54:33 +02:00
rdb 93900a203e putil: Backport part of 9d8c523dfa
Fixes #886
2020-11-17 23:36:06 +01:00
rdb d01c53c2d8 Merge branch 'release/1.10.x' 2020-06-14 13:02:25 +02:00
rdb a9b158192f putil: fix crash in BitArray::has_any_of() 2020-06-14 12:55:52 +02:00
rdb ba010168cf tests: more improvements to test suite coverage 2020-04-25 14:44:43 +02:00
rdb a01711148b tests: add an assorted variety of unit tests
I'm mostly trying to make sure we have over-coverage for a couple of places that are being hit intermittently by our current unit tests, generating noisy codecov reports.  If we make sure these places are hit always, we hopefully won't have codecov misreport lost/gained coverage for unrelated changes.
2020-04-02 13:45:09 +02:00
rdb 9d8c523dfa putil: Assorted improvements to BitArray, SparseArray, *BitMask*:
* Support converting BitMask types to int
* BitArray constructor accepts a Python long of arbitrary size
* DoubleBitMask (and QuadBitMask, by extension) supports Python long in constructor
* Support for pickling (except DoubleBitMask)
* All of them now properly define __bool__()
* More unit tests

Fixes #886
2020-04-01 20:31:16 +02:00