Bug #89235
closedDatabase fields not created when installing extension with dependency
0%
Description
TYPO3 v9.5.10-dev
- installing extension
focuspoint
which has dependency to extensionautoload
(bot extensions not available in installation in this scenario) - extension installation works fine - however, new database fields of
focuspoint
are not created (can be verified by checking in install tool, database analyzer)
Updated by Oliver Hader about 5 years ago
- Target version set to Candidate for patchlevel
Updated by Susanne Moog over 4 years ago
- Status changed from New to Needs Feedback
I'm confused. I wanted to reproduce the issue and debugged the installation. updateDatabase is called after activation of both packages in my installation, however: focuspoint (I guess this one: https://github.com/lochmueller/focuspoint/) does not have any ext_tables.sql fields defined and therefor there is nothing created - and the dependent extension autoloader also does not have any db fields. I don't quite get it.
Updated by Oliver Bartsch about 4 years ago
- Status changed from Needs Feedback to Closed
Hi, I also tried to reproduce this. It's actually true, the tables for ext:focuspoint are not added during install. Reason therefore seems to be the way these extensions handle database and TCA definitions. As Susi already mentioned, there is no ext_tables.sql file in in neither of the two extensions. Furthermore the TCA has no valid `ctrl` (see: https://github.com/lochmueller/focuspoint/blob/master/Configuration/TCA/tx_focuspoint_domain_model_dimension.php) section for management fields.
This is all handled AFAICS dynamically by ext:autoload using so called "smart objects".
From the extension configuration:
You do not need any SQL in your ext_tables.sql file, because the smart object management register all smart objects via a slot at the database. But you can still use the ext_tables.sql if you have any kind of special tables like mm-relation tables.
Please also use the TcaFiles loader to create the right base TCA files for the first content objects.
This whole custom implementation obviously only works after the both extensions are installed. The issues lies in how these extensions handle the configuration and registration process.
Therefore this is no bug in the core and I'll close this issue for now. If you feel there is still something not working in core, please let me know and I'll reopen the issue.