Require_once of interface backend_cacheActionsHook
I installed the trunk from https://svn.typo3.org/TYPO3v4/Extensions/purge (@ r66141) on the latest 4.7.6 version of TYPO3 and faced the problem that I can not log in any more when the extension is installed (Server error 500, mod_fcgid: stderr: PHP Fatal error: Interface 'backend_cacheActionsHook' not found in /var/www/vhosts/xyz/typo3conf/ext/purge/Classes/Hooks/ClearCacheMenu.php on line 3).
The problem is, that the interface backend_cacheActionsHook used in the class Tx_Purge_Hooks_ClearCacheMenu is not required and there's no autoloader for these interfaces.
I checked other usages of this interface in the core and found one in the class typo3/sysext/lang/hooks/clearcache/class.tx_lang_clearcachemenu.php. There the interface is required manually in the class, so I think you should do this, too ;-)
--> see attached patch
[BUGFIX] Require_once of interface backend_cacheActionsHook
With TYPO3 4.7, the backend_cacheActionsHook interface is no more
implicitly available, as it was in prior versions (where it was
included by rtehtmlarea in class.tx_rtehtmlarea_clearcachemenu.php).
Thanks to Sascha Hepp for reporitng this issue and providing a patch.
#2 Updated by Sascha Hepp over 6 years ago
to me it was not a problem with the autoloader when I reported it (7 months ago...).
Reason: As mentioned in the description the interface is included manually even in the core sysext "lang" (and still is in 4.7: https://git.typo3.org/Packages/TYPO3.CMS.git/blob/e037ebbf93358567eb1e289dfdca1fc97cea45ed:/typo3/sysext/lang/hooks/clearcache/class.tx_lang_clearcachemenu.php#l35 , Line 35).
I don't know whether it's still a problem or whether it was an autoloader-bug which was solved in the meantime but no one removed the inclusion of the interface in the sysext lang ;-)
#3 Updated by Stefan Rotsch over 6 years ago
I can confirm this issue after upgrading from TYPO3 4.6 to 4.7.
In 4.5. and 4.6, the interface was required in rtehtmlarea (class.tx_rtehtmlarea_clearcachemenu.php). So, when loading local extensions (eg. purge), the inteface was already available. The class was removed with TYPO3 4.7, so the interface is not available "by default" anymore.
I think it's safe to apply the suggested patch.
@tolleiv: If you agree, I'll apply the patch and create a new tag :-)