Just, Make et Task : Trois Outils pour Gérer les Tâches Sous Unix
Sous Unix, le fichier Makefile est traditionnellement utilisé pour exécuter diverses tâches, notamment la compilation de binaires. Cependant, deux nouveaux outils, just et task, ont récemment gagné en popularité. Ces outils visent à moderniser et simplifier les processus de développement.
L’installation des outils est relativement simple :
- Le binaire
makeest inclus dans le paquetmakeet est généralement déjà installé sur la plupart des systèmes. - Le binaire
justest disponible dans le paquetjust. - En revanche, Debian ne propose pas de paquet pour
task. Bien qu’un binairetasksoit présent dans le paquettaskwarrior, il est destiné à la gestion du temps. Les développeurs de Taskfile ont mis à disposition un paquet Debian, mais celui-ci est incompatible avectaskwarrioren raison de la similarité des noms des exécutables. Compilertasksoi-même est réalisable une fois que les outils de compilation Go sont installés.
A. Formats de Fichier
Voici des exemples minimaux pour les trois outils :
Makefile : Les fichiers
Makefileutilisent des tabulations, ce qui peut surprendre les nouveaux utilisateurs, car aujourd’hui, les espaces sont plus couramment attendus.Justfile : Les fichiers
Justfileressemblent beaucoup auxMakefile, mais ils utilisent des espaces au lieu des tabulations. Ce format peut ne pas être pris en charge par tous les outils de coloration syntaxique.Taskfile : Le
Taskfileutilise le format YAML, permettant une syntaxe familière et un outillage déjà disponible pour la vérification de syntaxe. Toutefois, cela rend le contenu plus verbeux que celui desJustfiles.
B. Exemples Équivalents
Les trois outils permettent d’exécuter des commandes similaires, mais avec des syntaxes différentes. Par exemple, les Makefile peuvent définir des cibles pour la production de fichiers, tandis que les Justfile et Taskfile ne nécessitent pas de telles dépendances.
C. Paramètres à Passer à la Commande
Chaque outil permet de définir des paramètres avec des valeurs par défaut. Par exemple, dans un Makefile, des valeurs peuvent être modifiées directement depuis la ligne de commande, tandis que Justfile et Taskfile offrent également cette flexibilité, bien que des erreurs puissent survenir si les types de données ne correspondent pas.
D. Prise en Compte des Fichiers .env
La gestion des fichiers .env varie selon les outils. Make ne les supporte pas nativement, nécessitant des lignes de code supplémentaires pour les charger. En revanche, just et task intègrent cette fonctionnalité de manière plus fluide.
E. Lister les Commandes Disponibles
Just et task permettent de lister les commandes disponibles de manière native, facilitant ainsi la documentation et l’utilisation des scripts. Pour make, cette fonctionnalité est attendue dans de futures mises à jour.
Conclusion
Les trois outils, bien qu’ayant des capacités variées, répondent à des besoins similaires dans le développement. Make reste le choix classique, mais just et task offrent des alternatives modernes qui peuvent s’avérer plus adaptées aux pratiques actuelles de développement.
Source : Ascendances
