Php e userFunc in TYPO3 7: Cosa cambia?

Da grandi utilizzatori delle userFunc in TYPO3 non potevamo non tenerci aggiornati dopo il rilascio della versione 7 e cominciare a fare qualche test.

includeLibs
La prima differenza che abbiamo notato è proprio nell'inclusione di una userFunc nel TypoScript.
Nella versione 6 si poteva includere il file fisico contenente uno script inserendo, arbitrariamente nella pagina, una di queste stringhe e dopo includere la userFunc:

config.includeLibrary = {$myPhpLib} oppure includeLibs.myLib = {$myPhpLib}
...
page.20= USER
page.20.userFunc= user_myLib->myFunc

Dove la costante $myPhpLib contiene /path/user_myLib.php

In TYPO3 7,in USER e USER_INT, l'unico modo accettato, dopo aver fatto diversi test con i vecchi metodi, è il seguente:

page.20= USER
page.20.includeLibs = {$myPhpLib}
page.20.userFunc= user_myLib->myFunc

Inserendo dentro USER direttamente la libreria.

debug
Dopo la corretta inclusione della libreria abbiamo provato ad inserire la funzione t3lib_utility_Debug::debug in myFunc ma subito abbiamo riscontrato dei problemi:
PHP Fatal error:  Class 't3lib_utility_Debug' not found
A differenza di prima che bastava richiamare l'oggetto nella funzione:

public function debug($what){
 t3lib_utility_Debug::debug($what);
 return true;
}

Ora bisogna dichiarare tutto il namespace con i nuovi:

public function debug($what){
 TYPO3\CMS\Core\Utility\DebugUtility::debug($what);
 return true;
}

Una cosa che sembra notevolmente cambiata è l'output del debug a schermo, passando da:

a

 

Continueremo a cercare differenze che saranno presto inserite.

DON'T PANIC