PEAR kanál a PEAR balíček Nette

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
kukulich
Člen | 58
+
0
-

Vytvořil jsem pokusně PEAR balíček pro Nette.

Instalace:

pear channel-discover pear.kukulich.cz
pear install kukulich/Nette-beta

Rád bych ho využil pro připravovaný PEAR balíček ApiGenu, aby Nette nemuselo být přímo součástí balíčku ApiGenu, ale pouze se přidalo do vyžadovaných závislostí.

Je to zatím pouze proof-of-concept, takže jsem udělal pouze balíček se jmennými prostory.

Navrhuji rozchození PEAR kanálu na https://pear.nette.org a přidání balíčků tam. Kdyby byl zájem asi bych mohl podporu generování doplnit rovnou do build-tools.

Osobně asi nevidím žádný důvod, proč PEAR balíček nemít. Naopak to doplní další možnost jak snadno stáhnout Nette. A také se Nette stane použitelnější právě pro projekty, které jsou instalovatelné přes PEAR.

David Grudl
Nette Core | 8218
+
0
-

Můžeš sem odkázat nějaké informační zdroje, jak něco takového vytvořit?

kukulich
Člen | 58
+
0
-

PEAR kanál

Nevím, jestli je někde dokumentace, ale stačí si nainstalovat http://www.pirum-project.org/, připravit krátký xml soubor a je to razdva hotovo. Výsledek k vidění třeba na http://pear.kukulich.cz/ nebo http://pear.phpunit.de/.

PEAR balíček

Dělal jsem to podle http://pear.php.net/…package2.php, ale v principu je třeba vytvořit http://temp.kukulich.cz/package.xml, nahrát do rootu git repozitáře Nette a pustit pear package. Vytvoří to .tgz, které se pak přes pirum přidá do kanálu.

Patrik Votoček
Člen | 2221
+
0
-

Cool chtěl jsem něco takového ukuchtit na todo listu to mělo ale nízkou prioritu. Super že si to můžu škrtnout (aniž bych hnul prstem).

Jen detail hodilo by se kdyby jsi popsal jak používat Nette z PEAR balíčku (ukázkový bootstrap.php). Někteří to totiž nemusí vědět.

  • hlásím „bug“ PDO není required ale optional.
kukulich
Člen | 58
+
0
-

Patrik Votoček napsal(a):

Jen detail hodilo by se kdyby jsi popsal jak používat Nette z PEAR balíčku (ukázkový bootstrap.php). Někteří to totiž nemusí vědět.

Normálně, když používáš něco z PEAR balíčku (např. PHPUnit), tak se počítá s tím, že cestu k nainstalovaným knihovnám máš v include_path a pak máš standardní autoload. Tenhle způsob ale u Nette nefunguje kvůli adresáři common a souborům exceptions.php a loader.php. Takže jediné možné použití je klasické includování loader.php a na to mi přišlo zbytečné psát příklad. Navíc bych tohle raději viděl popsané na https://doc.nette.org/cs/quickstart.

Mimochodem, ještě jsem zvažoval, že bych do balíčku dal místo jednotlivých souborů pouze nette.min.php, ale osobně mám pocit, že v balíčku by spíš měla být neminifikované verze Nette.

  • hlásím „bug“ PDO není required ale optional.

Pravda, překoukl jsem se v Requirements-Checkeru. V ukázkovém XML souboru upraveno.

David Grudl
Nette Core | 8218
+
0
-

Díky za nakopnutí, https://pear.nette.org/ by mělo fungovat.

kukulich
Člen | 58
+
0
-

Perfektní, díky!

Jen tam zůstal ten malý bug, který hlásil Patrik. PDO má být pouze optional.

Opravený package.xml: http://temp.kukulich.cz/package.xml

Opravený Nette-2.0.0beta.tgz: http://temp.kukulich.cz/….0.0beta.tgz

kukulich
Člen | 58
+
0
-

Vytvořil jsem i balíček pro Texy:

Package.xml: http://temp.kukulich.cz/…/package.xml

Texy-2.1.0.tgz: http://temp.kukulich.cz/…xy-2.1.0.tgz

Připravil jsem ho pro pear.nette.org. Nevím, jestli dává smysl ho dát tam nebo vytvořit i pear.texy.info.

josef.sabl
Člen | 153
+
0
-

Takže jediné možné použití je klasické includování loader.php a na to mi přišlo zbytečné psát příklad. Navíc bych tohle raději viděl popsané na https://doc.nette.org/cs/quickstart.

Já bych to docela přivítal. Nainstaloval jsem si Nette z Pearu a co teď? :-)