Inclusion of licenses

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Inclusion of licenses

Charles R Harris
Hi All,

Currently we append appropriate platform  licenses to the LICENSE.txt file when building wheels for release. This means that there are uncommitted changes which shows up in the versioneer version as 'dirty', see the nightly files. This is unfortunate, but accurate :) There are at least two possible solutions to this problem.
  1. Patch versioneer to omit the dirty string, very easy to do.
  2. Put the platform specific file in the repo or combine them in the LICENSE file.
I don't recall why we did things the way we do, but there was a discussion. Patching is easy, but the second option seems preferable. In particular, folks who now build their own NumPy wheels aren't going to have the license files.

Chuck

_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/numpy-discussion
Reply | Threaded
Open this post in threaded view
|

Re: Inclusion of licenses

Charles R Harris


On Wed, Dec 9, 2020 at 5:17 PM Charles R Harris <[hidden email]> wrote:
Hi All,

Currently we append appropriate platform  licenses to the LICENSE.txt file when building wheels for release. This means that there are uncommitted changes which shows up in the versioneer version as 'dirty', see the nightly files. This is unfortunate, but accurate :) There are at least two possible solutions to this problem.
  1. Patch versioneer to omit the dirty string, very easy to do.
  2. Put the platform specific file in the repo or combine them in the LICENSE file.
I don't recall why we did things the way we do, but there was a discussion. Patching is easy, but the second option seems preferable. In particular, folks who now build their own NumPy wheels aren't going to have the license files.

Chuck

Note that LICENSES_bundled.txt, excluded from the sdist in MANIFEST.in, is included in the wheel in the dist-info file.

charris@fc [numpy.git (master)]$ ls dist/numpy-1.21.0.dev0+135.g26f8b11b6e.dist-info
entry_points.txt  LICENSES_bundled.txt  LICENSE.txt  METADATA  RECORD  top_level.txt  WHEEL


Looks like any LICENSE* files in the root directory will be included in the wheel.

Chuck



_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/numpy-discussion
Reply | Threaded
Open this post in threaded view
|

Re: Inclusion of licenses

ralfgommers


On Thu, Dec 10, 2020 at 6:42 AM Charles R Harris <[hidden email]> wrote:


On Wed, Dec 9, 2020 at 5:17 PM Charles R Harris <[hidden email]> wrote:
Hi All,

Currently we append appropriate platform  licenses to the LICENSE.txt file when building wheels for release. This means that there are uncommitted changes which shows up in the versioneer version as 'dirty', see the nightly files. This is unfortunate, but accurate :) There are at least two possible solutions to this problem.
  1. Patch versioneer to omit the dirty string, very easy to do.
  2. Put the platform specific file in the repo or combine them in the LICENSE file.
I don't recall why we did things the way we do, but there was a discussion. Patching is easy, but the second option seems preferable. In particular, folks who now build their own NumPy wheels aren't going to have the license files.

The reason for that construct is that GitHub won't recognize the license if we add vendored info. As a result, it would not only not display the license in its UI, but also it provides an API to query the license for a repo which then gives the wrong result. That in turn throws off Tidelift, which uses two sources of licensing info in its service (GitHub and libraries.io) and those should match.

Please consider this an issue with versioneer, and choose (1)

Note that LICENSES_bundled.txt, excluded from the sdist in MANIFEST.in, is included in the wheel in the dist-info file.

Ah, that needs fixing then.

Cheers,
Ralf


charris@fc [numpy.git (master)]$ ls dist/numpy-1.21.0.dev0+135.g26f8b11b6e.dist-info
entry_points.txt  LICENSES_bundled.txt  LICENSE.txt  METADATA  RECORD  top_level.txt  WHEEL


Looks like any LICENSE* files in the root directory will be included in the wheel.

Chuck


_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/numpy-discussion

_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/numpy-discussion
Reply | Threaded
Open this post in threaded view
|

Re: Inclusion of licenses

Charles R Harris


On Thu, Dec 10, 2020 at 2:35 AM Ralf Gommers <[hidden email]> wrote:


On Thu, Dec 10, 2020 at 6:42 AM Charles R Harris <[hidden email]> wrote:


On Wed, Dec 9, 2020 at 5:17 PM Charles R Harris <[hidden email]> wrote:
Hi All,

Currently we append appropriate platform  licenses to the LICENSE.txt file when building wheels for release. This means that there are uncommitted changes which shows up in the versioneer version as 'dirty', see the nightly files. This is unfortunate, but accurate :) There are at least two possible solutions to this problem.
  1. Patch versioneer to omit the dirty string, very easy to do.
  2. Put the platform specific file in the repo or combine them in the LICENSE file.
I don't recall why we did things the way we do, but there was a discussion. Patching is easy, but the second option seems preferable. In particular, folks who now build their own NumPy wheels aren't going to have the license files.

The reason for that construct is that GitHub won't recognize the license if we add vendored info. As a result, it would not only not display the license in its UI, but also it provides an API to query the license for a repo which then gives the wrong result. That in turn throws off Tidelift, which uses two sources of licensing info in its service (GitHub and libraries.io) and those should match.

Please consider this an issue with versioneer, and choose (1)

Note that LICENSES_bundled.txt, excluded from the sdist in MANIFEST.in, is included in the wheel in the dist-info file.

Ah, that needs fixing then.


Seems setup can be called with an option to use MANIFEST.in, I'll experiment a bit. Since the bundled license is only included in `dist-info` it may also be a bug in setuptools.

Chuck

_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/numpy-discussion