-
Notifications
You must be signed in to change notification settings - Fork 21
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
Add wheel build option #133
Add wheel build option #133
Conversation
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.
Thank you for taking a stab at this @Stormheg!
This is working as expected for me, I’d rather still only have the single "build" command but I can make that change when merging this.
Before merging though – an important question from #132 was whether this change would be considered a breaking change or not. We’re still publishing as a source archive so I imagine that reduces the likelihood of issues, but I’d suspect lots of installers will default to the wheel if both options are available. Is that going to cause problems for some people?
Additionally I see Wagtail has this config for their wheel: https://github.com/wagtail/wagtail/blob/master/setup.cfg#L1-L2. Would we need this here as well?
Thanks for the thoughtful review @thibaudcolas!
Refactored into a single build command 👍
I did some research on what that To be honest, I don't think adding a python tag will add any significant value.
I've tried wagtail bakery demo with a wheel version of this library and encountered no issues. But perhaps consider testing yourself and making a test release to PyPi? Like you mentioned, installers will likely default to wheel versions of this library. I think there is a remote chance that causes issues in specific setups. Lets err on the side of caution, there is no harm done in making a major release 🙂 |
Thank you :) I don’t think making a test release to PyPI will help much except confirming that it "works on my machine" – as you say it’s more about knowing about the remote chances, whether that’s old versions of pip, or other PyPI clients. It’s very undesirable for this to be done as a major release if it could be done as a patch one, for a few reasons:
Researching this a bit, it looks like pip just does |
It looks like Django started publishing wheels in v1.6, but also backported the change to v1.5 and just did so on a patch update:
This seems like as good of a sign as any that this should be appropriate. |
It looks like it might be appropriate for us to actually upload wheels to existing releases – see pypa/packaging-problems#75. I’m still researching this though. |
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.
Thank you @Stormheg!
fixes #132
The primary purpose of this PR is to add an
make bdist_wheel
command to build a python wheel archive. This task is included in both themake publish
andmake publish-test
commands and does not replace source distributions.I've added a
make clean-dist
command to clean the dist folder. This command is ran before publishing to make sure we have a clean dist folder.Consider adding unit tests, especially for bug fixes. If you don't, tell us why.make test-coverage
)make lint
)