Test mysql & sqlite
First off: This commit set changes the default development database backend to mysql. sqlite, however, is still completely supported with the caveat that a user must now modify config.dev to use the sqlite backend.
While looking into this, it was discovered that our SQLAlchemy backend for mysql (mysql-connector) completely broke model attributes when we switched to utf8mb4_bin (binary) -- it does not correct the correct conversion to and from binary utf8mb4.
The new, replacement dependency mysqlclient does. mysqlclient is also recommended in SQLAlchemy documentation as the "best" one available.
The mysqlclient backend uses a different exception flow then sqlite, and so models now raise IntegrityError when it finds problematic nulls (to centralize the exception logic).
In addition, now mysql and sqlite are both tested in CI. Docker hasn't been modified yet due to incoming changes to its config.
Merge request reports
Activity
requested review from @lfleischer
- Resolved by Kevin Morris
- Resolved by Kevin Morris
- Resolved by Kevin Morris
- Resolved by Kevin Morris
- Resolved by Kevin Morris
added 1 commit
- d6a21f33 - test both mysql and sqlite in .gitlab-ci.yml
added 1 commit
- 75af2ec9 - test both mysql and sqlite in .gitlab-ci.yml
requested review from @jocke-l
added 81 commits
-
75af2ec9...d7481b96 - 77 commits from branch
archlinux:pu
- aecb6494 - use mysql backend in config.dev
- 228bc8fe - fix aurweb.auth test coverage
- 62e58b12 - fix test_accounts_routes test coverage
- 4d1faca4 - test both mysql and sqlite in .gitlab-ci.yml
Toggle commit list-
75af2ec9...d7481b96 - 77 commits from branch