License not clear

Open Beginner friendly
#759 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
68/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
build-system

Research direction

Inspect the project's packaging metadata and compare its license fields with PEP 639 and the referenced SPDX guidance. Confirm whether the project uses MIT, Apache-2.0, or both, then make the generated metadata express the chosen SPDX license and verify that the deprecated classifiers no longer create ambiguity.

Written by the indexing model from the issue text.

Description

The project defines project.license.text to be the MIT license, but the project.classifiers also outline an Apache license.

It is not clear which license applies to this project.

While addressing this issue, please take PEP 639 into consideration, which deprecates the classifiers and encourages the use of SPDX-compliant licenses. In case of uvloop, this might be project.license = "MIT OR Apache-2.0" then.

Another driver for this to be sorted out is the automated parsing of project metadata, which is currently not possible for this project, due to due unclear dual-licensing.

The current metadata reads like:

❯ pip3 -q download --no-deps uvloop
❯ unzip -qo uvloop-0.22.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
❯ grep License uvloop-0.22.1.dist-info/METADATA
License: MIT License # <-- non-SPDX compliant
Classifier: License :: OSI Approved :: Apache Software License # deprecated
Classifier: License :: OSI Approved :: MIT License # deprecated
License-File: LICENSE-APACHE
License-File: LICENSE-MIT
License

Ideally, the license(es) can be found in the project's metadata as follows:

License: MIT OR Apache-2.0

References:

Dominant language
Cython
Stars
11.9k
Forks
615
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from MagicStack/uvloop

All issues in MagicStack/uvloop

Similar issues

More Build System issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.