Check version number constraints before writing code

This is part of the Semicolon&Sons Code Diary - consisting of lessons learned on the job. You're in the workflows category.

Last Updated: 2022-12-01

I spent a long time writing a database schemer dumper and seeder for mysql. I somehow had some binary of mysql installed on my computer and I just "assumed" it was the same version as the project required or that version interoperability would be easy. Not so.

My version was 8.x, whereas the project was using 5.7. These had radically different rules and syntaxes, so it turned out that my code was incompatible. I lost perhaps two hours because I didn't start with the basic question: what are my version constraints.

Lesson

Ask: what are my version constraints (for everything) before writing a single line of code