Ako nainštalovať Neon cez Composer

ComposerNeon

Ak potrebujete vo svojom projekte použiť Neon a nechce sa vám sťahovať .zip súbor, tu je malý návod ako ho nainštalovať cez Composer.

Neon je alternatívny jazyk/formát na zapisovanie dát do štruktúr, ktoré sú veľmi ľahko čitateľné pre človeka. Na jeho domovskej stránke nájdete príklad.

Neon je súčasťou Nette frameworku, takže jeden spôsob ako ho nainštalovať je spolu s Nette. Čo však v prípade, že ho chcete použiť v inom projekte ako standalone knižnicu?

Riešenie je viac než jednoduché. Stačí si vytvoriť composer.json súbor a v časti repositories ho zadefinovať ako package.

{
	"require": {
		"nette/neon": "1.0"
	},
	"repositories": [
		{
			"type": "package",
			"package": {
				"name": "nette/neon",
				"version": "1.0",
				"dist": {
					"url": "https://ne-on.org/neon.zip",
					"type": "zip",
					"shasum": "6064827bbc0239ddabe5edcc0d3a5995a092e118"
				},
				"autoload": {
					"classmap": ["Neon.php"]
				}
			}
		}
	]
}

A už len spustiť composer install a je to.

user@pc:~project$ composer install

Dôležitou časťou je autoload časť, ktorá zabezpečí, že sa nám načítajú všetky triedy zo súboru Neon.php. Po inštalácií sa môžete o tom presvedčiť nahliadnutím do súboru /vendor/composer/autoload_classmap.php.

<?php

// autoload_classmap.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'Neon' => $vendorDir . '/nette/neon/Neon.php',
    'NeonEntity' => $vendorDir . '/nette/neon/Neon.php',
    'NeonException' => $vendorDir . '/nette/neon/Neon.php',
);

PS: Samozrejme aby načítanie tried fungovalo, treba použiť Composer autoloader.