Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #234 +/- ##
=======================================
Coverage 97.67% 97.67%
=======================================
Files 24 24
Lines 1074 1074
Branches 162 162
=======================================
Hits 1049 1049
Misses 12 12
Partials 13 13 |
|
The transition to c++ was done in https://github.com/nucleic/atom/pull/182/files#diff-e9ee00a921e9e460fd604a1d6fa1541ee97e2767aac2f335dd1448567d9d6ebfL648-L658 and we simply copied what existed on the Python side. When unpickling an object (I do not consider other possible abuse of |
|
I think I may have been lazy when implementing get/set state back in the day, just to get it out the door. I think it's reasonable to assume that a call to But as you say, that might be a breaking change. Another thing that I would do very differently if afforded the opportunity. |
MatthieuDartiailh
left a comment
There was a problem hiding this comment.
LGTM but can you investigate the Python 3.13 failure
83e27cb to
cf0d164
Compare
|
|
||
| // If the -f key is present freeze the object | ||
| bool frozen = PyMapping_HasKey(state, atom_flags); | ||
| #if PY_VERSION_HEX >= 0x030D0000 |
There was a problem hiding this comment.
I checked the documentation of this function but I do not understand why we need to use it here. Since we do not have the CI failure history, can you explain @frmdstryr ?
There was a problem hiding this comment.
I think it's just a warning but pytest still makes it fail: See the log here https://github.com/nucleic/atom/actions/runs/12874904293/job/35895250664 .
The HasKeyWithError version makes more sense anyways.
There was a problem hiding this comment.
Thanks. It really shows what a bad job PyMapping_Check does. I will merge.
Any suggestions for improvements are welcome: