* 📝 Add docs for Separate OpenAPI Schemas for Input and Output
* 🔧 Add new docs page to MkDocs config
* ✨ Add separate_input_output_schemas parameter to FastAPI class
* 📝 Add source examples for separating OpenAPI schemas
* ✅ Add tests for separated OpenAPI schemas
* 📝 Add source examples for Python 3.10, 3.9, and 3.7+
* 📝 Update docs for Separate OpenAPI Schemas with new multi-version examples
* ✅ Add and update tests for different Python versions
* ✅ Add tests for corner cases with separate_input_output_schemas
* 📝 Update tutorial to use Union instead of Optional
* 🐛 Fix type annotations
* 🐛 Fix correct import in test
* 💄 Add CSS to simulate browser windows for screenshots
* ➕ Add playwright as a dev dependency to automate generating screenshots
* 🔨 Add Playwright scripts to generate screenshots for new docs
* 📝 Update docs, tweak text to match screenshots
* 🍱 Add screenshots for new docs
* ✨ Update OpenAPI models for JSON Schema 2020-12 and OpenAPI 3.1.0
* ✨ Add support for summary and webhooks
* ✨ Update JSON Schema for UploadFiles
* ⏪️ Revert making paths optional, to ensure always correctness
* ⏪️ Keep UploadFile as format: binary for compatibility with the rest of Pydantic bytes fields in v1
* ✨ Update version of OpenAPI generated to 3.1.0
* ✨ Update the version of Swagger UI
* 📝 Update docs about extending OpenAPI
* 📝 Update docs and links to refer to OpenAPI 3.1.0
* ✨ Update logic for handling webhooks
* ♻️ Update parameter functions and classes, deprecate example and make examples the main field
* ✅ Update tests for OpenAPI 3.1.0
* 📝 Update examples for OpenAPI metadata
* ✅ Add and update tests for OpenAPI metadata
* 📝 Add source example for webhooks
* 📝 Update docs for metadata
* 📝 Update docs for Schema extra
* 📝 Add docs for webhooks
* 🔧 Add webhooks docs to MkDocs
* ✅ Update tests for extending OpenAPI
* ✅ Add tests for webhooks
* ♻️ Refactor generation of OpenAPI and JSON Schema with params
* 📝 Update source examples for field examples
* ✅ Update tests for examples
* ➕ Make sure the minimum version of typing-extensions installed has deprecated() (already a dependency of Pydantic)
* ✏️ Fix typo in Webhooks example code
* 🔥 Remove commented out code of removed nullable field
* 🗑️ Add deprecation warnings for example argument
* ✅ Update tests to check for deprecation warnings
* ✅ Add test for webhooks with security schemes, for coverage
* 🍱 Update image for metadata, with new summary
* 🍱 Add docs image for Webhooks
* 📝 Update docs for webhooks, add docs UI image
* 🔧 Add first pre-commit config
* 🎨 Format YAML files with pre-commit
* 🎨 Format Markdown with pre-commit
* 🎨 Format SVGs, drawio, JS, HTML with pre-commit
* ➕ Add pre-commit to dev dependencies
* ⬇️ Extend pre-commit range to support Python 3.6
* ✨ Add Default and DefaultPlaceholder data structures
to handle defaults and overrides
* ✨ Add utils to get values by priority handling DefaultPlaceholders
* ✨ Add support for top-level parameters in FastAPI, APIRouter, include_router
including: prefix, tags, dependencies, deprecated, include_in_schema, responses, default_response_class, callbacks
* ♻️ Update openapi utils to handle DefaultPlaceholder for response_class
* 📝 Update bigger-application example code to use top-level params
and showcase them in APIRouter, FastAPI, include_router
* 📝 Update docs for Bigger Applications, include diagrams, top-level params
* 🔥 Simplify code and docs for callbacks as default_response_class is no longer required
* 📝 Add docs for top-level dependencies, in FastAPI()
* 📝 Add docs reference to top-level dependencies in docs for decorator
* ✅ Update/increase tests for Bigger Applications including shared parameters
* ✅ Add tests for top-level dependencies in FastAPI()
* ✅ Add tests for internal DefaultPlaceholder
* ✅ Update/increase tests for callbacks with top-level parameters
* ✅ Add LOTS of tests covering branches and cases for shared parameters
in top-level FastAPI, path operations, include_router, APIRouter, its path operations, nested include_router, nested APIRouter, and its path operations
* 🎨 Format/reorder parameters for consistency in FastAPI, APIRouter, include_router
* root_path included in servers object instead of path prefix
* ♻️ Refactor implementation of auto-including root_path in OpenAPI servers
* 📝 Update docs and examples for Behind a Proxy, including servers
* 📝 Update Extending OpenAPI as openapi_prefix is no longer needed
* ✅ Add extra tests for root_path in servers and root_path_in_servers=False
* 🍱 Update security docs images with relative token URL
* 📝 Update security docs with relative token URL
* 📝 Update example sources with relative token URLs
* ✅ Update tests with relative tokens
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
* fix websockets/tutorial002.py
* fix tutorial002 in ws to correspond with test case
* reformat websocket tutorial002
* fix websocket tutorial002 coverage
* 📝 Update example for WebSockets with Depends
* ✅ Update and refactor tests for WebSockets with dependencies
* 👷 Trigger Travis, as it's not reporting to Codecov
* ✅ Update WebSocket tests to raise coverage
Co-authored-by: Chih Sean Hsu <Sean@Sean-Mac.local>
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
* Allow to add OpenAPI tag descriptions
* fix type hint
* fix type hint 2
* refactor test to assure 100% coverage
* 📝 Update tags metadata example
* 📝 Update docs for tags metadata
* ✅ Move tags metadata test to tutorial subdir
* 🎨 Update format in applications
* 🍱 Update docs UI image based on new example
* 🎨 Apply formatting after solving conflicts
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
* Use ASGI root_path when it is provided and openapi_prefix is empty.
* Strip trailing slashes from root_path.
* Please mypy.
* Fix extending openapi test.
* 📝 Add docs and tutorial for using root_path behind a proxy
* ♻️ Refactor application root_path logic, use root_path, deprecate openapi_prefix
* ✅ Add tests for Behind a Proxy with root_path
* ♻️ Refactor test
* 📝 Update/add docs for Sub-applications and Behind a Proxy
* 📝 Update Extending OpenAPI with openapi_prefix parameter
* ✅ Add test for deprecated openapi_prefix
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
* Add doc and example for env var config
* Syntax highlight for .env file
* Add test for configuration docs
* 📝 Update settings docs, add more examples
* ✅ Add tests for settings
* 🚚 Rename "Application Configuration" to "Metadata and Docs URLs"
to disambiguate between that and settings
* 🔥 Remove replaced example file
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
* add example of pycharm in tutorial/debugging.md
* 📝 Update PyCharm debug instructions and screenshot
* 🚚 Move image to new location in docs
Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
* 🌐 Refactor file structure to support internationalization
* ✅ Update tests changed after i18n
* 🔀 Merge Typer style from master
* 🔧 Update MkConfig with Typer-styles
* 🎨 Format mkdocs.yml with cannonical form
* 🎨 Format mkdocs.yml
* 🔧 Update MkDocs config
* ➕ Add docs translation scripts dependencies
* ✨ Add Typer scripts to handle translations
* ✨ Add missing translation snippet to include
* ✨ Update contributing docs, add docs for translations
* 🙈 Add docs_build to gitignore
* 🔧 Update scripts with new locations and docs scripts
* 👷 Update docs deploy action with translations
* 📝 Add note about languages not supported in the theme
* ✨ Add first translation, for Spanish