Skip to content
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

gh-128630: Optimize marshalled data handling by using bytearray instead of bytes #128631

Closed
wants to merge 2 commits into from

Conversation

Stelios-X
Copy link

Summary

This optimizes the handling of marshalled data in the _freeze_module.py script by using bytearray instead of bytes. This change improves performance when writing the data to the output file, as bytearray is mutable and can be modified in place.

Changes Made

  1. Function compile_and_marshal:

    • Changed the return type from bytes to bytearray.
    • Converted the marshalled bytes to bytearray.
  2. Function write_code:

    • Updated the parameter type from bytes to bytearray.

Copy link

cpython-cla-bot bot commented Jan 8, 2025

All commit authors signed the Contributor License Agreement.
CLA signed

@bedevere-app
Copy link

bedevere-app bot commented Jan 8, 2025

Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply the skip news label instead.

@bedevere-app
Copy link

bedevere-app bot commented Jan 8, 2025

Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply the skip news label instead.

@JelleZijlstra
Copy link
Member

Just changing the type annotations won't make anything faster. Please test your change first and show benchmarks that prove that it improves performance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants