-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix setting _p_changed when removing from small Python BTrees/TreeSets. #13
Fix setting _p_changed when removing from small Python BTrees/TreeSets. #13
Conversation
…fix for #11 was incomplete.
…ddition. This impacted things like zope.index.topic.filter
It turns out that plain |
- TBD | ||
- Fix _p_changed when removing items from small pure-Python | ||
BTrees/TreeSets and when adding to Sets. See: | ||
https://github.com/zopefoundation/BTrees/issues/13 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't we also re-fix #11? Should be mentioned here (so that folks who experienced the bug in 4.1.2 know to expect that it is fixed).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Issue 11 was about adding to the Tree versions; that didn't change here. This issue handles adding to the non-Tree Sets, as well as removing from Trees. I'm not sure how to reword the change entry to make it more clear, but I'm open to any suggestions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, I do see that it mentions the sets.
I'm good to merge this once the changelog is updated. |
Fix setting _p_changed when removing from small Python BTrees/TreeSets.
Released via: https://pypi.python.org/pypi/BTrees/4.1.3 |
Sadly, the fix for #11 was incomplete (sorry) and failed to handle removal, which bit us testing our application under PyPy. This PR handles removal and adds test cases for it.
Example test failures before the fix:
Twice, out of many test runs, I saw the following test failure for Python2.7. I'm pretty sure it's unrelated: