crate-python icon indicating copy to clipboard operation
crate-python copied to clipboard

Evaluate compatibility with SQLAlchemy 2.0

Open amotl opened this issue 3 years ago • 1 comments

SQLAlchemy 2.0.0b1 Released

The 2.0 series represents over three years of effort towards updating SQLAlchemy's usage model and architectures for modern Python use. The update's origins lie within the three major Python paradigms that came into existence well after SQLAlchemy's first releases in 2006: Python 3, pep-484 typing support, and asyncio. It's also in response to the changing nature of the Python programming community, vastly larger and home to many new developers with higher standards for strictness, ease of use and documentation than was the case sixteen years ago.

[...]

SQLAlchemy 2.0 also finalizes a very large number of API changes first introduced in 1.4. As such, even though SQLAlchemy 1.4 provided a very comprehensive upgrade path, we expect there to be lots of issues within the beginning of the series, both as projects accommodate the changes as well as for users of the new features, in particular the Declarative annotation support. We therefore hope that the beta series will have lots of testing done, and we will likely move from beta releases into release candidates as well, anticipating a 2.0 final release after some months.

-- https://www.sqlalchemy.org/blog/2022/10/13/sqlalchemy-2.0.0b1-released/

What's new?, migration guide, changelog, and release notes

  • https://docs.sqlalchemy.org/en/20/changelog/whatsnew_20.html
  • https://docs.sqlalchemy.org/en/20/changelog/migration_20.html
  • https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html
  • https://github.com/sqlalchemy/sqlalchemy/releases/tag/rel_2_0_0b1

On PyPI

image

-- https://pypi.org/project/SQLAlchemy/#history

amotl avatar Oct 13 '22 16:10 amotl

After making sure we are on Python 3, the suggested second step of the migration guide is to run the test suite with RemovedIn20Warnings enabled.

# Unit tests tests only (~2 seconds)
SQLALCHEMY_WARN_20=1 ./bin/test -vvv -t SqlAlchemy
# Integration tests (~50 seconds)
SQLALCHEMY_WARN_20=1 ./bin/test -vvv -t sqlalchemy

Here we go. Lot's of stuff to work on. Corresponding patches will be conceived on top of #464 / amo/doctests-refactoring.

-- https://docs.sqlalchemy.org/en/20/changelog/migration_20.html#migration-to-2-0-step-two-turn-on-removedin20warnings

amotl avatar Oct 13 '22 18:10 amotl