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

File Limit Request: PySide6_Essentials - 150 MB #1796

Closed
3 tasks done
cmaureir opened this issue Mar 30, 2022 · 4 comments
Closed
3 tasks done

File Limit Request: PySide6_Essentials - 150 MB #1796

cmaureir opened this issue Mar 30, 2022 · 4 comments

Comments

@cmaureir
Copy link
Member

Project URL

https://pypi.org/project/PySide6-Essentials/

Does this project already exist?

  • Yes

New Limit

150

Update issue title

  • I have updated the title.

Which indexes

PyPI, TestPyPI

About the project

The PySide project has been active for many years starting from the initial release in Qt4 (2008), we had the initial release for Qt5 in 2018 with the 5.12 version of the PySide2 project. You can find more information of the project in https://pyside.org

As a first version, we released everything bundled on the same wheel, but with the time we have been noticing the large size is not optimal, so we started to think about plans to split the package into sub-packages.
On the PySide6 wheel package we noticed we included extra files, like a couple of modules we were not using, and debug information for a Qt-related language: QML. We removed those but the wheel was still quite large, and we couldn't keep up uploading more releases to the https://pypi.org/project/PySide6 project. We currently have been investigating compiling flags optimizations that might reduce a couple of MB from our binaries.

We bundle Qt binaries, examples, and documentation.

Reasons for the request

Including a C++ library like Qt does add many MB to the project, and also considering that since a couple of versions ago we have universal binary wheels for our macOS users, which also increased that platform wheels size.

We wanted to start a wheel split process to make PySide6 more modular, and the initial attempt was to create PySide6_Essentials and PySide6_Addons from the PySide6 wheel, leaving that to be a meta-wheel with a direct dependency on these two new wheels.

You can see all the information of the new wheels size here: https://download.qt.io/snapshots/ci/pyside/dev/wheelsplit2/pyside6/
The current sizes of our wheels are: 125M (macOS), 77M (Linux), and 69M (Windows), so to be safe in case the Qt-macOS binaries increase size, we are requesting 150M.

Still with this approach, the wheels are a bit large, but we are considering split those wheels further on in future releases to have a similar meta-wheel like PySide6 will be from the 6.3 release, having something like PySide6_Addons depending on many other PySide6_ModuleX packages.

In case you require more information, please let me know.

Code of Conduct

  • I agree to follow the PSF Code of Conduct
@cmaureir
Copy link
Member Author

Hey there 👋
we haven't heard anything, so in case something else is missing or we can somehow help,
please let us know :)

@stonebig
Copy link

Any hope ?

@pradyunsg
Copy link
Contributor

I've increased the limit to 200 MB. Thanks for a properly filling out the issue form and making it easy to review this request! :)

@cmaureir
Copy link
Member Author

Thank you! 🎉

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

No branches or pull requests

3 participants