Important: Four job columns are nullable now 

Description 

Four columns of tx_academicjobs_domain_model_job were declared as TEXT with a default value:

company_name text NOT NULL DEFAULT '',
sector text NOT NULL DEFAULT '',
required_degree text NOT NULL DEFAULT '',
contractual_relationship text NOT NULL DEFAULT '',
Copied!

MySQL cannot store a literal default value on a TEXT column. TYPO3 v13 works around that by expressing the default in the DEFAULT ('') syntax MySQL 8.0.13 introduced. TYPO3 v12 does not. There the columns were created NOT NULL with no default at all, and every statement that did not name them was rejected:

Field 'company_name' doesn't have a default value
Copied!

Imports and data sets are the reachable case. The frontend form and the backend are not affected: the form persists a full record, and the backend fills the columns from their default in TCA.

The columns keep their type, lose the default and accept NULL :

company_name text DEFAULT NULL,
sector text DEFAULT NULL,
required_degree text DEFAULT NULL,
contractual_relationship text DEFAULT NULL,
Copied!

Impact 

Job records can be written on TYPO3 v12 with MySQL without naming these four columns.

Records written that way now store NULL where they previously stored an empty string. Existing rows are not changed, so a column can hold both. The domain model is unaffected, Extbase casts NULL to an empty string for its string properties. Code reading the columns directly should compare with empty() rather than with '' .

Affected Installations 

All installations of this extension. The database schema has to be updated, either in Admin Tools > Maintenance > Analyze Database Structure or with vendor/bin/typo3 extension:setup . The change only relaxes the columns, so no data is converted and nothing can be lost.