Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork8.7k
🔧 Update package metadata, drop support for Python 3.6, move build internals from Flit to Hatch#5240
Conversation
codecovbot commentedAug 7, 2022 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Codecov Report
@@ Coverage Diff @@## master #5240 +/- ##========================================= Coverage 100.00% 100.00% ========================================= Files 540 540 Lines 13951 13947 -4 =========================================- Hits 13951 13947 -4
Help us with your feedback. Take ten seconds to tell ushow you rate us. Have a feature suggestion?Share it here. |
📝 Docs preview for commit0c10260 at:https://62ef63a1ba5a2255983c34e7--fastapi.netlify.app |
ofek commentedAug 7, 2022
Ah looks like the 3.6 job is hard coded in this repo's GitHub settings as required. |
📝 Docs preview for commit8ed4d8a at:https://62fdccd962cae252d9a65fc8--fastapi.netlify.app |
📝 Docs preview for commitab290a9 at:https://62fdd03bc009ce60bf4787ee--fastapi.netlify.app |
Uh oh!
There was an error while loading.Please reload this page.
📝 Docs preview for commit8ee7c5e at:https://632218ad6f7e673abce043d5--fastapi.netlify.app |
| FLIT_PASSWORD: ${{ secrets.FLIT_PASSWORD }} | ||
| run: bash scripts/publish.sh | ||
| uses: pypa/gh-action-pypi-publish@v1.5.1 | ||
| with: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
| with: | |
| with: | |
| user:__token__ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Is it needed? Then maybe the docs in the GitHub Action need an update too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Ah, guess not!
📝 Docs preview for commitc52e2ee at:https://63221a832b16da3418038c4d--fastapi.netlify.app |
📝 Docs preview for commit90950e3 at:https://63221be7afbe8635f3f1102d--fastapi.netlify.app |
tiangolo commentedSep 14, 2022
Awesome job, thanks a lot@ofek! FastAPI is now built with Hatch. 🥚 🐍 😎 Also, Python 3.6 is now officiallyNOT supported. 🔥 |
Background
Hello there! The Python packaging ecosystem has standardized on the interface for build backends (PEP 517/PEP 660) and the format for metadata declaration (PEP 621/PEP 631).
So, I'm spending my free time updating important projects so that they are modernized and set an example for others 😄
The is a follow-up topydantic/pydantic#4282
Summary of changes
Metadata
This implementsPEP 621 and removes Flit as a development dependency, allowing
pipto be used directly which simplifies the contributing workflow and CI/CD. The build backendhatchling(of which I am a maintainer in thePyPA) is now used as that is the default in the officialPython packaging tutorial. Hatchling is available on all the major distribution channels such asDebian,Fedora,Arch Linux,conda-forge,Nixpkgs,Alpine Linux,FreeBSD,Gentoo Linux,MacPorts,OpenEmbedded,Spack, etc.Python support
The earliest supported Python 3 version of Hatchling is 3.7, therefore I've also set that as the minimum here. Python 3.6 is EOL and other build backends like
flit-coreandsetuptoolsalso dropped support. Python 3.6 accounts for 3-4% of downloads in the last month:https://pypistats.org/packages/fastapiIf support is still desired for some reason, I can keep the existing cap and only require 3.7+ in CI/CD.
Documentation
I updated the contributing docs, which accounts for most of the diff. Luckily, they were written in such a way that going from
flittopipdidn't alter semantics for any language!Future