A FastAPI Framework for things like Database, Redis, Logging, JWT Authentication and Rate Limits

Overview

Codestyle Code style: black Maintainability Test Coverage PyPI version PyPI Downloads

A FastAPI Framework for things like Database, Redis, Logging, JWT Authentication and Rate Limits

Install

You can install this Library with:

pip install fastapi-framework

Documentation

For the Documentation click here

Features

  • Database
  • Redis
  • Redis Publish/Subscribe
  • FastAPI JWT
  • FastAPI Permission System (for routes)
  • Rate Limits

License

This Project is Licensed under the MIT License

Comments
  • Bump python from 3.11.0a4-alpine to 3.11.0a6-alpine

    Bump python from 3.11.0a4-alpine to 3.11.0a6-alpine

    Bumps python from 3.11.0a4-alpine to 3.11.0a6-alpine.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies docker 
    opened by dependabot[bot] 2
  • Bump aioredis from 1.3.1 to 2.0.1

    Bump aioredis from 1.3.1 to 2.0.1

    Bumps aioredis from 1.3.1 to 2.0.1.

    Release notes

    Sourced from aioredis's releases.

    v2.0.1

    Version v2.0.1

    Features

    • Added Python 3.10 to CI & Updated the Docs (see #1160)
    • Enable mypy in CI (see #1101)
    • Synchronized reading the responses from a connection (see #1106)

    Fixes

    • Remove del from Redis (Fixes #1115) (see #1227)
    • fix socket.error raises (see #1129)
    • Fix buffer is closed error when using PythonParser class (see #1213)

    Version v2.0.0

    Version 2.0 is a complete rewrite of aioredis. Starting with this version, aioredis now follows the API of redis-py, so you can easily adapt synchronous code that uses redis-py for async applications with aioredis-py.

    NOTE: This version is not compatible with earlier versions of aioredis. If you upgrade, you will need to make code changes.

    For more details, read our documentation on migrating to version 2.0.

    Changelog

    Sourced from aioredis's changelog.

    2.0.1 - (2021-12-20)

    Features

    • Added Python 3.10 to CI & Updated the Docs (see #1160)
    • Enable mypy in CI (see #1101)
    • Synchronized reading the responses from a connection (see #1106)

    Fixes

    • Remove del from Redis (Fixes #1115) (see #1227)
    • fix socket.error raises (see #1129)
    • Fix buffer is closed error when using PythonParser class (see #1213)

    2.0.0 - (2021-03-18)

    Features

    • Port redis-py's client implementation to aioredis.
      (see #891)

    • Make hiredis an optional dependency.
      (see #917)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 2
  • Bump python-dotenv from 0.19.1 to 0.19.2

    Bump python-dotenv from 0.19.1 to 0.19.2

    Bumps python-dotenv from 0.19.1 to 0.19.2.

    Release notes

    Sourced from python-dotenv's releases.

    Version 0.19.2

    What's Changed

    Fixed

    Full Changelog: https://github.com/theskumar/python-dotenv/compare/v0.19.1...v0.19.2

    Changelog

    Sourced from python-dotenv's changelog.

    [0.19.2] - 2021-11-11

    Fixed

    • In set_key, add missing newline character before new entry if necessary. (#361 by [@​bbc2])
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 2
  • Bump fastapi from 0.85.2 to 0.87.0

    Bump fastapi from 0.85.2 to 0.87.0

    Bumps fastapi from 0.85.2 to 0.87.0.

    Release notes

    Sourced from fastapi's releases.

    0.87.0

    Highlights of this release:

    • Upgraded Starlette
      • Now the TestClient is based on HTTPX instead of Requests. 🚀
      • There are some possible breaking changes in the TestClient usage, but @​Kludex built bump-testclient to help you automatize migrating your tests. Make sure you are using Git and that you can undo any unnecessary changes (false positive changes, etc) before using bump-testclient.
    • New WebSocketException (and docs), re-exported from Starlette.
    • Upgraded and relaxed dependencies for package extras all (including new Uvicorn version), when you install "fastapi[all]".
    • New docs about how to Help Maintain FastAPI.

    Features

    Docs

    Translations

    • 🌐 Fix highlight lines for Japanese translation for docs/tutorial/query-params.md. PR #2969 by @​ftnext.
    • 🌐 Add French translation for docs/fr/docs/advanced/additional-status-code.md. PR #5477 by @​axel584.
    • 🌐 Add Portuguese translation for docs/pt/docs/tutorial/request-forms-and-files.md. PR #5579 by @​batlopes.
    • 🌐 Add Japanese translation for docs/ja/docs/advanced/websockets.md. PR #4983 by @​xryuseix.

    Internal

    0.86.0

    Features

    Fixes

    • 🐛 Close FormData (uploaded files) after the request is done. PR #5465 by @​adriangb.

    Docs

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump sqlalchemy from 1.4.42 to 1.4.44

    Bump sqlalchemy from 1.4.42 to 1.4.44

    Bumps sqlalchemy from 1.4.42 to 1.4.44.

    Release notes

    Sourced from sqlalchemy's releases.

    1.4.44

    Released: November 12, 2022

    sql

    • [sql] [bug] Fixed critical memory issue identified in cache key generation, where for very large and complex ORM statements that make use of lots of ORM aliases with subqueries, cache key generation could produce excessively large keys that were orders of magnitude bigger than the statement itself. Much thanks to Rollo Konig Brock for their very patient, long term help in finally identifying this issue.

      References: #8790

    postgresql

    • [postgresql] [bug] [mssql] For the PostgreSQL and SQL Server dialects only, adjusted the compiler so that when rendering column expressions in the RETURNING clause, the "non anon" label that's used in SELECT statements is suggested for SQL expression elements that generate a label; the primary example is a SQL function that may be emitting as part of the column's type, where the label name should match the column's name by default. This restores a not-well defined behavior that had changed in version 1.4.21 due to #6718, #6710. The Oracle dialect has a different RETURNING implementation and was not affected by this issue. Version 2.0 features an across the board change for its widely expanded support of RETURNING on other backends.

      References: #8770

    oracle

    • [oracle] [bug] Fixed issue in the Oracle dialect where an INSERT statement that used insert(some_table).values(...).returning(some_table) against a full Table object at once would fail to execute, raising an exception.

    tests

    • [tests] [bug] Fixed issue where the --disable-asyncio parameter to the test suite would fail to not actually run greenlet tests and would also not prevent the suite from using a "wrapping" greenlet for the whole suite. This parameter now ensures that no greenlet or asyncio use will occur within the entire run when set.

      References: #8793

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump sqlalchemy from 1.4.42 to 1.4.43

    Bump sqlalchemy from 1.4.42 to 1.4.43

    Bumps sqlalchemy from 1.4.42 to 1.4.43.

    Release notes

    Sourced from sqlalchemy's releases.

    1.4.43

    Released: November 4, 2022

    orm

    • [orm] [bug] Fixed issue in joined eager loading where an assertion fail would occur with a particular combination of outer/inner joined eager loads, when eager loading across three mappers where the middle mapper was an inherited subclass mapper.

      References: #8738

    • [orm] [bug] Fixed bug involving Select constructs, where combinations of Select.select_from() with Select.join(), as well as when using Select.join_from(), would cause the _orm.with_loader_criteria() feature as well as the IN criteria needed for single-table inheritance queries to not render, in cases where the columns clause of the query did not explicitly include the left-hand side entity of the JOIN. The correct entity is now transferred to the Join object that's generated internally, so that the criteria against the left side entity is correctly added.

      References: #8721

    • [orm] [bug] An informative exception is now raised when the _orm.with_loader_criteria() option is used as a loader option added to a specific "loader path", such as when using it within Load.options(). This use is not supported as _orm.with_loader_criteria() is only intended to be used as a top level loader option. Previously, an internal error would be generated.

      References: #8711

    • [orm] [bug] Improved "dictionary mode" for _orm.Session.get() so that synonym names which refer to primary key attribute names may be indicated in the named dictionary.

      References: #8753

    • [orm] [bug] Fixed issue where "selectin_polymorphic" loading for inheritance mappers would not function correctly if the _orm.Mapper.polymorphic_on parameter referred to a SQL expression that was not directly mapped on the class.

      References: #8704

    • [orm] [bug] Fixed issue where the underlying DBAPI cursor would not be closed when using the _orm.Query object as an iterator, if a user-defined exception

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump fastapi from 0.85.2 to 0.86.0

    Bump fastapi from 0.85.2 to 0.86.0

    Bumps fastapi from 0.85.2 to 0.86.0.

    Release notes

    Sourced from fastapi's releases.

    0.86.0

    Features

    Fixes

    • 🐛 Close FormData (uploaded files) after the request is done. PR #5465 by @​adriangb.

    Docs

    Translations

    • 🌐 Update wording in Chinese translation for docs/zh/docs/python-types.md. PR #5416 by @​supercaizehua.
    • 🌐 Add Russian translation for docs/ru/docs/deployment/index.md. PR #5336 by @​Xewus.
    • 🌐 Update Chinese translation for docs/tutorial/security/oauth2-jwt.md. PR #3846 by @​jaystone776.

    Internal

    Commits
    • ccd2423 🔖 Release version 0.86.0
    • 066cfae 📝 Update release notes
    • 51e768e 📝 Update release notes
    • 10fbfd6 ⬆ Add Python 3.11 to the officially supported versions (#5587)
    • 85e602d 📝 Update release notes
    • fbc13d1 📝 Update release notes
    • d4e2bdb ✏ Fix typo in docs/en/docs/tutorial/security/oauth2-jwt.md (#5584)
    • 8a5befd 📝 Update release notes
    • 9a442c9 👷 Update FastAPI People to exclude bots: pre-commit-ci, dependabot (#5586)
    • 4fa4965 📝 Update coverage badge to use Samuel Colvin's Smokeshow (#5585)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump fastapi from 0.82.0 to 0.84.0

    Bump fastapi from 0.82.0 to 0.84.0

    Bumps fastapi from 0.82.0 to 0.84.0.

    Release notes

    Sourced from fastapi's releases.

    0.84.0

    Breaking Changes

    This version of FastAPI drops support for Python 3.6. 🔥 Please upgrade to a supported version of Python (3.7 or above), Python 3.6 reached the end-of-life a long time ago. 😅☠

    • 🔧 Update package metadata, drop support for Python 3.6, move build internals from Flit to Hatch. PR #5240 by @​ofek.

    0.83.0

    🚨 This is probably the last release (or one of the last releases) to support Python 3.6. 🔥

    Python 3.6 reached the end-of-life and is no longer supported by Python since around a year ago.

    You hopefully updated to a supported version of Python a while ago. If you haven't, you really should.

    Features

    • ✨ Add support in jsonable_encoder for include and exclude with dataclasses. PR #4923 by @​DCsunset.

    Fixes

    • 🐛 Fix RuntimeError raised when HTTPException has a status code with no content. PR #5365 by @​iudeen.
    • 🐛 Fix empty reponse body when default status_code is empty but the a Response parameter with response.status_code is set. PR #5360 by @​tmeckel.

    Docs

    Internal

    Commits
    • 1073062 🔖 Release version 0.84.0
    • 7291cea 📝 Update release notes
    • 4267bd1 🔧 Update package metadata, drop support for Python 3.6, move build internals ...
    • b2aa359 📝 Update release notes
    • ed0fcba 🔖 Release version 0.83.0
    • 22a155e 📝 Update release notes
    • 306326a 📝 Update release notes
    • 4fec12b 📝 Update SECURITY.md (#5377)
    • 275306c 📝 Update release notes
    • 4d27046 🐛Fix RuntimeError raised when HTTPException has a status code with no con...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump fastapi from 0.82.0 to 0.83.0

    Bump fastapi from 0.82.0 to 0.83.0

    Bumps fastapi from 0.82.0 to 0.83.0.

    Release notes

    Sourced from fastapi's releases.

    0.83.0

    🚨 This is probably the last release (or one of the last releases) to support Python 3.6. 🔥

    Python 3.6 reached the end-of-life and is no longer supported by Python since around a year ago.

    You hopefully updated to a supported version of Python a while ago. If you haven't, you really should.

    Features

    • ✨ Add support in jsonable_encoder for include and exclude with dataclasses. PR #4923 by @​DCsunset.

    Fixes

    • 🐛 Fix RuntimeError raised when HTTPException has a status code with no content. PR #5365 by @​iudeen.
    • 🐛 Fix empty reponse body when default status_code is empty but the a Response parameter with response.status_code is set. PR #5360 by @​tmeckel.

    Docs

    Internal

    Commits
    • b2aa359 📝 Update release notes
    • ed0fcba 🔖 Release version 0.83.0
    • 22a155e 📝 Update release notes
    • 306326a 📝 Update release notes
    • 4fec12b 📝 Update SECURITY.md (#5377)
    • 275306c 📝 Update release notes
    • 4d27046 🐛Fix RuntimeError raised when HTTPException has a status code with no con...
    • 6620273 📝 Update release notes
    • 0b4fe10 🐛 Fix empty reponse body when default status_code is empty but the a `Respo...
    • c4007cb 📝 Update release notes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump pydantic from 1.9.1 to 1.10.1

    Bump pydantic from 1.9.1 to 1.10.1

    Bumps pydantic from 1.9.1 to 1.10.1.

    Release notes

    Sourced from pydantic's releases.

    v1.10.1 (2022-08-31)

    • Add __hash__ method to pydancic.color.Color class, #4454 by @​czaki

    Full Changelog: https://github.com/pydantic/pydantic/compare/v1.10.0...v1.10.1

    v1.10.0 (2022-08-30)

    See #4419 for feedback and discussion, docs are live at pydantic-docs.helpmanual.io.

    • Refactor the whole pydantic dataclass decorator to really act like its standard lib equivalent. It hence keeps __eq__, __hash__, ... and makes comparison with its non-validated version possible. It also fixes usage of frozen dataclasses in fields and usage of default_factory in nested dataclasses. The support of Config.extra has been added. Finally, config customization directly via a dict is now possible, #2557 by @​PrettyWood BREAKING CHANGES:
      • The compiled boolean (whether pydantic is compiled with cython) has been moved from main.py to version.py
      • Now that Config.extra is supported, dataclass ignores by default extra arguments (like BaseModel)
    • Fix PEP487 __set_name__ protocol in BaseModel for PrivateAttrs, #4407 by @​tlambert03
    • Allow for custom parsing of environment variables via parse_env_var in Config, #4406 by @​acmiyaguchi
    • Rename master to main, #4405 by @​hramezani
    • Fix StrictStr does not raise ValidationError when max_length is present in Field, #4388 by @​hramezani
    • Make SecretStr and SecretBytes hashable, #4387 by @​chbndrhnns
    • Fix StrictBytes does not raise ValidationError when max_length is present in Field, #4380 by @​JeanArhancet
    • Add support for bare type, #4375 by @​hramezani
    • Support Python 3.11, including binaries for 3.11 in PyPI, #4374 by @​samuelcolvin
    • Add support for re.Pattern, #4366 by @​hramezani
    • Fix __post_init_post_parse__ is incorrectly passed keyword arguments when no __post_init__ is defined, #4361 by @​hramezani
    • Fix implicitly importing ForwardRef and Callable from pydantic.typing instead of typing and also expose MappingIntStrAny, #4358 by @​aminalaee
    • remove Any types from the dataclass decorator so it can be used with the disallow_any_expr mypy option, #4356 by @​DetachHead
    • moved repo to pydantic/pydantic, #4348 by @​yezz123
    • fix "extra fields not permitted" error when dataclass with Extra.forbid is validated multiple times, #4343 by @​detachhead
    • Add Python 3.9 and 3.10 examples to docs, #4339 by @​Bobronium
    • Discriminated union models now use oneOf instead of anyOf when generating OpenAPI schema definitions, #4335 by @​MaxwellPayne
    • Allow type checkers to infer inner type of Json type. Json[list[str]] will be now inferred as list[str], Json[Any] should be used instead of plain Json. Runtime behaviour is not changed, #4332 by @​Bobronium
    • Allow empty string aliases by using a alias is not None check, rather than bool(alias), #4253 by @​sergeytsaplin
    • Update ForwardRefs in Field.outer_type_, #4249 by @​JacobHayes
    • The use of __dataclass_transform__ has been replaced by typing_extensions.dataclass_transform, which is the preferred way to mark pydantic models as a dataclass under PEP 681, #4241 by @​multimeric
    • Use parent model's Config when validating nested NamedTuple fields, #4219 by @​synek
    • Update BaseModel.construct to work with aliased Fields, #4192 by @​kylebamos
    • Catch certain raised errors in smart_deepcopy and revert to deepcopy if so, #4184 by @​coneybeare
    • Add Config.anystr_upper and to_upper kwarg to constr and conbytes, #4165 by @​satheler
    • Fix JSON schema for set and frozenset when they include default values, #4155 by @​aminalaee
    • Teach the mypy plugin that methods decorated by @validator are classmethods, #4102 by @​DMRobertson
    • Improve mypy plugin's ability to detect required fields, #4086 by @​richardxia
    • Support fields of type Type[] in schema, #4051 by @​aminalaee
    • Add default value in JSON Schema when const=True, #4031 by @​aminalaee
    • Adds reserved word check to signature generation logic, #4011 by @​strue36
    • Fix Json strategy failure for the complex nested field, #4005 by @​sergiosim

    ... (truncated)

    Changelog

    Sourced from pydantic's changelog.

    v1.10.1 (2022-08-31)

    • Add __hash__ method to pydancic.color.Color class, #4454 by @​czaki

    v1.10.0 (2022-08-30)

    • Refactor the whole pydantic dataclass decorator to really act like its standard lib equivalent. It hence keeps __eq__, __hash__, ... and makes comparison with its non-validated version possible. It also fixes usage of frozen dataclasses in fields and usage of default_factory in nested dataclasses. The support of Config.extra has been added. Finally, config customization directly via a dict is now possible, #2557 by @​PrettyWood BREAKING CHANGES:
      • The compiled boolean (whether pydantic is compiled with cython) has been moved from main.py to version.py
      • Now that Config.extra is supported, dataclass ignores by default extra arguments (like BaseModel)
    • Fix PEP487 __set_name__ protocol in BaseModel for PrivateAttrs, #4407 by @​tlambert03
    • Allow for custom parsing of environment variables via parse_env_var in Config, #4406 by @​acmiyaguchi
    • Rename master to main, #4405 by @​hramezani
    • Fix StrictStr does not raise ValidationError when max_length is present in Field, #4388 by @​hramezani
    • Make SecretStr and SecretBytes hashable, #4387 by @​chbndrhnns
    • Fix StrictBytes does not raise ValidationError when max_length is present in Field, #4380 by @​JeanArhancet
    • Add support for bare type, #4375 by @​hramezani
    • Support Python 3.11, including binaries for 3.11 in PyPI, #4374 by @​samuelcolvin
    • Add support for re.Pattern, #4366 by @​hramezani
    • Fix __post_init_post_parse__ is incorrectly passed keyword arguments when no __post_init__ is defined, #4361 by @​hramezani
    • Fix implicitly importing ForwardRef and Callable from pydantic.typing instead of typing and also expose MappingIntStrAny, #4358 by @​aminalaee
    • remove Any types from the dataclass decorator so it can be used with the disallow_any_expr mypy option, #4356 by @​DetachHead
    • moved repo to pydantic/pydantic, #4348 by @​yezz123
    • fix "extra fields not permitted" error when dataclass with Extra.forbid is validated multiple times, #4343 by @​detachhead
    • Add Python 3.9 and 3.10 examples to docs, #4339 by @​Bobronium
    • Discriminated union models now use oneOf instead of anyOf when generating OpenAPI schema definitions, #4335 by @​MaxwellPayne
    • Allow type checkers to infer inner type of Json type. Json[list[str]] will be now inferred as list[str], Json[Any] should be used instead of plain Json. Runtime behaviour is not changed, #4332 by @​Bobronium
    • Allow empty string aliases by using a alias is not None check, rather than bool(alias), #4253 by @​sergeytsaplin
    • Update ForwardRefs in Field.outer_type_, #4249 by @​JacobHayes
    • The use of __dataclass_transform__ has been replaced by typing_extensions.dataclass_transform, which is the preferred way to mark pydantic models as a dataclass under PEP 681, #4241 by @​multimeric
    • Use parent model's Config when validating nested NamedTuple fields, #4219 by @​synek
    • Update BaseModel.construct to work with aliased Fields, #4192 by @​kylebamos
    • Catch certain raised errors in smart_deepcopy and revert to deepcopy if so, #4184 by @​coneybeare
    • Add Config.anystr_upper and to_upper kwarg to constr and conbytes, #4165 by @​satheler
    • Fix JSON schema for set and frozenset when they include default values, #4155 by @​aminalaee
    • Teach the mypy plugin that methods decorated by @validator are classmethods, #4102 by @​DMRobertson
    • Improve mypy plugin's ability to detect required fields, #4086 by @​richardxia
    • Support fields of type Type[] in schema, #4051 by @​aminalaee
    • Add default value in JSON Schema when const=True, #4031 by @​aminalaee
    • Adds reserved word check to signature generation logic, #4011 by @​strue36
    • Fix Json strategy failure for the complex nested field, #4005 by @​sergiosim
    • Add JSON-compatible float constraint allow_inf_nan, #3994 by @​tiangolo
    • Remove undefined behaviour when env_prefix had characters in common with env_nested_delimiter, #3975 by @​arsenron

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump fastapi from 0.79.0 to 0.81.0

    Bump fastapi from 0.79.0 to 0.81.0

    Bumps fastapi from 0.79.0 to 0.81.0.

    Release notes

    Sourced from fastapi's releases.

    0.81.0

    Features

    • ✨ Add ReDoc <noscript> warning when JS is disabled. PR #5074 by @​evroon.
    • ✨ Add support for FrozenSet in parameters (e.g. query). PR #2938 by @​juntatalor.
    • ✨ Allow custom middlewares to raise HTTPExceptions and propagate them. PR #2036 by @​ghandic.
    • ✨ Preserve json.JSONDecodeError information when handling invalid JSON in request body, to support custom exception handlers that use its information. PR #4057 by @​UKnowWhoIm.

    Fixes

    • 🐛 Fix jsonable_encoder for dataclasses with pydantic-compatible fields. PR #3607 by @​himbeles.
    • 🐛 Fix support for extending openapi_extras with parameter lists. PR #4267 by @​orilevari.

    Docs

    • ✏ Fix a simple typo in docs/en/docs/python-types.md. PR #5193 by @​GlitchingCore.
    • ✏ Fix typos in tests/test_schema_extra_examples.py. PR #5126 by @​supraaxdd.
    • ✏ Fix typos in docs/en/docs/tutorial/path-params-numeric-validations.md. PR #5142 by @​invisibleroads.
    • 📝 Add step about upgrading pip in the venv to avoid errors when installing dependencies docs/en/docs/contributing.md. PR #5181 by @​edisnake.
    • ✏ Reword and clarify text in tutorial docs/en/docs/tutorial/body-nested-models.md. PR #5169 by @​papb.
    • ✏ Fix minor typo in docs/en/docs/features.md. PR #5206 by @​OtherBarry.
    • ✏ Fix minor typos in docs/en/docs/async.md. PR #5125 by @​Ksenofanex.
    • 📝 Add external link to docs: "Fastapi, Docker(Docker compose) and Postgres". PR #5033 by @​krishnardt.
    • 📝 Simplify example for docs for Additional Responses, remove unnecessary else. PR #4693 by @​adriangb.
    • 📝 Update docs, compare enums with identity instead of equality. PR #4905 by @​MicaelJarniac.
    • ✏ Fix typo in docs/en/docs/python-types.md. PR #4886 by @​MicaelJarniac.
    • 🎨 Fix syntax highlighting in docs for OpenAPI Callbacks. PR #4368 by @​xncbf.
    • ✏ Reword confusing sentence in docs file typo-fix-path-params-numeric-validations.md. PR #3219 by @​ccrenfroe.
    • 📝 Update docs for handling HTTP Basic Auth with secrets.compare_digest() to account for non-ASCII characters. PR #3536 by @​lewoudar.
    • 📝 Update docs for testing, fix examples with relative imports. PR #5302 by @​tiangolo.

    Translations

    • 🌐 Add Russian translation for docs/ru/docs/index.md. PR #5289 by @​impocode.
    • 🌐 Add Russian translation for docs/ru/docs/deployment/versions.md. PR #4985 by @​emp7yhead.
    • 🌐 Add Portuguese translation for docs/pt/docs/tutorial/header-params.md. PR #4921 by @​batlopes.
    • 🌐 Update ko/mkdocs.yml for a missing link. PR #5020 by @​dalinaum.

    Internal

    ... (truncated)

    Commits
    • 0bb8920 🔖 Release version 0.81.0
    • 95c182a 📝 Update release notes
    • 165d57d 📝 Update release notes
    • ae5280e ✏ Fix a simple typo in docs/en/docs/python-types.md (#5193)
    • d4b2ef8 📝 Update release notes
    • fd2080a 🌐 Add Russian translation for docs/ru/docs/index.md (#5289)
    • 3c8d8c3 📝 Update release notes
    • fa92dbf 🌐 Add Russian translation for docs/ru/docs/deployment/versions.md (#4985)
    • cd8854c 📝 Update release notes
    • b63398f 🌐 Add Portuguese translation for docs/pt/docs/tutorial/header-params.md (#4...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump pydantic from 1.10.2 to 1.10.4

    Bump pydantic from 1.10.2 to 1.10.4

    Bumps pydantic from 1.10.2 to 1.10.4.

    Release notes

    Sourced from pydantic's releases.

    v1.10.4 (2022-12-30)

    Full Changelog: https://github.com/pydantic/pydantic/compare/v1.10.3...v1.10.4

    v1.10.3 (2022-12-29)

    Full Changelog: https://github.com/pydantic/pydantic/compare/v1.10.2...v1.10.3

    Changelog

    Sourced from pydantic's changelog.

    v1.10.4 (2022-12-30)

    v1.10.3 (2022-12-29)

    NOTE: v1.10.3 was "yanked" from PyPI due to #4885 which is fixed in v1.10.4

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 0
  • Bump sqlalchemy from 1.4.42 to 1.4.45

    Bump sqlalchemy from 1.4.42 to 1.4.45

    Bumps sqlalchemy from 1.4.42 to 1.4.45.

    Release notes

    Sourced from sqlalchemy's releases.

    1.4.45

    Released: December 10, 2022

    orm

    • [orm] [bug] Fixed bug where _orm.Session.merge() would fail to preserve the current loaded contents of relationship attributes that were indicated with the _orm.relationship.viewonly parameter, thus defeating strategies that use _orm.Session.merge() to pull fully loaded objects from caches and other similar techniques. In a related change, fixed issue where an object that contains a loaded relationship that was nonetheless configured as lazy='raise' on the mapping would fail when passed to _orm.Session.merge(); checks for "raise" are now suspended within the merge process assuming the _orm.Session.merge.load parameter remains at its default of True.

      Overall, this is a behavioral adjustment to a change introduced in the 1.4 series as of #4994, which took "merge" out of the set of cascades applied by default to "viewonly" relationships. As "viewonly" relationships aren't persisted under any circumstances, allowing their contents to transfer during "merge" does not impact the persistence behavior of the target object. This allows _orm.Session.merge() to correctly suit one of its use cases, that of adding objects to a Session that were loaded elsewhere, often for the purposes of restoring from a cache.

      References: #8862

    • [orm] [bug] Fixed issues in _orm.with_expression() where expressions that were composed of columns that were referenced from the enclosing SELECT would not render correct SQL in some contexts, in the case where the expression had a label name that matched the attribute which used _orm.query_expression(), even when _orm.query_expression() had no default expression. For the moment, if the _orm.query_expression() does have a default expression, that label name is still used for that default, and an additional label with the same name will continue to be ignored. Overall, this case is pretty thorny so further adjustments might be warranted.

      References: #8881

    engine

    • [engine] [bug] Fixed issue where _engine.Result.freeze() method would not work for textual SQL using either _sql.text() or _engine.Connection.exec_driver_sql().

      References: #8963

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 0
  • Bump python from 3.10.8-alpine to 3.10.9-alpine

    Bump python from 3.10.8-alpine to 3.10.9-alpine

    Bumps python from 3.10.8-alpine to 3.10.9-alpine.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies docker 
    opened by dependabot[bot] 0
  • Bump fastapi from 0.85.2 to 0.88.0

    Bump fastapi from 0.85.2 to 0.88.0

    Bumps fastapi from 0.85.2 to 0.88.0.

    Release notes

    Sourced from fastapi's releases.

    0.88.0

    Upgrades

    • ⬆ Bump Starlette to version 0.22.0 to fix bad encoding for query parameters in new TestClient. PR #5659 by @​azogue.

    Docs

    Translations

    • 🌐 Add Portuguese translation for docs/pt/docs/deployment/docker.md. PR #5663 by @​ayr-ton.

    Internal

    0.87.0

    Highlights of this release:

    • Upgraded Starlette
      • Now the TestClient is based on HTTPX instead of Requests. 🚀
      • There are some possible breaking changes in the TestClient usage, but @​Kludex built bump-testclient to help you automatize migrating your tests. Make sure you are using Git and that you can undo any unnecessary changes (false positive changes, etc) before using bump-testclient.
    • New WebSocketException (and docs), re-exported from Starlette.
    • Upgraded and relaxed dependencies for package extras all (including new Uvicorn version), when you install "fastapi[all]".
    • New docs about how to Help Maintain FastAPI.

    Features

    Docs

    Translations

    • 🌐 Fix highlight lines for Japanese translation for docs/tutorial/query-params.md. PR #2969 by @​ftnext.

    ... (truncated)

    Commits
    • 612b8ff 🔖 Release version 0.88.0
    • 46bb5d2 📝 Update release notes
    • c458ca6 📝 Update release notes
    • 46974c5 ⬆ Bump Starlette to version 0.22.0 to fix bad encoding for query parameters...
    • 89ec1f2 📝 Update release notes
    • 128c925 📝 Update release notes
    • 8842036 👷 Tweak build-docs to improve CI performance (#5699)
    • 9b4e85f ⬆ [pre-commit.ci] pre-commit autoupdate (#5566)
    • 991db7b 📝 Update release notes
    • ebd917a 🌐 Add Portuguese translation for docs/pt/docs/deployment/docker.md (#5663)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 0
Redis-based rate-limiting for FastAPI

Redis-based rate-limiting for FastAPI

Glib 6 Nov 14, 2022
A FastAPI Plug-In to support authentication authorization using the Microsoft Authentication Library (MSAL)

FastAPI/MSAL - MSAL (Microsoft Authentication Library) plugin for FastAPI FastAPI - https://github.com/tiangolo/fastapi FastAPI is a modern, fast (hig

Dudi Levy 15 Jul 20, 2022
Cache-house - Caching tool for python, working with Redis single instance and Redis cluster mode

Caching tool for python, working with Redis single instance and Redis cluster mo

Tural 14 Jan 6, 2022
FastAPI native extension, easy and simple JWT auth

fastapi-jwt FastAPI native extension, easy and simple JWT auth

Konstantin Chernyshev 19 Dec 12, 2022
A rate limiter for Starlette and FastAPI

SlowApi A rate limiting library for Starlette and FastAPI adapted from flask-limiter. Note: this is alpha quality code still, the API may change, and

Laurent Savaete 562 Jan 1, 2023
A rate limiter for Starlette and FastAPI

SlowApi A rate limiting library for Starlette and FastAPI adapted from flask-limiter. Note: this is alpha quality code still, the API may change, and

Laurent Savaete 154 Feb 16, 2021
A request rate limiter for fastapi

fastapi-limiter Introduction FastAPI-Limiter is a rate limiting tool for fastapi routes. Requirements redis Install Just install from pypi > pip insta

long2ice 200 Jan 8, 2023
A request rate limiter for fastapi

fastapi-limiter Introduction FastAPI-Limiter is a rate limiting tool for fastapi routes. Requirements redis Install Just install from pypi > pip insta

long2ice 16 Feb 8, 2021
Farlimit - FastAPI rate limit with python

FastAPIRateLimit Contributing is F&E (free&easy) Y Usage pip install farlimit N

omid 27 Oct 6, 2022
High-performance Async REST API, in Python. FastAPI + GINO + Arq + Uvicorn (w/ Redis and PostgreSQL).

fastapi-gino-arq-uvicorn High-performance Async REST API, in Python. FastAPI + GINO + Arq + Uvicorn (powered by Redis & PostgreSQL). Contents Get Star

Leo Sussan 351 Jan 4, 2023
Stac-fastapi built on Tile38 and Redis to support caching

stac-fastapi-caching Stac-fastapi built on Tile38 to support caching. This code is built on top of stac-fastapi-elasticsearch 0.1.0 with pyle38, a Pyt

Jonathan Healy 4 Apr 11, 2022
FastAPI-PostgreSQL-Celery-RabbitMQ-Redis bakcend with Docker containerization

FastAPI - PostgreSQL - Celery - Rabbitmq backend This source code implements the following architecture: All the required database endpoints are imple

Juan Esteban Aristizabal 54 Nov 26, 2022
FastAPI-Amis-Admin is a high-performance, efficient and easily extensible FastAPI admin framework. Inspired by django-admin, and has as many powerful functions as django-admin.

简体中文 | English 项目介绍 FastAPI-Amis-Admin fastapi-amis-admin是一个拥有高性能,高效率,易拓展的fastapi管理后台框架. 启发自Django-Admin,并且拥有不逊色于Django-Admin的强大功能. 源码 · 在线演示 · 文档 · 文

AmisAdmin 318 Dec 31, 2022
Flask-vs-FastAPI - Understanding Flask vs FastAPI Web Framework. A comparison of two different RestAPI frameworks.

Flask-vs-FastAPI Understanding Flask vs FastAPI Web Framework. A comparison of two different RestAPI frameworks. IntroductionIn Flask is a popular mic

Mithlesh Navlakhe 1 Jan 1, 2022
User authentication fastapi with python

user-authentication-fastapi Authentication API Development Setup environment You should create a virtual environment and activate it: virtualenv venv

Sabir Hussain 3 Mar 3, 2022
fastapi-admin2 is an upgraded fastapi-admin, that supports ORM dialects, true Dependency Injection and extendability

FastAPI2 Admin Introduction fastapi-admin2 is an upgraded fastapi-admin, that supports ORM dialects, true Dependency Injection and extendability. Now

Glib 14 Dec 5, 2022
Full stack, modern web application generator. Using FastAPI, PostgreSQL as database, Docker, automatic HTTPS and more.

Full Stack FastAPI and PostgreSQL - Base Project Generator Generate a backend and frontend stack using Python, including interactive API documentation

Sebastián Ramírez 10.8k Jan 8, 2023
:rocket: CLI tool for FastAPI. Generating new FastAPI projects & boilerplates made easy.

Project generator and manager for FastAPI. Source Code: View it on Github Features ?? Creates customizable project boilerplate. Creates customizable a

Yagiz Degirmenci 1k Jan 2, 2023
Simple FastAPI Example : Blog API using FastAPI : Beginner Friendly

fastapi_blog FastAPI : Simple Blog API with CRUD operation Steps to run the project: git clone https://github.com/mrAvi07/fastapi_blog.git cd fastapi-

Avinash Alanjkar 1 Oct 8, 2022