11 Commits (master)

Author SHA1 Message Date
Matthieu Marcillaud 052f6caaf2 build: Up composer dependencies and up PHP requirements 4 months ago
Matthieu Marcillaud 1dd54497a7 Utiliser un Template pour centraliser Twig, et ajouter l’extension string de twig 1 year ago
Matthieu Marcillaud c3e201aee8 On utilisera twig bientôt 1 year ago
Matthieu Marcillaud 6c9d36c26e Mise à jour vers PhpDocumentor v3
Une bonne partie de l’application Autodoc disparait pour plusieurs raisons :

- On cherche à simplifier la maintenance de cette doc en ne créant pas de thème personnalisé,
car effectivement, la syntaxe PHP évolue bien plus vite que le temps disponible
pour adapter les templates aux évolutions. On préfère user juste d’un peu de
cosmétique avec un peu de CSS. Le thème complet d’avant disparait.
- L’application est devenue un .phar et les surcharges sont improbables là où le code
d’origine ne l’a pas explicitement prévu. Je n’ai absolument pas l’énergie
de me replonger à gérer des passes de compilation comme avant pour retrouver
les balises ou pipelines dans le code (je ne sais même pas si c’est faisable sur cette version).
Cette partie disparait aussi.
- On bascule sur du PHP 8.0 minimum.

On s’appuie sur différentes librairies dont toujours symfony/console, mais aussi
symfony/filesystem et League/Pipeline.

On gère les téléchargements et mises à jour Git avec l’outil checkout
(qui est donc nécessaire). Le fichier phpDocumentor.phar est aussi nécessaire
dans le répertoire de travail, tout comme la création d’un répertoire `var`
écrivable.

Une décoration spécifique du thème par défaut (css, svg), est copiée
dans la config générée (var/config/templates), et est alors utilisée
par phpDocumentor (sur le même principe de surcharge que les squelettes SPIP)

Les commandes from:directory, from:git, from:plugin, from:spip sont adaptées.
La commande from:file (lecture d’un fichier archivelist.txt) reste à faire.
1 year ago
Matthieu Marcillaud efab566ee9 Update du composer.json pour bloquer phpdocumentor en version 2... 3 years ago
marcimat@rezo.net d254b9da81 Mise à jour de l'installation. 8 years ago
marcimat@rezo.net 05ad9a1a02 Migration vers phpDocumentor 2.6.1
Nombreuses adaptations :


1) les binaires sont maintenant sans extension .php


2) Pour tenir compte des <options> que l'ont passait dans phpdoc.xml, spécifique à l'autodoc,
il faut grandement ruser maintenant car le sérialiseur / désérialiseur utilisé maintenant par phpdocumentor
ne conserve que les éléments qui lui sont déclarés. Pour cela, on surcharge donc la classe Configuration
de phpdocumentor pour ajouter notre tableau d'options. 

À noter que la syntaxe est légèrement différente (voir Helpers/phpdoc_helper.xml)


3) Pour faire parvenir les données de configuration au template Twig, et suite toujours au
changement dans la gestion de la configuration de phpdocumentor, on transmet directement
aux template la configuration connue (sans la recalculer). Mais pour cela, on doit
surcharger le Writer/Twig pour ajouter notre élément. La surcharge est minime heureusement.


4) L'autoloader est déclaré différemment également. Il est appelé avant le chargement de phpDocumentor 
et lui est transmis lors de la création (new Application(...)). On s'adapte (dans bin/autodoc) et on
adapte toutes les commandes Helpers pour transmettre cet autoloader… Pfiou.

Du coup, pour simplifier un peu, on crée une Application pour le Helpers, et on déporte 
de bin/autodoc_helper vers l'application la déclaration des commandes utilisables.
9 years ago
marcimat@rezo.net a629f46f24 1è adaptations du code pour phpDocumentor 2.3.2 9 years ago
marcimat@rezo.net 83ad0086da Tout début d'une application pour simplifier l'usage du programme.
La doc de ce programme est écrite… avant d'être fonctionnelle…
10 years ago
marcimat@rezo.net e4ec02a05e On étend donc la classe de phpDocumentor pour ajouter ses plugins persos (on ne peut pas encore le faire via la configuration).
On indique à composer qu'on a nos classes suivent PSR-0 pour passer dans l'autoload.

Pour l'instant… ça ne fait rien de plus que faire fonctionner phpDocumentor normalement.
10 years ago
marcimat@rezo.net f76992d026 Un composer.json pour mettre phpdocumentor en tant que «vendor» également. 10 years ago