Bump uvicorn and retest quickstart flow#235
Conversation
|
Owner ping for this maintenance PR: @nithishr Requesting review from the manifest-listed owner(s) where GitHub does not already show a pending review request. |
|
Dex update: I pushed follow-up changes.
Verification / evidence
|
|
I pushed a workflow-only follow-up. The previous red |
|
I pushed one more follow-up after the workflow fix. The rerun exposed a real FastAPI response-validation failure in |
There was a problem hiding this comment.
Pull request overview
This PR primarily updates the FastAPI quickstart dependency set by bumping uvicorn, while also adding airport response filtering and adjusting CI Slack notification behavior.
Changes:
- Bumps
uvicornfrom0.47.0to0.48.0. - Adds filtering for incomplete airport list rows and a unit test for missing required fields.
- Updates the Slack notification workflow action and makes that step non-blocking.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
requirements.txt |
Updates the pinned uvicorn version. |
app/routers/airport.py |
Filters airport list results before returning them. |
app/tests/test_airport.py |
Adds a unit test for airport filtering behavior. |
.github/workflows/tests.yml |
Updates Slack notification action version and error handling. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
uvicornfrom0.47.0to0.48.0app/.env.exampleplus the canonical machine env and re-verify the FastAPI quickstart flowORDER BY/LIMIT/OFFSETso pagination stays stable when source rows are incompleteravsamhq/notify-slack-actionfromv1tov2fastapi 0.136.3bump for now becausepip-auditflags that release with advisoryMAL-2026-4750and no published fix versionVerification
uv venv --clear --seed --python /usr/bin/python3.14 .venvpython -m pip install -r requirements.txtpip-audit -f jsonpython -m pytest -qpython -m pytest app/tests/test_airport.py -k "bakes_required_fields or bakes_country_filter" -quvicorn app.main:app --host 127.0.0.1 --port 8000/docs,/openapi.json,GET /api/v1/airport/list?country=France&limit=2,GET /api/v1/hotel/autocomplete?name=Seal,POST /api/v1/hotel/filter?limit=2, and airport CRUD onairport_walkthrough_20260526Evidence
python -m pytest -q: 47 passed, 8 warnings.546b103moved the airport completeness guard into the SQL++ query before pagination and added focused unit coverage for that query shape.pip-audit -f jsonwith no known vulnerabilities.pytest excerpt
API walkthrough excerpt
tutorial-maintenance/runs/python-quickstart-fastapi/2026-05-26T19-28-05Z/verification.mdtutorial-maintenance/runs/python-quickstart-fastapi/2026-05-26T19-28-05Z/walkthrough-final.logtutorial-maintenance/runs/python-quickstart-fastapi/2026-05-26T19-28-05Z/swagger-docs-final.pngNotes
python -m pip list --outdated --format=jsonstill reportsfastapi 0.136.3and transitivepydantic_core 2.47.0; the FastAPI bump was intentionally left out because of the currentpip-auditadvisory, and the transitivepydantic_coredrift depends on a future directpydanticrelease bump.47 passed.Media evidence
/docsSwagger surface from the final verified branch state.Notes
tutorial-maintenance/runs/python-quickstart-fastapi/2026-05-26T19-28-05Z/swagger-docs-final.pngNotes
tutorial-maintenance/runs/python-quickstart-fastapi/2026-05-26T19-28-05Z/swagger-docs-final.webm