-
-
Notifications
You must be signed in to change notification settings - Fork 174
Unquoting improvements #1529
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
Open
Vizonex
wants to merge
11
commits into
aio-libs:master
Choose a base branch
from
Vizonex:Unquoting-Improvements
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Unquoting improvements #1529
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I made this thing after finding out how restrictive CPython's String API Was and knew that using and joining a list would be too heap expensive Not to mention reference counting. I'll be testing this in a bit to ensure it works.
for more information, see https://pre-commit.ci
CodSpeed Performance ReportMerging #1529 will degrade performances by 72.21%Comparing Summary
Benchmarks breakdown
|
how is that a regression do I stand corrected? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What do these changes do?
How do I keep finding things to optimize??? I got rid of the list in the unquoter and I replaced it with a custom unicode writer I wrote. I'm gonna allow anybody to use it as they wish since it's got a feature where it's able to dynamically handle unicode characters but now we can get rid of needing to join a bunch of python objects all at one time.
Are there changes in behavior for the user?
There's a new technique in the Unquoter that allocates the same amount of memory as the string it's taking in to be examined and decoded. This should be an optimization and not a performance bottleneck now.
Related issue number
Checklist