`fly launch` can't detect a Python `FastAPI` app with a dependency group specifier
Describe the bug
I'm making a FastAPI Python project and saw in this post that non-poetry projects are supported. But, running fly launch doesn't recognize my code as a FastAPI project. I'm not using poetry, but do have a valid pyproject.toml.
The issue is that I'm using the default dependency specifier from the FastAPI Docs: fastapi[standard].
flyctl correctly finds and parses my pyproject.toml, this function doesn't correctly handle the [standard] extra:
https://github.com/superfly/flyctl/blob/09e201bed6ad144c6b9265e95520833d061001f0/scanner/python.go#L93-L108
When I change my dependency from "fastapi[standard] == 0.115.5" to "fastapi == 0.115.5", it all works as expected.
- Operating system: macOS Ventura
fly v0.3.40 darwin/arm64 Commit: 0a5966dcd8a4a7ae3a71623f9f04371a3e7f27ae BuildDate: 2024-11-19T20:46:55Z
Paste your fly.toml
N/A, trying to create one
Command output:
fly launch --no-deploy
Scanning source code
INFO Detected pyproject.toml
WARN No supported Python frameworks found
Could not find a Dockerfile, nor detect a runtime or framework from source code. Continuing with a blank app.