Official support for Python 3.14, plus dependency bounds that keep the optional ORM adapters on known-compatible major versions.
pyproject.tomlnow declaresProgramming Language :: Python :: 3.14, so PyPI and the version badge reflect the new interpreter.- The CI test matrix runs on Python 3.9 – 3.14.
blacktarget-versionextended withpy314.- The full test suite (263 tests) passes on Python 3.14.3 with current dependency versions: FastAPI 0.141, Pydantic 2.12, SQLAlchemy 2.0.52.
tortoiseextra:tortoise-orm>=0.20.0,<1.0— Tortoise ORM 1.x introduces breaking API changes (TortoiseContext, removal of implicit global state) that are not compatible with this adapter yet.peeweeextra:peewee>=3.17.0,<4— Peewee 4.x changes exception behaviour ofModelSelect.get()(rawIndexErrorinstead ofDoesNotExist), which breaks adapters and tests.- Core dependencies are unchanged (
fastapi>=0.110,pydantic>=2.5,<3,SQLAlchemy>=1.4.36) — current releases of all of them already support Python 3.14.
- Fixed previously broken Tortoise adapter tests: models are now properly
registered through
models=["tests.tortoise_models"]instead of relying on unregistered locally-defined models, and schemas are generated withTortoise.generate_schemas(safe=True). - Fixed the Peewee
delete_elementtest to expectDoesNotExistafter deletion instead of aNonereturn fromget_by_id(). - New CI job
test-extrasruns the suite with thetortoiseandpeeweeextras installed on Python 3.14, so adapter tests are no longer skipped in CI.
pip install fastapi-viewsetsFull Changelog: https://github.com/svalench/fastapi_viewsets/compare/v1.3.0...v1.4.0