Jak zprovoznit texylu v nette 3

Bazylek
Člen | 22
+
0
-

Dobrý den,

pokouším se zprovoznit Texylu v Nette 3 na localhost (xampp PHP 7.4.4). Texy mi funguje dobře. Největší problém mám s Webloaderem, jelikož jsem nikde nenašel možnost instalace přes composer, tak jsem WebLoader nakopíroval do root.

common.neon

webloader: WebLoader\Nette\Extension

Tracy:
Extension ‚WebLoader\Nette\Extension‘ not found or is not Nette\DI\CompilerExtension descendant.

Popřípadě existuje nějaká jiná alternativa místo texyly.

Děkuji za každou radu.

CZechBoY
Člen | 3608
+
0
-

webloader nainstaluješ přes composer require janmarek/webloader.
Kdyby tě zajmalo jak to zjistit tak viz composer.json v repozitáři https://github.com/…omposer.json

Nicméně nejsem si jist, že webloader je kompatibilní s Nette 3.

Editoval CZechBoY (26. 4. 2020 14:40)

Bazylek
Člen | 22
+
0
-

Děkuji za rychlou odpověď. Vyzkoušel jsem, bohužel neprošel, není optimalizovaný pro verzi nette 3

C:\>cd c:\dropbox\website\web

c:\Dropbox\website\web>composer require janmarek/webloader
Using version ^2.5 for janmarek/webloader
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for janmarek/webloader ^2.5 -> satisfiable by janmarek/webloader[v2.5.0].
    - janmarek/webloader v2.5.0 requires nette/application ~2.3@dev -> satisfiable by nette/application[v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, v2.3.13, v2.3.2, v2.3.3, v2.3.4, v2.3.5, v2.3.6, v2.3.7, v2.3.8, v2.3.9, v2.3.x-dev, v2.4.0, v2.4.1, v2.4.10, v2.4.11, v2.4.12, v2.4.13, v2.4.14, v2.4.2, v2.4.3, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.4.9, v2.4.x-dev] but these conflict with your requirements or minimum-stability.


Installation failed, reverting ./composer.json to its original content.

Napadlo mě, že bych složku s webloaderm přesunul do App a v bootstrapu přidal:

class Bootstrap
{
	public static function boot(): Configurator
	{
		$configurator = new Configurator;

		$configurator->setDebugMode(true); // enable for your remote IP
		//$configurator->setDebugMode('23.75.345.200'); // enable for your remote IP
		$configurator->enableTracy(__DIR__ . '/../log');

		$configurator->setTimeZone('Europe/Prague');
		$configurator->setTempDirectory(__DIR__ . '/../temp');

		$configurator->createRobotLoader()
			->addDirectory(__DIR__)
			->register();

		$configurator
			->addConfig(__DIR__ . '/config/common.neon')
			->addConfig(__DIR__ . '/config/local.neon');

		$container = $configurator->createContainer();
		$application = $container->getByType(WebLoader\Nette\Extension::class);

		return $configurator;
	}


	public static function bootForTests(): Configurator
	{
		$configurator = self::boot();
		\Tester\Environment::setup();
		return $configurator;
	}
}

Pak postupně odstranit chyby. Myslím si, že toto řešení není vhodné.

Editoval Bazylek (26. 4. 2020 18:08)

Gappa
Nette Blogger | 198
+
+1
-

Co se Webloaderu týče, tak existuje toto:

Bazylek
Člen | 22
+
0
-

Instalace proběhla bez problémů

composer require bicisteadm/webloader-reload

Vyzkouším.
Děkuji

Bazylek
Člen | 22
+
0
-

Mám ještě jeden problém, když jsem nastvil bootstrap a common, tak vyskakuje tot:

Name 'webloader' is already used or reserved.

Přes composer jsem instaloval jen :

composer require joseki/webloader-filters
a
composer require bicisteadm/webloader-reload

Může být problém v joseki, nebo mám hledat někde jinde.
Děkuji

Bazylek
Člen | 22
+
0
-

Odinstaloval jsem joseki

composer remove joseki/webloader-filters

odzkoušel, zkontroloval, že mám ve všech neon Tabulatory, ale Tracy pořád chyba:

Nette\InvalidArgumentException
Name 'webloader' is already used or reserved.
David Matějka
Moderator | 6445
+
+1
-

nemas tu extension nainstalovanou 2×? mozna te zmatlo, ze je v readme „For older versions of Nette, you have to register the extension in app/bootstrap.php:“ … coz ale neplati, pokud ji registrujes do config.neon

Bazylek
Člen | 22
+
0
-

Moc děkuji Davide, byla tam 2×. Když jsem smazal v bootstrapu

	$container = $configurator->createContainer();
	$application = $container->getByType(WebLoader\Nette\Extension::class);

tak už vše proběhlo v pořádku. Máš pravdu postupoval jsem podle readme, ale toto mě nenapadlo.
Děkuji

Editoval Bazylek (27. 4. 2020 10:00)