This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [fastapi](https://github.com/fastapi/fastapi) ([changelog](https://fastapi.tiangolo.com/release-notes/)) | minor | `==0.114.0` -> `==0.115.0` |
---
### Release Notes
<details>
<summary>fastapi/fastapi (fastapi)</summary>
### [`v0.115.0`](https://github.com/fastapi/fastapi/releases/tag/0.115.0)
[Compare Source](https://github.com/fastapi/fastapi/compare/0.114.2...0.115.0)
##### Highlights
Now you can declare `Query`, `Header`, and `Cookie` parameters with Pydantic models. 🎉
##### `Query` Parameter Models
Use Pydantic models for `Query` parameters:
```python
from typing import Annotated, Literal
from fastapi import FastAPI, Query
from pydantic import BaseModel, Field
app = FastAPI()
class FilterParams(BaseModel):
limit: int = Field(100, gt=0, le=100)
offset: int = Field(0, ge=0)
order_by: Literal["created_at", "updated_at"] = "created_at"
tags: list[str] = []
@​app.get("/items/")
async def read_items(filter_query: Annotated[FilterParams, Query()]):
return filter_query
```
Read the new docs: [Query Parameter Models](https://fastapi.tiangolo.com/tutorial/query-param-models/).
##### `Header` Parameter Models
Use Pydantic models for `Header` parameters:
```python
from typing import Annotated
from fastapi import FastAPI, Header
from pydantic import BaseModel
app = FastAPI()
class CommonHeaders(BaseModel):
host: str
save_data: bool
if_modified_since: str | None = None
traceparent: str | None = None
x_tag: list[str] = []
@​app.get("/items/")
async def read_items(headers: Annotated[CommonHeaders, Header()]):
return headers
```
Read the new docs: [Header Parameter Models](https://fastapi.tiangolo.com/tutorial/header-param-models/).
##### `Cookie` Parameter Models
Use Pydantic models for `Cookie` parameters:
```python
from typing import Annotated
from fastapi import Cookie, FastAPI
from pydantic import BaseModel
app = FastAPI()
class Cookies(BaseModel):
session_id: str
fatebook_tracker: str | None = None
googall_tracker: str | None = None
@​app.get("/items/")
async def read_items(cookies: Annotated[Cookies, Cookie()]):
return cookies
```
Read the new docs: [Cookie Parameter Models](https://fastapi.tiangolo.com/tutorial/cookie-param-models/).
##### Forbid Extra Query (Cookie, Header) Parameters
Use Pydantic models to restrict extra values for `Query` parameters (also applies to `Header` and `Cookie` parameters).
To achieve it, use Pydantic's `model_config = {"extra": "forbid"}`:
```python
from typing import Annotated, Literal
from fastapi import FastAPI, Query
from pydantic import BaseModel, Field
app = FastAPI()
class FilterParams(BaseModel):
model_config = {"extra": "forbid"}
limit: int = Field(100, gt=0, le=100)
offset: int = Field(0, ge=0)
order_by: Literal["created_at", "updated_at"] = "created_at"
tags: list[str] = []
@​app.get("/items/")
async def read_items(filter_query: Annotated[FilterParams, Query()]):
return filter_query
```
This applies to `Query`, `Header`, and `Cookie` parameters, read the new docs:
- [Forbid Extra Query Parameters](https://fastapi.tiangolo.com/tutorial/query-param-models/#forbid-extra-query-parameters)
- [Forbid Extra Headers](https://fastapi.tiangolo.com/tutorial/header-param-models/#forbid-extra-headers)
- [Forbid Extra Cookies](https://fastapi.tiangolo.com/tutorial/cookie-param-models/#forbid-extra-cookies)
##### Features
- ✨ Add support for Pydantic models for parameters using `Query`, `Cookie`, `Header`. PR [#​12199](https://github.com/fastapi/fastapi/pull/12199) by [@​tiangolo](https://github.com/tiangolo).
##### Translations
- 🌐 Add Portuguese translation for `docs/pt/docs/advanced/security/http-basic-auth.md`. PR [#​12195](https://github.com/fastapi/fastapi/pull/12195) by [@​ceb10n](https://github.com/ceb10n).
##### Internal
- ⬆ \[pre-commit.ci] pre-commit autoupdate. PR [#​12204](https://github.com/fastapi/fastapi/pull/12204) by [@​pre-commit-ci\[bot\]](https://github.com/apps/pre-commit-ci).
### [`v0.114.2`](https://github.com/fastapi/fastapi/releases/tag/0.114.2)
[Compare Source](https://github.com/fastapi/fastapi/compare/0.114.1...0.114.2)
##### Fixes
- 🐛 Fix form field regression with `alias`. PR [#​12194](https://github.com/fastapi/fastapi/pull/12194) by [@​Wurstnase](https://github.com/Wurstnase).
##### Translations
- 🌐 Add Portuguese translation for `docs/pt/docs/tutorial/request-form-models.md`. PR [#​12175](https://github.com/fastapi/fastapi/pull/12175) by [@​ceb10n](https://github.com/ceb10n).
- 🌐 Add Chinese translation for `docs/zh/docs/project-generation.md`. PR [#​12170](https://github.com/fastapi/fastapi/pull/12170) by [@​waketzheng](https://github.com/waketzheng).
- 🌐 Add Dutch translation for `docs/nl/docs/python-types.md`. PR [#​12158](https://github.com/fastapi/fastapi/pull/12158) by [@​maxscheijen](https://github.com/maxscheijen).
##### Internal
- 💡 Add comments with instructions for Playwright screenshot scripts. PR [#​12193](https://github.com/fastapi/fastapi/pull/12193) by [@​tiangolo](https://github.com/tiangolo).
- ➕ Add inline-snapshot for tests. PR [#​12189](https://github.com/fastapi/fastapi/pull/12189) by [@​tiangolo](https://github.com/tiangolo).
### [`v0.114.1`](https://github.com/fastapi/fastapi/releases/tag/0.114.1)
[Compare Source](https://github.com/fastapi/fastapi/compare/0.114.0...0.114.1)
##### Refactors
- ⚡️ Improve performance in request body parsing with a cache for internal model fields. PR [#​12184](https://github.com/fastapi/fastapi/pull/12184) by [@​tiangolo](https://github.com/tiangolo).
##### Docs
- 📝 Remove duplicate line in docs for `docs/en/docs/environment-variables.md`. PR [#​12169](https://github.com/fastapi/fastapi/pull/12169) by [@​prometek](https://github.com/prometek).
##### Translations
- 🌐 Add Portuguese translation for `docs/pt/docs/virtual-environments.md`. PR [#​12163](https://github.com/fastapi/fastapi/pull/12163) by [@​marcelomarkus](https://github.com/marcelomarkus).
- 🌐 Add Portuguese translation for `docs/pt/docs/environment-variables.md`. PR [#​12162](https://github.com/fastapi/fastapi/pull/12162) by [@​marcelomarkus](https://github.com/marcelomarkus).
- 🌐 Add Portuguese translation for `docs/pt/docs/tutorial/testing.md`. PR [#​12164](https://github.com/fastapi/fastapi/pull/12164) by [@​marcelomarkus](https://github.com/marcelomarkus).
- 🌐 Add Portuguese translation for `docs/pt/docs/tutorial/debugging.md`. PR [#​12165](https://github.com/fastapi/fastapi/pull/12165) by [@​marcelomarkus](https://github.com/marcelomarkus).
- 🌐 Add Korean translation for `docs/ko/docs/project-generation.md`. PR [#​12157](https://github.com/fastapi/fastapi/pull/12157) by [@​BORA040126](https://github.com/BORA040126).
##### Internal
- ⬆ Bump tiangolo/issue-manager from 0.5.0 to 0.5.1. PR [#​12173](https://github.com/fastapi/fastapi/pull/12173) by [@​dependabot\[bot\]](https://github.com/apps/dependabot).
- ⬆ \[pre-commit.ci] pre-commit autoupdate. PR [#​12176](https://github.com/fastapi/fastapi/pull/12176) by [@​pre-commit-ci\[bot\]](https://github.com/apps/pre-commit-ci).
- 👷 Update `issue-manager.yml`. PR [#​12159](https://github.com/fastapi/fastapi/pull/12159) by [@​tiangolo](https://github.com/tiangolo).
- ✏️ Fix typo in `fastapi/params.py`. PR [#​12143](https://github.com/fastapi/fastapi/pull/12143) by [@​surreal30](https://github.com/surreal30).
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41OS4yIiwidXBkYXRlZEluVmVyIjoiMzguNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
==0.114.0->==0.115.0Release Notes
fastapi/fastapi (fastapi)
v0.115.0Compare Source
Highlights
Now you can declare
Query,Header, andCookieparameters with Pydantic models. 🎉QueryParameter ModelsUse Pydantic models for
Queryparameters:Read the new docs: Query Parameter Models.
HeaderParameter ModelsUse Pydantic models for
Headerparameters:Read the new docs: Header Parameter Models.
CookieParameter ModelsUse Pydantic models for
Cookieparameters:Read the new docs: Cookie Parameter Models.
Forbid Extra Query (Cookie, Header) Parameters
Use Pydantic models to restrict extra values for
Queryparameters (also applies toHeaderandCookieparameters).To achieve it, use Pydantic's
model_config = {"extra": "forbid"}:This applies to
Query,Header, andCookieparameters, read the new docs:Features
Query,Cookie,Header. PR #12199 by @tiangolo.Translations
docs/pt/docs/advanced/security/http-basic-auth.md. PR #12195 by @ceb10n.Internal
v0.114.2Compare Source
Fixes
alias. PR #12194 by @Wurstnase.Translations
docs/pt/docs/tutorial/request-form-models.md. PR #12175 by @ceb10n.docs/zh/docs/project-generation.md. PR #12170 by @waketzheng.docs/nl/docs/python-types.md. PR #12158 by @maxscheijen.Internal
v0.114.1Compare Source
Refactors
Docs
docs/en/docs/environment-variables.md. PR #12169 by @prometek.Translations
docs/pt/docs/virtual-environments.md. PR #12163 by @marcelomarkus.docs/pt/docs/environment-variables.md. PR #12162 by @marcelomarkus.docs/pt/docs/tutorial/testing.md. PR #12164 by @marcelomarkus.docs/pt/docs/tutorial/debugging.md. PR #12165 by @marcelomarkus.docs/ko/docs/project-generation.md. PR #12157 by @BORA040126.Internal
issue-manager.yml. PR #12159 by @tiangolo.fastapi/params.py. PR #12143 by @surreal30.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.