3
votes

Configurer TYPO3 localement pour le développement d'extensions

Je voudrais configurer TYPO3 localement pour le développement d'extensions.

Je travaille sous Linux (mais supposons que la réponse devrait être utile pour Mac et Windows, car c'est ce qui est le plus couramment utilisé).

Je peux facilement configurer mon système pour le développement du noyau TYPO3 (avec DDEV ou sans) car qui est très bien documenté . Cependant, cette méthode clone le noyau TYPO3 et fonctionne sur le maître de développement actuel. Je préférerais simplement installer la dernière version de TYPO3.

Quelle est une bonne approche ici? Je veux avoir le moins de dépendances externes possible. De plus, dois-je installer TYPO3 avec Composer ou non? Bien que généralement, l'utilisation de Composer soit recommandée, est-ce recommandé pour développer une extension localement?

Puisque je vais développer une extension sur ce système, je veux que les modifications apportées soient immédiatement actives (et qu'elles n'aient pas à passer par un aller-retour du dépôt git externe ou du packagist).

Utilisation de TYPO3 9.5.


2 commentaires

Vous avez maintenant trouvé une configuration avec laquelle vous êtes à l'aise?


Pour moi, j'ai trouvé une solution. Je ne me suis pas seulement posé la question pour moi, mais aussi pour documenter cela, pour découvrir ce que font les gens. Rétrospectivement, je pense que j'aurais dû être plus précis dans la question.


3 Réponses :


0
votes

Cependant, cette méthode clone le noyau TYPO3 et fonctionne sur le maître de développement actuel. Je préférerais simplement installer la dernière version de TYPO3.

Si vous voulez économiser de l'espace ou n'avez pas besoin de l'historique fourni par le dépôt git pour TYPO3, vous pouvez faire un clone dit superficiel en fournissant l'option --depth et en spécifiant quelle branche vérifier out en utilisant --branch suivi du nom, par exemple 9.5 si vous souhaitez découvrir la dernière branche 9.5. Cela fonctionnera également avec des balises au lieu des noms de branche si vous souhaitez extraire une version plutôt que la dernière version de développement. Si votre référentiel de référence utilise également des sous-modules, vous pouvez également ajouter --shallow-submodules comme option supplémentaire.

git clone --depth 1 --branch 9.5 ...

Cela fournira un clone très minime avec lequel travailler et devrait accélérer le processus de téléchargement initial pour l'installation principale.

De plus, dois-je installer TYPO3 avec Composer ou non? Bien que généralement, l'utilisation de Composer soit recommandée, est-ce recommandé pour développer une extension localement?

Oui, je suggère de le faire, ou du moins d'avoir le composer.json disponible. Vous devez ensuite installer votre extension comme vous le feriez pour tout autre composer le requiert car c'est ainsi que votre extension sera installée plus tard et vous devez vous assurer qu'elle fonctionne. Cela peut également vous aider à identifier les dépendances incompatibles lorsque vous avez une installation avec d'autres extensions couramment utilisées avec la vôtre.

La seule chose que je suggérerais est d'avoir un dépôt supplémentaire mis en place dans votre composer.json pointant vers votre extension, au lieu de l'enregistrer sur packagist tout de suite. Vous pouvez soit configurer un référentiel VCS si vous souhaitez télécharger l'extension à partir du référentiel git, par exemple github, ou vous pouvez utiliser un path-repository si vous souhaitez simplement créer un lien symbolique votre extension à partir du répertoire où vous la développez sur la même machine. Les deux méthodes sont bonnes lorsque vous ne voulez pas encore publier l'extension, mais que vous voulez vous assurer qu'elles se comportent correctement lors de l'installation dans une autre installation TYPO3.

Surtout au début du développement, je préfère le chemin référentiel car vous pouvez développer l'extension dans son propre référentiel et chaque modification que vous apportez sera toujours disponible instantanément dans le projet de référence car les fichiers sont liés par un lien symbolique (par défaut).


0 commentaires

1
votes

Avec DDEV et Composer, vous pouvez facilement installer votre extension locale.

Dans le composer.json, vous devez déclarer un autre dépôt de type "chemin" comme ceci:

"repositories": [
    {
        "type": "composer",
        "url": "https://composer.typo3.org/"
    },
    {
        "type": "path",
        "url": "./packages/*"
    }
],

En mettant votre extension dans ce dossier, vous pouvez composer exiger votre extension. (Votre extension a besoin de son propre composer.json). Composer trouvera votre extension dans le packeges-folde dans le lien symbolique dans votre installation.
Toutes les modifications apportées à votre extension seront immédiatement actives.

Il est décrit ici: https://docs.typo3.org/m/typo3/guide-installation/master/en-us/MigrateToComposer/BestPractices.html


0 commentaires

0
votes

Si vous souhaitez utiliser DDEV et Composer (et vous devriez le faire), il existe un moyen simple de configurer votre TYPO3:
Guide de démarrage rapide TYPO3 pour DDEV

Le guide que vous avez publié est le guide de contribution TYPO3 qui est nécessaire pour contribuer à TYPO3, mais vérifier le noyau peut être un peu trop pour simplement développer une extension.

L'utilisation de TYPO3 avec composer est toujours recommandée car elle vous évite beaucoup de peine lors de la mise à jour des dépendances et vous offre un tas de fonctionnalités intéressantes comme des scripts.


0 commentaires