Bug #50881
closedFix 4.5/4.7 missing autoloaded classes (i.e. backend_cacheActionsHook)
100%
Description
Noticed a fatal error with solr 3.0.0-dev where the require_once calls were removed. Interface backend_cacheActionsHook isn't autoloaded.
Updated by Christian Weiske over 11 years ago
tslib_menu_filterMenuPagesHook
does not get autoloaded, too. Happens in 4.7.14.
Updated by Ernesto Baschny about 11 years ago
- Status changed from New to Accepted
- Assignee changed from Jigal van Hemert to Ernesto Baschny
- Priority changed from Should have to Must have
- Target version set to next-patchlevel
- TYPO3 Version changed from 4.7 to 4.5
In 4.5 there are also several missing autoload entries in core_autoload.php. If we are aiming for the smooth migration and we recommend people to remove their require_once we need to make sure that this really works for the whole core.
I will regenerate the core_autoload.php with extdeveval and also include typo3/*.php files in it (because they too could be autoloaded, like the "template" or "bigDoc" classes) in 4.5 and 4.7.
Updated by Ernesto Baschny about 11 years ago
- Subject changed from interface backend_cacheActionsHook not autoloaded to Fix 4.5/4.7 missing autoloaded classes (i.e. backend_cacheActionsHook)
Updated by Gerrit Code Review about 11 years ago
- Status changed from Accepted to Under Review
Patch set 1 for branch TYPO3_4-5 has been pushed to the review server.
It is available at https://review.typo3.org/23627
Updated by Ernesto Baschny about 11 years ago
If you review the above patch, here is a summary of what has exactly changed (despite the reordering of the class names):
4.5 removed in sysext/cms/ext_autoload.php (because they were buggy):¶
- 'tslib_tmenu_layers' => PATH_tslib . 'media/scripts/tmenu_layers.php',
- 'tslib_gmenu_layers' => PATH_tslib . 'media/scripts/gmenu_layers.php',
- 'tx_cms_backendlayout' => PATH_tslib . 'classes/class.tx_cms_backendlayout.php',
4.5 corrected in sysext/cms/ext_autoload.php:¶
- 'tslib_menu_filterMenuPagesHook' => PATH_tslib . 'interfaces/interface.tslib_menu_filterMenuPagesHook.php',
+ 'tslib_menu_filtermenupageshook' => PATH_tslib . 'interfaces/interface.tslib_menu_filterMenuPagesHook.php',
4.5 added in t3lib/core_autoload.php:¶
1) the whole typo3/*.php classes
2) + these:
+ 't3lib_db_postprocessqueryhook' => PATH_t3lib . 'interfaces/interface.t3lib_db_postprocessqueryhook.php',
+ 't3lib_db_preprocessqueryhook' => PATH_t3lib . 'interfaces/interface.t3lib_db_preprocessqueryhook.php',
+ 't3lib_error_http_abstractclienterrorexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_abstractclienterrorexception.php',
+ 't3lib_error_http_abstractservererrorexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_abstractservererrorexception.php',
+ 't3lib_error_http_badrequestexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_badrequestexception.php',
+ 't3lib_error_http_forbiddenexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_forbiddenexception.php',
+ 't3lib_error_http_pagenotfoundexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_pagenotfoundexception.php',
+ 't3lib_error_http_serviceunavailableexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_serviceunavailableexception.php',
+ 't3lib_error_http_statusexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_statusexception.php',
+ 't3lib_error_http_unauthorizedexception' => PATH_t3lib . 'error/http/class.t3lib_error_http_unauthorizedexception.php',
+ 't3lib_extjs_extdirectrouter' => PATH_t3lib . 'extjs/class.t3lib_extjs_extdirectrouter.php',
+ 't3lib_http_request' => PATH_t3lib . 'http/class.t3lib_http_request.php',
+ 't3lib_install_sql' => PATH_t3lib . 'class.t3lib_install_sql.php',
+ 't3lib_l10n_exception_filenotfound' => PATH_t3lib . 'l10n/exception/class.t3lib_l10n_exception_filenotfound.php',
+ 't3lib_l10n_exception_invalidparser' => PATH_t3lib . 'l10n/exception/class.t3lib_l10n_exception_invalidparser.php',
+ 't3lib_l10n_exception_invalidxmlfile' => PATH_t3lib . 'l10n/exception/class.t3lib_l10n_exception_invalidxmlfile.php',
+ 't3lib_l10n_factory' => PATH_t3lib . 'l10n/class.t3lib_l10n_factory.php',
+ 't3lib_l10n_locales' => PATH_t3lib . 'l10n/class.t3lib_l10n_locales.php',
+ 't3lib_l10n_parser_abstractxml' => PATH_t3lib . 'l10n/parser/class.t3lib_l10n_parser_abstractxml.php',
+ 't3lib_l10n_parser_llphp' => PATH_t3lib . 'l10n/parser/class.t3lib_l10n_parser_llphp.php',
+ 't3lib_l10n_parser_llxml' => PATH_t3lib . 'l10n/parser/class.t3lib_l10n_parser_llxml.php',
+ 't3lib_l10n_parser' => PATH_t3lib . 'l10n/interfaces/interface.t3lib_l10n_parser.php',
+ 't3lib_l10n_parser_xliff' => PATH_t3lib . 'l10n/parser/class.t3lib_l10n_parser_xliff.php',
+ 't3lib_l10n_store' => PATH_t3lib . 'l10n/class.t3lib_l10n_store.php',
+ 't3lib_message_abstractstandalonemessage' => PATH_t3lib . 'message/class.t3lib_message_abstractstandalonemessage.php',
+ 't3lib_tceforms_valueslider' => PATH_t3lib . 'tceforms/class.t3lib_tceforms_valueslider.php',
+ 't3lib_utility_math' => PATH_t3lib . 'utility/class.t3lib_utility_math.php',
+ 't3lib_utility_monitor' => PATH_t3lib . 'utility/class.t3lib_utility_monitor.php',
4.5 fixed in t3lib/core_autoload.php:¶
1):
- 't3lib_search_livesearch_queryParser' => PATH_t3lib . 'search/class.t3lib_search_livesearch_queryParser.php',
+ 't3lib_search_livesearch_queryparser' => PATH_t3lib . 'search/class.t3lib_search_livesearch_queryParser.php',
2):
- 't3lib_tree_pagetree_indicatorprovider' => PATH_t3lib . 'tree/pagetree/interfaces/interface.t3lib_tree_pagetree_interfaces_indicatorprovider.php',
+ 't3lib_tree_pagetree_interfaces_indicatorprovider' => PATH_t3lib . 'tree/pagetree/interfaces/interface.t3lib_tree_pagetree_interfaces_indicatorprovider.php',
+ 't3lib_tree_pagetree_interfaces_collectionprocessor' => PATH_t3lib . 'tree/pagetree/interfaces/interface.t3lib_tree_pagetree_interfaces_collectionprocessor.php',
Updated by Gerrit Code Review about 11 years ago
Patch set 1 for branch TYPO3_4-7 has been pushed to the review server.
It is available at https://review.typo3.org/23628
Updated by Ernesto Baschny about 11 years ago
The 4.7 branch was much cleaner already, probably someone did run the cleanup script before the release. :)
But still, some changes (including the tslib_menu_filtermenupageshook fix mentioned by Christian):
4.7 removed in sysext/cms/ext_autoload.php (because they were buggy):¶
- 'tslib_gmenu_layers' => PATH_tslib . 'media/scripts/gmenu_layers.php',
- 'tslib_tmenu_layers' => PATH_tslib . 'media/scripts/tmenu_layers.php',
- 'tx_cms_backendlayout' => PATH_tslib . 'classes/class.tx_cms_backendlayout.php',
4.7 added in sysext/cms/ext_autoload.php:¶
+ 'tx_cms_fehooks' => PATH_tslib . 'hooks/class.tx_cms_fehooks.php',
4.7 corrected in sysext/cms/ext_autoload.php:¶
- 'tslib_menu_filterMenuPagesHook' => PATH_tslib . 'interfaces/interface.tslib_menu_filterMenuPagesHook.php',
+ 'tslib_menu_filtermenupageshook' => PATH_tslib . 'interfaces/interface.tslib_menu_filterMenuPagesHook.php',
4.7 added in t3lib/core_autoload.php:¶
the whole typo3/*.php classes
4.7 removed in t3lib/core_autoload.php:¶
- 't3lib_signalslot_invalidslotexception' => PATH_t3lib . 'signalslot/InvalidSlotException.php',
Updated by Ernesto Baschny about 11 years ago
- Is Regression set to No
Just noticed that I missed some subdirectories of typo3/, most importantly the typo3/interfaces, which contain exactly the claimed backend_cacheActionsHook. Will expand the list further next week. You can already review this state, if you want and then just the diff to the next round afterwards. Thanks! ;)
Updated by Gerrit Code Review about 11 years ago
Patch set 2 for branch TYPO3_4-5 has been pushed to the review server.
It is available at https://review.typo3.org/23627
Updated by Gerrit Code Review about 11 years ago
Patch set 2 for branch TYPO3_4-7 has been pushed to the review server.
It is available at https://review.typo3.org/23628
Updated by Ernesto Baschny about 11 years ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset 2ce69d29276f9d6fe48416670a19049a2339e279.