PEP 639 license information

1. Declare licenses using keys `license` and `license-files`, as per PEP 639:
   * license:       SPDX license expression
   * license-files: list of license file glob patterns
2. Keep the Trove classifier in an attempt to remain compatible with tools
that do not support PEP 639 yet, such as pip-licenses. Hopefully the build
system will not complain about the redundant/obsolete classifier.

In theory, maturin ≥ 1.9 supports PEP 639, which means the proper licensing
metadata should be included in packages:
	https://www.maturin.rs/changelog.html

In practice, maturin < 1.9.3 does not take license-files into account and
the LICENSE file is therefore missing from packages.
This commit is contained in:
Dimitri Papadopoulos 2025-07-31 12:39:57 +02:00
parent 5bfffe1aa7
commit 5c2058fbe5
No known key found for this signature in database
GPG Key ID: 95998121D9D25F5D
1 changed files with 3 additions and 2 deletions

View File

@ -1,5 +1,5 @@
[build-system]
requires = ["maturin>=1.9,<2.0"]
requires = ["maturin>=1.9.3,<2.0"]
build-backend = "maturin"
[project]
@ -9,7 +9,8 @@ description = "An extremely fast Python linter and code formatter, written in Ru
authors = [{ name = "Astral Software Inc.", email = "hey@astral.sh" }]
readme = "README.md"
requires-python = ">=3.7"
license = { file = "LICENSE" }
license = "MIT"
license-files = ["LICENSE"]
keywords = [
"automation",
"flake8",