markette/gopay nelze přes composer nainstalovat

Rndoom04
Člen | 75
+
0
-

Dobrý večer přeji,
snažím se skrze composer nainstalovat jeden doplněk. Co jsem dříve instaloval první kdyby/translation, vše bylo ok. Nyní se snažím nainstalovat markette/gopay. Bohužel mi terminál hlásí chyby.

Začnu od začátku. Napsal jsem příkaz

composer update

Vše se updatnulo v pořádku. Poté jsem napsal:

composer require markette/gopay

A vyskákalo na mě:

Problem 1
   - Installation request for markette/gopay ^3.2 -> satisfiable by markette/gopay[v3.2.0].
   - markette/gopay v3.2.0 requires nette/forms ~2.3.0|~2.4.0 -> satisfiable by nette/forms[v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, 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.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.

V composer.json mám:

...
"require": {
		"php": ">=7.1.0",
		"nette/application": "^3.0",
		"nette/bootstrap": "^3.0",
		"nette/caching": "^3.0",
		"nette/database": "^3.0",
		"nette/di": "^3.0",
		"nette/finder": "^2.5",
		"nette/forms": "^3.0",
		"nette/http": "^3.0",
		"nette/mail": "^3.0",
		"nette/robot-loader": "^3.0",
		"nette/safe-stream": "^2.4",
		"nette/security": "^3.0",
		"nette/utils": "^3.0",
		"latte/latte": "^2.5",
		"tracy/tracy": "^2.6",
		"dg/adminer-custom": "^1.8",
		"kdyby/translation": "^3.0"
},
...

Čemu pořádně nerozumím je ta tilda u chyby: „requires nette/forms ~2.3.0|~2.4.0“ Co znamená? Že potřebuje konkrétně tuto verzi, nebo je to minimálně toto a vyšší? Pokud ta druhá varianta, tak tu splňuji a nechápu v tom případě chybové hlášení. Pokud potřebuje nižší verzi, jak to objeít tak, aby to fungovalo a nemusel jsem zbytečně snižovat verzi?

Děkuji všem za odpověď na můj hloupý dotaz. Přeji hezký večer. :)

Edit. Zkoušel jsem i v composeru downgradovat nette/form, ten chtel downgrade nette/http a ten mi zase nepovolil kdyby/translation. Tedy musím zůstat na aktuální verzi. :) Chápu tedy, že ten markette/gopay je už starý a na nový nette nejde? :) Popřípadě… Neměl by někdo prosím funkční řešení pro gopay platební bránu? Stačí mi jednorázové platby před redirect. :)

Editoval Rndoom04 (1. 5. 2020 0:21)

ZahorskyJan
Člen | 59
+
+2
-

Je to přesně tak, ten balíček nemá podporu pro Nette 3. Můžeš si udělat fork, povýšit v něm závislosti, vyzkoušet, jestli to funguje jak má a případně opravit chyby. Fork pak můžeš používat ve svém projektu a jako bonus můžeš udělat pull request zpátky do původního balíčku a autor, pokud není balíček opuštěný úplně, vydá novou verzi s podporou Nette 3.

Felix
Nette Core | 1247
+
+3
-

Balicek opusteny urcite neni. :-) Projekty, kde je pouzity jsou jeste na Nette 2.4, tak nebylo proc to povysovat. Bylo by fajn udelat ty upravy a poslat PR nebo se domluvit na nejakem budgetu a muzem to udelat my z contributte.

ZahorskyJan
Člen | 59
+
0
-

Odpověď jsem pojal víc obecně, protože člověk narazí na spoustu nepovýšených balíčků.

@Felix opuštěním jsem nemyslel konkrétně tento balíček :-)

Rndoom04
Člen | 75
+
0
-

Děkuji za odpovědi. :) Jen jsem se chtěl ujistit. :)

Vůbec netuším, co je fork, tedy ani nevím jak s ním zacházet a jak to celé udělat.

Nakonec jsem sáhl po řešení přímo od gopay. :)

Petr Parolek
Člen | 455
+
0
-

OT @Rndoom04 https://help.github.com/…/fork-a-repo , dnes se bez znalostí GITu neobejdeš, velmi užitečná věcicka při vývoji a v týmu nezbytnost

Ondřej Kubíček
Člen | 494
+
0
-

@Felix a jaký je pak rozdíl oproti markette/gopay-inline ? když jsem to řešil a potřeboval jsem podporu nette 3 pochopil jsem to tak, že je to právě náhrada gopay ?

Felix
Nette Core | 1247
+
+2
-

To je historicky vyvoj.

  • markette/gopay byla prvni verze, kdyz Gopay melo SOAP branu
  • markette/gopay-inline byla prepracovana verze, kdyz Gopay uvolnilo vyskakovaci okenko s REST API (myslim, ze tomu rikali inline)

Jak sel cas, tak pak vznikl oficialni Gopay PHP SDK, ktera mi hodne pripomina markette/gopay+gopay-inline. xD