First Check
Commit to Help
Example Code
Description
Add tests that implement the same model in SQLModel and SQLAlchemy, then runs an Alembic migration against an array of databases. This is one way to find disparities in the underlying models generated by SQLModel.
Using Alembic to test the generated models deltas is a good real-world test. Moving from existing SQLAlchemy models to SQLModel's and running migrations is going to be a very common use case.
Wanted Solution
Create a set of isolated docker containers that run sets of Alembic migrations and see if there are any deltas.
Example workflow:
- Spin up Postgres 13
- Auto-generate an alembic migration based on the SQLAlchemy schema
- Apply the Alembic migration to the DB
- Auto-generate another alembic migration based on the SQLModel schema
- Ensure that Alembic does not think there should be any migrations.
This could be done on a set of different DBs that SQLAlchemy supports.
Wanted Code
Alternatives
Directly comparing the generated SQLAlchemy and SQLModel model's could be a solution, but it lacks the real-world use case and added complexity of using Alembic.
Operating System
Linux
Operating System Details
Docker
SQLModel Version
0.0.4
Python Version
3.9
Additional Context
I would be happy to set up these types of tests as this is my exact real-world use case.
First Check
Commit to Help
Example Code
NADescription
Add tests that implement the same model in SQLModel and SQLAlchemy, then runs an Alembic migration against an array of databases. This is one way to find disparities in the underlying models generated by SQLModel.
Using Alembic to test the generated models deltas is a good real-world test. Moving from existing SQLAlchemy models to SQLModel's and running migrations is going to be a very common use case.
Wanted Solution
Create a set of isolated docker containers that run sets of Alembic migrations and see if there are any deltas.
Example workflow:
This could be done on a set of different DBs that SQLAlchemy supports.
Wanted Code
NAAlternatives
Directly comparing the generated SQLAlchemy and SQLModel model's could be a solution, but it lacks the real-world use case and added complexity of using Alembic.
Operating System
Linux
Operating System Details
Docker
SQLModel Version
0.0.4
Python Version
3.9
Additional Context
I would be happy to set up these types of tests as this is my exact real-world use case.