ijvo/jquery-fileupload: Nette\PhpGenerator\ClassType::$methods is deprecated

Allconius
Člen | 313
+
0
-

Ahoj, zkompostoval jsem si novy projekt na PHP 8.1:

composer create-project nette/web-project projekt
composer require nette/nette
composer require almasaeed2010/adminlte
composer require dg/composer-cleaner
composer require ijvo/jquery-fileupload
composer require phpmailer/phpmailer
composer require tomaj/nette-bootstrap-form

ale laděnka mi v komponentě ijvo/jquery-fileupload vypisuje deprecated:

Property Nette\PhpGenerator\ClassType::$methods is deprecated, use Nette\PhpGenerator\ClassType::getMethods() method in /data/docs/www/html/projekt/vendor/ijvo/jquery-fileupload/src/FileUploadExtension.php on line 90

nelíbí se mu ten $init = $class->methods[‚initialize‘];

	/**
	 * @param \Nette\PhpGenerator\ClassType $class
	 */
	public function afterCompile(\Nette\PhpGenerator\ClassType $class): void
	{
		$init = $class->methods['initialize'];

		$init->addBody('\Zet\FileUpload\FileUploadControl::register($this->getService(?), ?);', [
//		$this->getContainerBuilder()->getByType('\Nette\DI\Container'), $this->configuration,
				$this->getContainerBuilder()->getByType(Container::class), $this->getConfig(),
		]);
	}

netuším proč, komponenta má last update 2 roky: ijvo/jquery-fileupload
a pak ještě jeden dotaz, dá se nějak přeskočit deprecated v laděnce ? Když ji vypnu tak se stránka načte ale na další stránce je jiná chyba, ale zobrazí se pak samozřejmě jen 500 při vyplé laděnce a v logu na serveru se mi to neuloží, takže nevím co tam je za error. Ideálně vyladit ten deprecated …

David Grudl
Nette Core | 8136
+
+2
-

Zkus tam použít PhpGenerator 3, tam property $method jestě deprecated není.

composer require nette/php-generator "^3"

Vypnutí deprecated chyb:

error_reporting(~E_USER_DEPRECATED);
Allconius
Člen | 313
+
0
-

David Grudl napsal(a):

Zkus tam použít PhpGenerator 3, tam property $method jestě deprecated není.

composer require nette/php-generator "^3"

Vypnutí deprecated chyb:

error_reporting(~E_USER_DEPRECATED);

Ahoj, super provedl jsem ten downgrade php-generatoru a už to nic nehlásí, díky moc :-) Když bych chtěl vypnout to zobrazování pouze v v laděnce a ne třeba na celým web serveru tak to nastavení error_reporting mám umístit kam ? Někam do té třídy Bootstrap ?

Pavel Kravčík
Člen | 1182
+
0
-

Ano, ale dej to až za $configurator->enableTracy().