-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Include LICENSE.txt in wheel #62
Conversation
There seems to be the idea of eventually including any file named |
Thanks, can someone go ahead and merge this? |
Is this ok to merge? |
For some reason I forgot about this PR and started to put together my own on this same subject only to bump into this again. Could someone please merge this? |
Am I right in thinking this needs a recent version of setuptools? In particular see #56 for a discussion on this. Personally, I still think it would be nice if we were recommending a declarative approach, but I'd like feedback from @jaraco and @ncoghlan before reopening that question. On the other hand, if we don't include the license this way, what's the alternative? |
AFAIU, this has been in |
Ah, thanks for the clarification - it looks like both setuptools and wheel use the |
Thanks, +1 that declaraive metadata (i.e. in |
Declarative support was added to Setuptools only fairly recently (last summer perhaps?). My sense is we're starting to get to the point that we can start recommending it for projects, but I'd still include a caveat or note that to support older environments (with new releases of one's project), one must supply the parameters to setup.py. I'd personally like to see more (non-critical) vanguard projects adopt the declarative config and prove where it works and doesn't. I intend to do that with some of my projects as well soon. So I'm +1, but with some caution. |
@jaraco I'm adopting this approach across our ecosystem of small Python hardware driver projects aimed at the Raspberry Pi and will be slowly rolling out a I feel like I'm treading on loose ground here, and appreciate any/all feedback. |
I've also began using declarative config across many projects. My boilerplate is here, with documentation about the boilerplate in skeleton.md, which links to the blog entry that describes its inception. Note that the Alternatively, and better, you should use |
Thank you @jaraco - I'll look over your boilerplate and see what I can glean from it. From this and other conversations I've had, it looks like the declarative approach is a safe (enough) and forward-thinking approach. Let's just, uh, pretend that I don't often have to pull Python dependencies from apt instead of pypi due to the lack of arm wheels (the legendary efforts of https://www.piwheels.org/ don't cover all versions). Since I'm shipping almost exclusively for the Raspberry Pi I'm unlucky enough to have to deal with the exceptions and will no-doubt have to include a trap for old versions of setuptools. Still, the Right now I'm uploading wheels, but not necessarily for all the Python versions that might appear on a Pi. I think I've got some learning to do with respect to the potential unversality of wheel files with and without binary extensions. I've spent a lot of time (about the last 5 years) just keeping up with shipping new libraries, and I'm keen to spend time adopting best practise and retrospectively improving those where and when I can. |
Initially, I thought a file with the name
LICENSE.txt
would be included by default.Before:
After: