Ufolint est un linter de fichier source pour le développement de la police dans le code source d'objet de police unifié (UFO). Il a été conçu pour les tests d'intégration continue des contributions des sources d'OVNI aux projets de police.
L'application effectue une analyse statique spécifique à la version UFO des fichiers texte source par rapport aux spécifications UFO V2 et V3 pour les problèmes qui incluent:
Ces tests sont effectués via une combinaison de méthodes publiques dans la bibliothèque Fonttools.ufolib et des tests supplémentaires qui sont implémentés dans l'application Ufolint. Ufolint attrape des exceptions soulevées dans les méthodes de lecture publique Ufolib pour tous les types de fichiers _.plist et toutes les validations Ufolib effectuées sur les fichiers _.glif. Ceux-ci sont renvoyés aux utilisateurs avec des messages d'erreur informatifs qui indiquent le (s) Filepath de préoccupation et de sortie du code d'état 1.
Ufolint peut être exécuté localement ou avec des services de test CI distants.
Utilisez la commande:
$ pip install ufolint
Mettre à niveau vers une nouvelle version de l'application avec la commande:
$ pip install --upgrade ufolint
Le processus est entièrement automatisé. Poignez simplement Ufolint vers un ou plusieurs répertoires source d'OVNI et il s'occupe du reste. Ufolint quitte avec le code d'état 0 si tous les tests passent et sortent avec le code d'état 1 si des tests échouent.
$ ufolint [UFO source path] ([UFO path 2] [UFO path3]...)
$ ufolint Awesome-Regular.ufo Awesome-Bold.ufo
Pour les défaillances critiques qui empêchent l'achèvement des tests supplémentaires, Ufolint sort immédiatement et d'autres tests sont interrompus. Dans toutes les autres circonstances, des échecs sont perçus sur toute l'analyse et affichés à la fin de tous les tests.
Ufolint fournit des messages d'erreur verbeux et utiles qui incluent le (s) fichier (s) de préoccupation, le type d'erreur et, dans de nombreux cas, la ligne problématique dans le fichier.
Pour tester en continu vos modifications de la source d'OVNI sur Travis avec chaque demande de commit poussée ou tiré soumise à votre référentiel GitHub, utilisez ces deux premières étapes du guide de démarrage de Travis:
Ensuite dans votre référentiel GitHub,
.travis.yml Dans la racine de votre référentiel GitHub qui comprend le texte suivant: sudo : false
language : python
env :
- VARIANT=src/Test-Regular.ufo
- VARIANT=src/Test-Bold.ufo
- VARIANT=src/Test-Italic.ufo
- VARIANT=src/Test-BoldItalic.ufo
before_script : pip install ufolint
script : " ufolint $VARIANT "
notifications :
email : falseVARIANT=src/Test-*.ufo dans le fichier .travis.yml par les chemins réels de vos fichiers source d'OVNI après le caractère = . Utilisez une ligne par variante et ajoutez ou soustrayez les lignes si nécessaire pour tester les répertoires d'OVNI source souhaités dans le référentiel. Il s'agit de chemins relatifs de la racine de votre référentiel GIT. Cette structure de paramètres Travis effectue les tests de variantes en parallèle pour chacune des variantes spécifiées dans le champ env du fichier de paramètres Travis. Chaque variante sera étiquetée sur la page de test Travis comme celle-ci:
Étape 5 : Avec chaque nouveau commit poussé vers votre référentiel GitHub (ou toute nouvelle demande de traction soumise par d'autres) Travis est automatiquement notifié et effectue les tests UFOLINT sur la source UFO modifiée (ou proposée pour les demandes de traction). Vous pouvez afficher les résultats du test sur votre page de compte Travis pour le référentiel.
Facultatif : Pour ajouter un badge de résultat de test Travis à votre page Readme Repository, insérez la marque suivante dans votre page Readme et modifiez [ACCOUNT] et [REPOSITORY] avec votre compte Travis et vos détails de référentiel:
[](https://travis-ci.org/[ACCOUNT]/[REPOSITORY])
Construit avec la fantastique bibliothèque Fonttools Ufolib où une majorité des travaux de validation des OVNI ont été effectués!
Licence MIT