1. 9
  1.  

  2. 3

    Many changes, but especially noteworthy is “Complete support for Python asyncio”.

    1. 2

      The asyncio support is interesting.

      Does anyone know: does this mean I can use the same models from both normal and async code?

      I’ve been using Tortoise with FastAPI things, but wrapping it for things that need to block is just annoying enough that I might want to just use sqlalchemy if that just works.

      Maybe I should just not use an ORM. I’m comfortable working with postgres directly, but for most of the stuff I do, I feel like either Tortoise or SQLAlchemy eliminate more boilerplate than they add back, even if the database-agnosticism is mostly imaginary anyway.

      1. 1

        Does anyone know: does this mean I can use the same models from both normal and async code?

        Previously I am using the databases library to execute the pre-generated sql query from SQLAlchemy.

        1. 1

          This is exactly what we do. Works well minus a few minor annoying things; but with 1.4.0 I think we can drop that library entirely!

      2. 1

        Had to pin to <1.4.0 due to this RowProxy thing

        from sqlalchemy.engine.result import RowProxy

        was either deprecated or removed in 1.4.x

        1. 1

          I’m excited to try out the mypy support, so far I’ve been using Dropbox’s plugin but it has required some workarounds.