Skip to content

🧑‍💻 Add conditional printing API docs URLs in panel #119

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

FlavienRx
Copy link
Contributor

@FlavienRx FlavienRx commented Nov 9, 2024

Description:

This PR refactors the FastAPI server start-up logic to improve the display of the application’s documentation URLs in the console. It introduces a conditional check for app.openapi_url, ensuring that only defined documentation URLs are printed. The updated logic adds more flexibility to display either docs_url, redoc_url, or both, enhancing visibility for users when serving the API.

Changes:

  • Updated import handling with get_import_string_and_app to retrieve both import_string and app for improved compatibility with uvicorn.
  • Enhanced serving_str output formatting to conditionally display API documentation URLs based on availability.
  • Cleaned up conditional print logic to handle cases where only one or both of docs_url and redoc_url are available.

This adjustment improves user experience by making API documentation links visible and accessible only when they are set.

Examples:
image
image
image

@sehraramiz
Copy link

hi
i had the same issue with custom docs urls showing wrong url in the logs,
i think the latest version of the fastapi_cli code is changed from when you worked this on it,
cli module now uses ImportData to get import string and other app module data
i think it's better to add the fastapi app as a field to ImportData and use it on cli module instead of returning a tuple

@FlavienRx
Copy link
Contributor Author

Hi @sehraramiz

You right, I started to refactor my code but I run out of time to finish and push my code 😄

@FlavienRx FlavienRx force-pushed the docs-conditional-panel branch from f45dccf to 9f95bd6 Compare December 16, 2024 19:14
@FlavienRx
Copy link
Contributor Author

@sehraramiz

I did the job, let me know what do you think.

@tiangolo, what do you think about this feature ?

@Stargator
Copy link

A new label has to be added:

Label check failed: required 1 of 'breaking', 'security', 'feature', 'bug', 'refactor', 'upgrade', 'docs', 'lang-all', 'internal', but found 0.

@Stargator
Copy link

This resolves #162

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants