Fallow et l analyse statique des projets Rust
Intelligence de base de code pour TypeScript et JavaScript. Analyse statique gratuite du code et des styles : code inutilisé, duplication, dépôts circulaires, points chauds de complexité, limites de l'architecture, dérive du système de conception. Couche d'exécution payante facultative (Fallow Runtime) : vérification du chemin chaud et preuve de suppression du chemin froid à partir du trafic de production réel.
En bref
- De quoi s’agit-il ?
- Fallow examine un projet Rust à partir de sa configuration et de ses règles documentées; son intérêt dépend du rapport produit sur le code réellement ciblé.
- À qui s’adresse-t-il ?
- Fallow et l analyse statique des projets Rust convient aux lecteurs dont le besoin correspond aux fichiers et au flux documentés. Il ne convient pas à une adoption à l aveugle : commencez par lancer la commande fallow documentée sur un petit crate, conserver le rapport et examiner une alerte jusqu à son fichier source et sa règle, plutôt que de traiter le score comme une preuve suffisante.
- Puis-je l’utiliser commercialement ?
- Oui. MIT est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 1 jour.
- En quel langage est-il écrit ?
- Principalement Rust, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Fallow et l analyse statique des projets Rust : Le périmètre annoncé
Le dépôt fallow-rs/fallow héberge fallow, un outil d'intelligence de codebase écrit en Rust pour TypeScript et JavaScript. Son cœur est un analyseur statique qui lit le dépôt comme un graphe de dépendances unique, des arêtes d'importation aux jetons de style, et rapporte ce que ce graphe montre : code inutilisé, dépendances circulaires, doublons, points chauds de complexité, violations de limites d'architecture et dérives de style de design system. L'analyseur est déterministe, utilise des contrats de sortie typés et ne contient aucune IA. L'analyse statique ne nécessite ni compilateur TypeScript ni runtime Node.js. Une couche payante optionnelle, Fallow Runtime, fusionne les preuves d'exécution en production dans les mêmes rapports.
Fallow et l analyse statique des projets Rust : Les composants à suivre
fallow rapporte les fichiers inutilisés, les exports, les types, les membres d'enum et de classe, ainsi que les dépendances ; les dépendances circulaires et les cycles de ré-export relèvent de sa commande dead-code. La détection de doublons couvre les feuilles de style JS/TS et CSS ainsi que les régions de composants Vue/Svelte/Astro. Les points chauds de complexité sont accompagnés d'un score de santé de 0 à 100 et d'une note alphabétique. Les violations de limites d'architecture sont détectables avec les préréglages bulletproof, layered, hexagonal et feature-sliced. Les dérives de style de design system s'appliquent au CSS et au CSS-in-JS. Il existe également un portail PR pour fichiers modifiés, une correction automatique avec aperçu en dry-run, et des preuves TypeScript optionnelles basées sur un vérificateur pour l'utilisation exacte de symboles et les fuites de types privés entre fichiers, entre autres.
Fallow et l analyse statique des projets Rust : Le scénario d utilisation
Les constats lors d'une première exécution signifient généralement que fallow manque un point d'entrée ou une convention de framework, ou qu'il analyse des fichiers générés. Plus de 100 plugins de framework intégrés détectent automatiquement les points d'entrée et les exports consommés par le framework, donc la première exécution ne nécessite aucune configuration. Lorsque les fichiers générés nécessitent un indice, les utilisateurs peuvent ajouter une configuration ignorePatterns. La commande fallow recommend détecte la pile, imprime une configuration proposée comme point de départ sûr et se termine par les quelques choix subjectifs qu'elle ne décidera pas. La commande est en lecture seule et sort toujours avec 0 ; rien ne change tant que la configuration n'est pas enregistrée. La priorité de configuration est la première correspondance gagnante par répertoire : .fallowrc.json avant .fallowrc.jsonc, fallow.toml et .fallow.toml.
Fallow et l analyse statique des projets Rust : Les limites visibles
La CLI fallow propose des commandes dédiées : fallow exécute le pipeline complet, fallow audit agit comme un portail pour fichiers modifiés, fallow dead-code détecte le code inutilisé et les dépendances circulaires, fallow dupes détecte les doublons, fallow health détecte la complexité, fallow fix applique les corrections automatiques et fallow security offre des candidats optionnels. Pour la consommation machine, toute commande accepte --format json --quiet, émettant un document JSON typé compact sur stdout. Les codes de sortie 0 et 1 signifient tous deux que l'exécution a réussi, 1 signalant des constats ; le code de sortie 2 est une véritable erreur et écrit toujours une enveloppe JSON sur stdout. Les contrats typés sont fournis avec le package npm, y compris les types CheckOutput et FallowJsonOutput.
Fallow et l analyse statique des projets Rust : La lecture du code
Le README décrit le contrat JSON et les codes de sortie comme l'interface agent. Le serveur MCP couvre l'analyse, l'audit, la santé, les doublons, le traçage, l'aperçu et l'application des corrections, les vérifications de limites et l'inspection de cibles ; chaque outil documente son repli CLI le plus proche. Le package npm fournit une compétence d'agent assortie à la version sous node_modules/fallow/skills/fallow. La commande fallow init --agents génère un AGENTS.md avec une matrice tâche-commande. fallow hooks install --target agent verrouille git commit et git push sur fallow audit. La documentation note que fallow watch ne doit jamais être exécuté dans une boucle d'agent car il ne se termine pas. La télémétrie est désactivée par défaut et uniquement sur option, respectant DO_NOT_TRACK.
Fallow et l analyse statique des projets Rust : La configuration exposée
GitHub Actions et GitLab sont tous deux pris en charge. Pour GitHub Actions, le README montre un exemple utilisant fallow-rs/fallow@v3 et note que la référence d'Action et la version CLI sont indépendantes. La version CLI se résout dans cet ordre : l'entrée version, puis la spécification de dépendance fallow dans le package.json du projet, puis latest. Lorsque la configuration active l'analyse type-aware, l'Action installe automatiquement le sidecar fallow-type-aware à la version correspondante. L'Action est un portail bloquant par défaut, avec fail-on-issues par défaut à true. Les utilisateurs GitLab peuvent inclure un modèle à distance ou le vendre hors ligne avec npx fallow ci-template gitlab --vendor.
Fallow et l analyse statique des projets Rust : Le statut du dépôt
Le README rapporte des mesures de performance sur l'ensemble de benchmarks dead-code : sur Apple M5, fallow 2.100.0 a analysé fastify en 64ms là où knip 6 prenait 205ms, et preact en 74ms contre 2.01s. Il note également que knip mesure plus rapidement sur astro et TypeScript, que jscpd reste plus rapide en analyse brute de doublons et que knip a échoué sur trois projets de l'ensemble. Les tableaux complets et les scripts de reproduction se trouvent dans BENCHMARKS.md. Le dépôt est sous licence MIT, le droit d'auteur étant détenu par Bart Waardenburg. La licence accorde le droit d'utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et vendre des copies du logiciel, mais le logiciel est fourni tel quel, sans garantie d'aucune sorte, expresse ou implicite.
Vérifier Fallow et l analyse statique des projets Rust
Lancer la commande Fallow documentée sur un petit crate, conserver le rapport et examiner une alerte jusqu à son fichier source et sa règle, plutôt que de traiter le score comme une preuve suffisante. Cette vérification reste attachée aux chemins, paramètres et commandes cités par le projet; elle permet de distinguer ce que le dépôt montre de ce que son README ne précise pas.
Conclusion éditoriale
Fallow et l analyse statique des projets Rust convient aux lecteurs dont le besoin correspond aux fichiers et au flux documentés. Il ne convient pas à une adoption à l aveugle : commencez par lancer la commande fallow documentée sur un petit crate, conserver le rapport et examiner une alerte jusqu à son fichier source et sa règle, plutôt que de traiter le score comme une preuve suffisante.
Notes de la communauté