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

📦 only install the Python component of MQT Core in Python package builds #609

Merged
merged 2 commits into from
May 24, 2024

Conversation

burgholzer
Copy link
Member

Description

This PR adapts the scikit-build-core configuration so that it only installs the Python bindings module instead of the whole library. On my linux desktop, this reduced the wheel size from roughly 40MB down to roughly 650KB.

If we really want to also ship the project libraries with the Python package, we will probably have to go with shared libraries and appropriately manage symbol visibility to keep the shared libraries as small as possible.

Fixes #530

Checklist:

  • The pull request only contains commits that are related to it.
  • I have added appropriate tests and documentation.
  • I have made sure that all CI jobs on GitHub pass.
  • The pull request introduces no new warnings and follows the project's style guidelines.

@burgholzer burgholzer added fix Fix for something that isn't working Core Anything related to the Core library and IR packaging Anything related to Python packaging labels May 23, 2024
@burgholzer burgholzer added this to the MQT Core milestone May 23, 2024
@burgholzer burgholzer self-assigned this May 23, 2024
@burgholzer burgholzer enabled auto-merge (squash) May 23, 2024 17:31
Signed-off-by: burgholzer <burgholzer@me.com>
@burgholzer burgholzer merged commit 4a8839f into main May 24, 2024
33 checks passed
@burgholzer burgholzer deleted the smaller-python-wheels branch May 24, 2024 08:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Core Anything related to the Core library and IR fix Fix for something that isn't working packaging Anything related to Python packaging
Projects
Status: Done
Status: Done
Development

Successfully merging this pull request may close these issues.

✨ Smaller Python wheels
1 participant