Composer / sandbox /verze Nette
- MokrOus
- Člen | 5
Ahoj,
při řešení jiného problému (gettext) jsem zjistil že se nevím, jak
správně použít composer pro stažení sandboxu.
Před spuštěním composeru s ujistím, že ~/.composer/ neexistuje abych
vyloučil nějaké chybné/staré nastavení.
PHP mám ve verzi 5.3.2
spuštěním příkazu:
composer create-project nette/sandbox nette-blog
nebo: composer require nette/sandbox
podle https://doc.nette.org/cs/quickstart
se mi stáhne sandbox ve verzi 2.1.12 což je evidentně stará verze.
pokud se pokusím vnutit composeru vyšší verzi:
composer create-project nette/sandbox mujweb 2.3.8
dostanu odpověď:
[InvalidArgumentException]
Could not find package nette/sandbox with version 2.3.8.
pokud stahuji příkazy typu: composer require nette/nette
nebo: composer require nette/application
stahuje se správně nejnovější verze 2.3.8 (ale zase chybí adresářová
struktura ze sandboxu)
Tušíte prosím někdo, v čem by mohl být zakopaný pes? Jaký by měl být správný postup?
Moc díky
MokrOuš
- David Grudl
- Nette Core | 8239
Zkus použít parametr --ignore-platform-reqs
, sandbox totiž
vyžaduje 5.3.7, aby fungoval předpřipravený UserManager.
Nette\Security\Passwords totiž vyžaduje PHP 5.3.7. (Vše ostatní běží
s 5.3.1).
- MokrOus
- Člen | 5
Díky za info, provedl jsem upgrade, takže mám novější PHP a instalace sandboxu už funguje pěkně. Moc díky za radu a asi bych doporučil upravit homepage Quickstartu tak, aby tam bylo uvedena minimální verze PHP, se kterou nejnovější verze Nette poběží (asi ta 5.3.7). Pro začátečníka to pak může být docela oříšek přijít na příčinu problému.
- David Grudl
- Nette Core | 8239
Ten Quickstart skutečně běží s PHP 5.3.1, protože nepoužívá tu jednu jedinou třídu, která vyžaduje PHP 5.3.7, takže asi spíš upravím Sandbox.
- err
- Člen | 77
S tou verzí php 5.3.7 kvůli hash() je to trošku podpásovka. Zejména, pokud se na stránkách se stažením uvádí – vyžaduje php verze 5.3.1 …
Mám php 5.3.3 a na serveru jej upgradovat zatím nemůžu. Ten usermanager si přepíšu, což o to, ale je nějaká možnost, že narazím na další nekompatibility?
- David Grudl
- Nette Core | 8239
Je to jediný případ. Nedá se nic nedělat, prostě se ukázalo, že tahle jedna funkce použitá na jediném místě v Nette obsahuje chybu v PHP < 5.3.7. Tudíž jí nelze používat. Quick start ji nepoužívá, takže si vystačí s PHP 5.3.1.