ci: enable numba testing in 3.14t#696
Conversation
| assert class_refs == sys.getrefcount(vector.backends.object.VectorObject2D) | ||
| assert ( | ||
| abs(class_refs - sys.getrefcount(vector.backends.object.VectorObject2D)) | ||
| <= 1 | ||
| ) |
There was a problem hiding this comment.
The refcount fluctuates between +- 1 and is different in each step of the loop locally. I thought just bounding it is fine to make the test pass. Same for the other two cases below.
There was a problem hiding this comment.
Do we know why this is happening? Is there something in Numba's changelog?
There was a problem hiding this comment.
Honestly I have no idea and I tried investigating very briefly without finding anything out. Then I had claude take a shot at it to make the test pass without adding the +-1 bound for an hour without a result. It was doing trial n error but the += 1 looked random so it couldn't find a predicable assertion. I can take a more detailed look in the numba changes I guess.
There was a problem hiding this comment.
Do we know why this is happening? Is there something in Numba's changelog?
Python 3.14t has broken the assumption that reference counts are deterministic and immediate.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #696 +/- ##
=======================================
Coverage 86.81% 86.81%
=======================================
Files 96 96
Lines 11197 11197
=======================================
Hits 9721 9721
Misses 1476 1476 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Saransh-cpp
left a comment
There was a problem hiding this comment.
Thanks a lot for looking into this, @ikrommyd! Please see my comments below:
| assert class_refs == sys.getrefcount(vector.backends.object.VectorObject2D) | ||
| assert ( | ||
| abs(class_refs - sys.getrefcount(vector.backends.object.VectorObject2D)) | ||
| <= 1 | ||
| ) |
There was a problem hiding this comment.
Do we know why this is happening? Is there something in Numba's changelog?
Numba now has 3.14t wheels. We should enable testing.
Partially reverts the dependency split done in #676 for the exact reason that numba did not have wheels at the time.