Gpiozero: Incomplete source tarball (i.e. critical license issue)

Created on 6 Feb 2017  路  11Comments  路  Source: gpiozero/gpiozero

The source tarball released on PyPI is incomplete due to some important files missing in MANIFEST.in.

Most importantly, LICENCE.txt is missing, which is a violation of the license itself under point 1 of the 3-clause BSD license. The source tarball thus is lacking all means of determining what license the source is published under, as the trove classifier "BSD License" is more than ambigous.

Please fix MANIFEST.in to build complete source tarballs in the future. Please also include the changelog and, if possible, pg-sign the upload to PyPI.

Most helpful comment

Hah ;-) #456

All 11 comments

Will do - thanks. I see you're working on submitting to debian (thanks so much!) - please let us know if you need anything more.

Hah ;-) #456

Will do - thanks. I see you're working on submitting to debian (thanks so much!) - please let us know if you need anything more.

Thanks! That should be it, I think ;).

Debian stretch boots on Raspberry 2 and 3 verbatim now, and adding the additional parts that Raspbian carries as diff is a priority (at least for Debian to make it work on RPi, but I think Raspbian would benefit from minimising the diff as well).

BTW, I was made aware of GPIO Zero by @Creeparoo[1] who endorsed it after attending your FOSDEM talk[2].

Great!

I was asked by @Natureshadow to upload this to Debian, but the missing licence file is a blocker. I just talked with ftpmasters (to get an authoritative answer), and the consensus was that, since the code is released under the BSD licence, which clearly states that the licence must be preserved in copies, nobody (except likely the original holder) may distribute the tarball at all, i.e. it cannot even be uploaded into Debian non-free without this missing file.

This is _extremely_ easy to fix upstream by just releasing an 1.3.2 version which is identical save for the missing file (and adjusting version numbers and other metadata as needed).

Is it possible to wait for the next feature release (1.4), in a month or so? Is this package likely to land in stretch, or have we missed the freeze?

The package will not land in stretch, but...

git checkout 1.3.1
echo "include LICENCE.txt" >>MANIFEST.in
sed -i s/1.3.1/1.3.1.post1/ setup.py
git commit -am "Include licence in sdist."
python setup.py sdist upload --sign
git tag -s 1.3.1.post1
git checkout master
git merge 1.3.1.post1
git push --tags

...seems simple enough to do it now, also to prevent removal from PyPI and Raspbian, where gpiozero cannot be distributed either right now.

-nik

Done!

Great, thanks!

Don't forget to update master :).

Whoops - forgot to push without --tags

Ah... my mistake ;)!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Martchus picture Martchus  路  8Comments

e28eta picture e28eta  路  4Comments

mi-skam picture mi-skam  路  4Comments

lurch picture lurch  路  12Comments

bennuttall picture bennuttall  路  10Comments