We should update backend to work with Python 3.12, as it is, mostly because of changes introduced in Python 3.11 as far as we know, reportedly much faster than the previous Python 3 versions, in particular Python 3.8 we use now.
It would probably require updating quite a few of the backend dependencies; we should use this opportunity to update as many of them as we can to as recent as possible versions.
In particular, we should update SQLAlchemy, we need some features missing in the 1.1.2 version (released Oct 17 2016, more than 6 years ago) currently used by the backend, and the latest SQLAlchemy 2 version should be better.
On a related note, we should probably also look into using SQLAlchemy's session object caching through identity map, but that should probably be a separate issue, to be done after this one.
Edit 2023/12/02: now Python 3.12 instead of Python 3.11.
We should update backend to work with Python 3.12, as it is, mostly because of changes introduced in Python 3.11 as far as we know, reportedly much faster than the previous Python 3 versions, in particular Python 3.8 we use now.
It would probably require updating quite a few of the backend dependencies; we should use this opportunity to update as many of them as we can to as recent as possible versions.
In particular, we should update SQLAlchemy, we need some features missing in the 1.1.2 version (released Oct 17 2016, more than 6 years ago) currently used by the backend, and the latest SQLAlchemy 2 version should be better.
On a related note, we should probably also look into using SQLAlchemy's session object caching through identity map, but that should probably be a separate issue, to be done after this one.
Edit 2023/12/02: now Python 3.12 instead of Python 3.11.