-
-
Notifications
You must be signed in to change notification settings - Fork 1
fix: setting __config_file__ and __line__
#23
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
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #23 +/- ##
==========================================
+ Coverage 94.21% 94.85% +0.64%
==========================================
Files 8 10 +2
Lines 380 389 +9
Branches 52 53 +1
==========================================
+ Hits 358 369 +11
+ Misses 11 10 -1
+ Partials 11 10 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
CodSpeed Performance ReportMerging #23 will improve performances by 15.42%Comparing Summary
Benchmarks breakdown
|
__config_file__ and __line__
jpbede
left a comment
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.
Nice! LGTM, thanks 👍
|
thanks |
TLDR: Setting
__config_file__and__line__on the cython object meant they were not always readable in pure python. This turned out to be a corner case with dunder names.Cythonizing the
Node*Classobjects proved to be unneeded anyways since the cost of small functions is better optimized by cythonizing the constructors. Make sure they are set using the object protocol instead since there is no concern about if it will only work in Cython.Summary of changes
objects.pysince it caused the issue above_add_reference..calls inreference.pysince its all the same to_add_reference_to_node_classnow that there is no value in cythonizing them. Add a check and test forstart_markbeingNone_handle_mapping_tag,_construct_seq, and_handle_scalar_tagtoconstructors.pyso they can be cythonized instead - no changes to these functions other than calls to_add_reference_to_node_class_add_referencetoreference_object.pyto avoid circular reference - changed functions calls to_add_reference_to_node_classand an unreachable branch that was not obvious before because the typing is incorrect here as input can beintas well (existing long standing problem, not something to be fixed in this PR as I didn't want to make this larger)