I just discovered that some code I've been working on, which passes all its unit tests against sqllite, fails when I run it against tools.db.svc.wikimedia.cloud. It's apparently due differences in the two drivers (see for example, this bug https://github.com/sqlalchemy/alembic/issues/912). The error I get (using SQL Alchemy 2.0.0rc3) is:
sqlalchemy.exc.CompileError: (in table 'bot_log', column 'title'): VARCHAR requires a length on dialect mysql
So, I've got two questions:
1) Has anybody seen this problem before and figured out how to work around it? I suppose I could just declare an explicit length for that column, but what part of VARCHAR did they not understand?
2) Is there a scratch database instance I can run unit tests against? I'd rather not do this kind of testing against anything that's in production, to ensure I don't accidentally cause any damage.