-
Notifications
You must be signed in to change notification settings - Fork 2
Black ruff mypy #7
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
Conversation
Spare me some time to fix CI. |
Sure. Suggest you go over the commit text too, you will find things that require eyes to review. From QA perspective a test that can actually test hsr, would be good. In the mean time I'll ty around a few things. |
@erthink mentioned on telegram. MDBX supports zero-size keys and values, which can be interpreted as NULL. That means that the signature bytes | None would be actually correct. It obviously depend if we want to expose it as b'' or None. I guess adding a test for such situation is good. |
|
Then I need to figure out in what case None is a current 'valid' reply. But I'll take a peak at that too. I'll wait for your CI setup, and review. |
This fixes the issue where MDBXCursorOp was misaligned, and failed SET_RANGE. Implements a SET_RANGE unit test.
Allow rw_traaction to pass the parentxn Implement a unit test to test a parent_txn
Implement a test that checks for null byte termination and length.
I think our users expect that when the provide bytes (or in that respect an integer converted to bytes) this is opened as-is. The option mdbx_dbi_open is effectively null terminated.
py3.9 will die in 1 month: https://endoflife.date/python Let's bump 3.10 |
Every function is ran against black, ruff and mypy.
I think we should still do some work to make sure that the get and iter functions will not result "None, None" depending if that is feasible from mdbx. I think it would make the code checking a lot safer, and less bytes|None, bytes|None.
There have been made some significant changes, including evident bug fixes. I would suggest, if merged, not to squash, but keep the individual commits.