Repository navigation
chore: drop setup.cfg and configure metadata in pyproject.toml only - #1616
WilliamBergamin wants to merge 1 commit into
Conversation
setup.cfg only kept Home-page, Author, and Author-email intact for pip show (#999). Listing the author as separate name and email entries reproduces Author and Author-email exactly, and a Homepage project URL fills Home-page on pip 24.1 and later. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1616 +/- ##
=======================================
Coverage 91.57% 91.57%
=======================================
Files 228 228
Lines 7285 7285
=======================================
Hits 6671 6671
Misses 614 614 ☔ View full report in Codecov by Harness. |
zimeg
left a comment
There was a problem hiding this comment.
🧹 LGTM! Moving the last bits of setup.cfg into pyproject.toml keeps the published Author/Author-email/Home-page metadata the same. python-slack-sdk still carries the same setup.cfg with authors in dynamic, so a matching follow-up there would keep them in step.
mwbrooks
left a comment
There was a problem hiding this comment.
✅ Thanks @WilliamBergamin, one less config file to keep in sync!
| dynamic = ["version", "readme"] | ||
| description = "The Bolt Framework for Python" | ||
| license = { text = "MIT" } | ||
| authors = [{ name = "Slack Technologies, LLC" }, { email = "opensource@slack.com" }] |
There was a problem hiding this comment.
praise: Splitting authors into a name-only and an email-only entry is a neat trick to keep Author and Author-email exactly as pip show had them. Nice to see setup.cfg go 🧹
| dynamic = ["version", "readme"] | ||
| description = "The Bolt Framework for Python" | ||
| license = { text = "MIT" } | ||
| authors = [{ name = "Slack Technologies, LLC" }, { email = "opensource@slack.com" }] |
There was a problem hiding this comment.
suggestion (non-blocking): A short comment above this line explaining the split could stop someone from tidying it into one entry later and bringing back the bug #999 fixed.
Summary
This pull request removes the legacy
setup.cfgso package metadata lives only inpyproject.toml.setup.cfgwas added in Maintain metadata #999 to keepHome-page,Author, andAuthor-emailinpip showafter Configuring with pyproject.toml #996.authorsis now two entries, one name-only and one email-only. PEP 621 maps those toAuthorandAuthor-emailexactly as before. A single entry with both would renderAuthor-email: "Slack Technologies, LLC" <opensource@slack.com>with an emptyAuthor.Homepageis added to[project.urls]. Core metadata has nopyproject.tomlfield forHome-page, and pip 24.1+ fillsHome-pageinpip showfrom this URL.METADATAdiff againstmain: onlyHome-page:removed andProject-URL: Homepageadded.Home-page:.Home-pageis deprecated core metadata, and PyPI's sidebar already usesProject-URL.pip show slack-bolton pip 25.3, before and after:Testing
./scripts/build_pypi_package.shpip install dist/*.whl && pip show slack-bolt, and confirm the output above.unzip -p dist/*.whl '*.dist-info/METADATA'with a build frommain.Category
slack_bolt.Appand/or its core componentsslack_bolt.async_app.AsyncAppand/or its core componentsslack_bolt.adapter/docsRequirements
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.
./scripts/install_all_and_run_tests.shafter making the changes.🤖 Generated with Claude Code