Extensions automatically removed in PackageStates.php causing fatal errors
After upgrading a project from TYPO3 6.2b1 to the latest master I get fatal errors about extensions not being loaded anymore.
This is because most extensions are automatically removed from the PackageStates.php
When resetting the PackageStates.php to 'beta1' and removing the typo3temp/Cache the first page hit works correctly, but the second one gives an error.
After some debugging this seem to be caused by a71add78 (#52828) and only occurs when the PackageStates.php contains an extension which is not available on the system, even when that extension is inactive.
How to reproduce:
'extension_builder' => array ( 'state' => 'inactive', 'packagePath' => 'typo3conf/ext/extension_builder/', 'classesPath' => 'Classes/', ),
to the PackageStates.php, remove the typo3temp/Cache and refresh the page twice.
#2 Updated by Ernesto Baschny over 6 years ago
- Status changed from New to Needs Feedback
I cannot really reproduce that. As soon as I add the "extension_builder" part to PackageStates.php without even having this extension in that path, and use the EM to install something, it gets removed / cleaned from the PackageStates again.
Do you have more details on how to reproduce that? Maybe some other circumstances? Could you share the complete PackageStates file with us?
#3 Updated by Peter Beernink over 6 years ago
The attached PackageStates.php is how I used it in beta1. (Besides of the extension_builder example, it also contains an active phpunit).
The only thing I need to do is remove the typo3temp/Cache, go to the TYPO3 login screen.
At this stage the typo3temp/Cache has stored some cached classes and the PackageStates.php is rewritten, missing most of the extensions.
When refreshing the login screen an error is thrown.
#4 Updated by Peter Beernink over 6 years ago
In addition to the above mentioned PackageStates.php, I've also been able to reproduce it on a completely fresh installation based on current master (51e23ed).
If I add the mentioned statement as first extension in the PackageStates.php and removing the cache, loading the Login screen twice will result in an empty PackageStates.ph and an error stating the 'backend' extension is not loaded.