Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

⬆️(project) upgrade python dependencies #167

Merged
merged 1 commit into from
Sep 10, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Sep 9, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
fastapi (changelog) ==0.112.2 -> ==0.114.0 age adoption passing confidence
pandas-stubs (source) ==2.2.2.240807 -> ==2.2.2.240909 age adoption passing confidence
pydantic (changelog) 2.8.2 -> 2.9.1 age adoption passing confidence
pyinstrument ==4.7.2 -> ==4.7.3 age adoption passing confidence
ruff (source, changelog) 0.6.3 -> 0.6.4 age adoption passing confidence
ruff (source, changelog) ==0.6.3 -> ==0.6.4 age adoption passing confidence
sentry-sdk (changelog) ==2.13.0 -> ==2.14.0 age adoption passing confidence
setuptools (changelog) ==74.1.1 -> ==74.1.2 age adoption passing confidence

Release Notes

fastapi/fastapi (fastapi)

v0.114.0

Compare Source

You can restrict form fields to only include those declared in a Pydantic model and forbid any extra field sent in the request using Pydantic's model_config = {"extra": "forbid"}:

from typing import Annotated

from fastapi import FastAPI, Form
from pydantic import BaseModel

app = FastAPI()

class FormData(BaseModel):
    username: str
    password: str
    model_config = {"extra": "forbid"}

@​app.post("/login/")
async def login(data: Annotated[FormData, Form()]):
    return data

Read the new docs: Form Models - Forbid Extra Form Fields.

Features
Docs
Internal
  • ✅ Update internal tests for latest Pydantic, including CI tweaks to install the latest Pydantic. PR #​12147 by @​tiangolo.

v0.113.0

Compare Source

Now you can declare form fields with Pydantic models:

from typing import Annotated

from fastapi import FastAPI, Form
from pydantic import BaseModel

app = FastAPI()

class FormData(BaseModel):
    username: str
    password: str

@​app.post("/login/")
async def login(data: Annotated[FormData, Form()]):
    return data

Read the new docs: Form Models.

Features
Internal

v0.112.4

Compare Source

This release is mainly a big internal refactor to enable adding support for Pydantic models for Form fields, but that feature comes in the next release.

This release shouldn't affect apps using FastAPI in any way. You don't even have to upgrade to this version yet. It's just a checkpoint. 🤓

Refactors
  • ♻️ Refactor deciding if embed body fields, do not overwrite fields, compute once per router, refactor internals in preparation for Pydantic models in Form, Query and others. PR #​12117 by @​tiangolo.
Internal
  • ⏪️ Temporarily revert "✨ Add support for Pydantic models in Form parameters" to make a checkpoint release. PR #​12128 by @​tiangolo.
  • ✨ Add support for Pydantic models in Form parameters. PR #​12127 by @​tiangolo. Reverted to make a checkpoint release with only refactors.

v0.112.3

Compare Source

This release is mainly internal refactors, it shouldn't affect apps using FastAPI in any way. You don't even have to upgrade to this version yet. There are a few bigger releases coming right after. 🚀

Refactors
  • ♻️ Refactor internal check_file_field(), rename to ensure_multipart_is_installed() to clarify its purpose. PR #​12106 by @​tiangolo.
  • ♻️ Rename internal create_response_field() to create_model_field() as it's used for more than response models. PR #​12103 by @​tiangolo.
  • ♻️ Refactor and simplify internal data from solve_dependencies() using dataclasses. PR #​12100 by @​tiangolo.
  • ♻️ Refactor and simplify internal analyze_param() to structure data with dataclasses instead of tuple. PR #​12099 by @​tiangolo.
  • ♻️ Refactor and simplify dependencies data structures with dataclasses. PR #​12098 by @​tiangolo.
Docs
Translations
Internal
pandas-dev/pandas-stubs (pandas-stubs)

v2.2.2.240909

Compare Source

pydantic/pydantic (pydantic)

v2.9.1: (2024-09-09)

Compare Source

What's Changed

Fixes

Full Changelog: pydantic/pydantic@v2.9.0...v2.9.1

v2.9.0

Compare Source

GitHub release

The code released in v2.9.0 is practically identical to that of v2.9.0b2.

What's Changed
Packaging
New Features
Changes
Performance
Minor Internal Improvements
Fixes
New Contributors
pydantic
pydantic-core
joerick/pyinstrument (pyinstrument)

v4.7.3

Compare Source

  • Fix a bug introduced in 4.7.0 which would cause the profiler to crash when profiling code with unusual locals, notably some pytest extensions (#​332)
  • Fix a bug that causes pyinstrument to fail to import packages like glom on Python 3.12 or later, which mutate the locals() dict. (#​336)
  • Fix a bug that caused a UnicodeDecodeError on some platforms (#​330)
  • Fix a DivideByZero error that occurs in some situations (#​335)
  • The IPython integration takes greater step to ensure a clean profile output, by ensuring internal frames are trimmed before printing. (#​321)
astral-sh/ruff (ruff)

v0.6.4

Compare Source

Preview features
  • [flake8-builtins] Use dynamic builtins list based on Python version (#​13172)
  • [pydoclint] Permit yielding None in DOC402 and DOC403 (#​13148)
  • [pylint] Update diagnostic message for PLW3201 (#​13194)
  • [ruff] Implement post-init-default (RUF033) (#​13192)
  • [ruff] Implement useless if-else (RUF034) (#​13218)
Rule changes
  • [flake8-pyi] Respect pep8_naming.classmethod-decorators settings when determining if a method is a classmethod in custom-type-var-return-type (PYI019) (#​13162)
  • [flake8-pyi] Teach various rules that annotations might be stringized (#​12951)
  • [pylint] Avoid no-self-use for attrs-style validators (#​13166)
  • [pylint] Recurse into subscript subexpressions when searching for list/dict lookups (PLR1733, PLR1736) (#​13186)
  • [pyupgrade] Detect aiofiles.open calls in UP015 (#​13173)
  • [pyupgrade] Mark sys.version_info[0] < 3 and similar comparisons as outdated (UP036) (#​13175)
CLI
  • Enrich messages of SARIF results (#​13180)
  • Handle singular case for incompatible rules warning in ruff format output (#​13212)
Bug fixes
  • [pydocstyle] Improve heuristics for detecting Google-style docstrings (#​13142)
  • [refurb] Treat sep arguments with effects as unsafe removals (FURB105) (#​13165)
getsentry/sentry-python (sentry-sdk)

v2.14.0

Compare Source

Various fixes & improvements
pypa/setuptools (setuptools)

v74.1.2

Compare Source


Configuration

📅 Schedule: Branch creation - "before 7am on monday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies label Sep 9, 2024
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from a83d58c to 84c746e Compare September 9, 2024 12:27
@jmaupetit jmaupetit self-assigned this Sep 9, 2024
@renovate renovate bot force-pushed the renovate/python-dependencies branch 4 times, most recently from 5fecbc7 to 8bb2154 Compare September 10, 2024 07:38
| datasource | package      | from         | to           |
| ---------- | ------------ | ------------ | ------------ |
| pypi       | fastapi      | 0.112.2      | 0.114.0      |
| pypi       | pandas-stubs | 2.2.2.240807 | 2.2.2.240909 |
| pypi       | pydantic     | 2.8.2        | 2.9.1        |
| pypi       | pyinstrument | 4.7.2        | 4.7.3        |
| pypi       | ruff         | 0.6.3        | 0.6.4        |
| pypi       | sentry-sdk   | 2.13.0       | 2.14.0       |
| pypi       | setuptools   | 74.1.1       | 74.1.2       |
@jmaupetit jmaupetit force-pushed the renovate/python-dependencies branch from 8bb2154 to 73aa0a0 Compare September 10, 2024 10:05
@jmaupetit jmaupetit merged commit d5a8319 into main Sep 10, 2024
12 checks passed
@jmaupetit jmaupetit deleted the renovate/python-dependencies branch September 10, 2024 10:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant