Each package version is updated to use the last one if it doesn't
require code changes. Only Django REST Framework is currently stuck on
release 3.7 since breaking changes and deprecations come with newer
releases.
Django automatically renames test databases to 'test_%s' % settings.DATABASES[*]["NAME"], so modoboa_test became test_modoboa_test. There's no point creating the database in `before script` as the test suite creates it.
https://docs.djangoproject.com/en/1.11/topics/testing/advanced/#django.db.connection.creation.create_test_db
- target oldest currently supported database servers, travis currently defaults to PostgreSQL 9.2 which isn't supported anymore.
- move database dependencies out of travis.yml into test_requirements.txt and pin to minimum versions recommended by django.
See https://docs.djangoproject.com/en/1.11/ref/databases/
- use MySQL root user for tests, we already use the root user (postgres) for PostgreSQL.
- fix typo in modoboa/test_settings for DB variable, default should be POSTGRESQL not POSTGRES
- enable MySQL strict mode (on by default on MySQL >= 5.7)
See https://docs.djangoproject.com/en/1.11/ref/databases/#mysql-sql-mode