From bdfb839fec4f8f18feb1d4ffd46b4304b601f782 Mon Sep 17 00:00:00 2001 From: laughingman7743 Date: Thu, 24 Sep 2026 09:41:01 +0900 Subject: [PATCH 1/2] Use collective LICENSE attribution and PEP 639 license metadata Change the root LICENSE copyright line to "The PyAthena authors", matching the file headers, and the Sphinx copyright and author values with it. Package author and contact metadata still names the maintainer. Declare the license as the SPDX expression "MIT" with LICENSE and NOTICE as license files, remove the MIT license classifier that PEP 639 replaces, and require hatchling 1.27 or later, whose default core metadata 2.4 writes License-Expression and License-File. Co-Authored-By: Claude Opus 5.5 --- LICENSE | 2 +- docs/conf.py | 4 ++-- docs/contributing.md | 2 +- pyproject.toml | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/LICENSE b/LICENSE index 1429e684..9986fa15 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright 2017 laughingman7743 +Copyright 2017 The PyAthena authors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in diff --git a/docs/conf.py b/docs/conf.py index 6ef34a48..23777627 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -99,8 +99,8 @@ def setup(app): # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information project = "PyAthena" -copyright = f"{datetime.now(timezone.utc).year}, laughingman7743" -author = "laughingman7743" +copyright = f"2017-{datetime.now(timezone.utc).year}, The PyAthena authors" +author = "The PyAthena authors" # Version will be set dynamically in setup() function version = "" release = "" diff --git a/docs/contributing.md b/docs/contributing.md index 095e835d..356e3978 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -131,7 +131,7 @@ The short notice and license reference follow [Google's MIT header example](http Identify any third-party material included in a new contribution and preserve its applicable copyright and license notices. Do not replace upstream notices with the original-file template above. -This policy does not require adding headers to existing files or changing existing notices, including the root `LICENSE`. +This policy does not require adding headers to existing files or changing their existing notices. Existing non-empty files that contain only the maintainer's original work carry the header above, dated with the year of their earliest surviving content other than import statements. The pull request template is an exception because its content is copied into each pull request. Other existing files keep their current notices. diff --git a/pyproject.toml b/pyproject.toml index 3cc73add..67aa05e4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,11 +13,11 @@ dependencies = [ ] requires-python = ">=3.10" readme = "README.md" -license = {file = "LICENSE"} +license = "MIT" +license-files = ["LICENSE", "NOTICE"] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Topic :: Database :: Front-Ends", "Programming Language :: Python :: 3", @@ -94,7 +94,7 @@ dev = [ ] [build-system] -requires = ["hatchling", "hatch-vcs"] +requires = ["hatchling>=1.27", "hatch-vcs"] build-backend = "hatchling.build" [tool.hatch.metadata] From 10bb29e6e3d25c8c22038ba9b534da2277c05d99 Mon Sep 17 00:00:00 2001 From: laughingman7743 Date: Fri, 25 Sep 2026 01:06:05 +0900 Subject: [PATCH 2/2] Credit the collective authors and keep the maintainer as contact Set the package authors to "The PyAthena authors", matching LICENSE, and move the maintainer's name and email to maintainers, so that the metadata separates copyright attribution from the contact person. Co-Authored-By: Claude Opus 5.5 --- pyproject.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 67aa05e4..b3cdd235 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,6 +2,9 @@ name = "PyAthena" description = "Python DB API 2.0 (PEP 249) client for Amazon Athena" authors = [ + {name = "The PyAthena authors"}, +] +maintainers = [ {name = "laughingman7743", email = "laughingman7743@gmail.com"}, ] dependencies = [