Add support for table comment evolutions in Django 4.2+.

Review Request #13344 — Created Oct. 14, 2023 and submitted — Latest diff uploaded

Information

Django Evolution
release-2.x

Reviewers

Django 4.2 introduced table comments. These are comments that are part
of the table schema, describing a table, and are supported in MySQL 8+
and Postgres 12+ (the minimum versions that Django 4.2 supports), but
not SQLite.

This supports signature storage of table comments and evolutions via
ChangeMeta.

This functionality is required for Django 4.2 support, as this is
introspected on our mock models, and we don't want to risk storing empty
values or misleading the backend. Fortunately, as we can piggy-back on
SchemaEditor, support is easy to add and maintain going forward.

Ran unit tests for SQLite, Postgres, and MySQL on a range of database
versions on Python 3.11 and 3.12, Django 3.2-4.2, which should provide
sufficient coverage for this feature.

Commits

Files