Accueil > Docs > Porter un plugin pour SPIP 4

Porter un plugin pour SPIP 4

mercredi 29 mars 2023, par b_b

phpcbf

coding standards https://www.spip.net/fr_article6677.html

vendor/bin/phpcbf plugins/spip_hal --ignore=lang/*

rector

composer require rector/rector --dev
vendor/bin/rector process plugins/spip_hal

phpstan

https://git.spip.net/spip-contrib-extensions/gis/issues/32

 # phpstan.neon.dist
parameters:
	paths:
		- .
	excludePaths:
		analyseAndScan:
			- lang
	level: 0
vendor/bin/phpstan --configuration=plugins/spip_hal/phpstan.neon.dist --generate-baseline=plugins/spip_hal/phpstan-baseline.neon

Vérifier le contenu de la baseline, qui généralement ne mentionne que des problèmes liées à des fonctions de SPIP nons trouvées, puis commiter les fichiers ajoutés dans le repo en ajoutant un .gitattributes afin de ne pas les exporter dans les zips :

 # .gitattributes
/phpstan.neon.dist export-ignore
/phpstan-baseline.neon export-ignore

https://git.spip.net/spip-contrib-extensions/gis/commit/8a3745c00ad4cce3fb7a97470089f8ef6f4a2f71

Puis, ajouter la prise en compte de la baseline dans le fichier de configuration :

 # phpstan.neon.dist
includes:
	- phpstan-baseline.neon

parameters:
	paths:
		- .
	excludePaths:
		analyseAndScan:
			- lang
	level: 0

Ensuite, on peut monter le level de phpstan et vérifier les éventuelles erreurs avec la commande suivante :

vendor/bin/phpstan --configuration=plugins/spip_hal/phpstan.neon.dist

Un message, un commentaire ?

Qui êtes-vous ?
Votre message

Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.