À propos du projet
CytoScnPy est un outil d'analyse statique haute performance pour les bases de code Python, implémenté en Rust pour garantir rapidité et faible consommation de mémoire. Il propose des vérifications complètes incluant la détection de code mort (fonctions, classes, imports et variables inutilisés, avec support de cascade et de correction automatique), la détection de clones pour le code dupliqué, l'analyse de sécurité (clés secrètes, analyse de contamination pour les injections SQL/XSS, et modèles dangereux comme eval/exec), ainsi qu'une suite de métriques de qualité de code (complexité cyclomatique, métriques Halstead, indice de maintenabilité, LOC/SLOC). L'analyseur est conscient des frameworks, comprenant nativement les patterns de Flask, Django, FastAPI, Pydantic et Azure Functions v2, et utilise des heuristiques intelligentes pour les dataclasses, les exports __all__, les patterns visiteur et les attributs dynamiques. Il suit les symboles sur l'ensemble du projet, garantissant une détection précise des utilisations entre fichiers. Les utilisateurs interagissent via une interface en ligne de commande avec des options de sortie JSON, de rapports HTML, de portes de qualité CI/CD, et de configuration via les fichiers .cytoscnpy.toml ou pyproject.toml. L'installation est possible via un script shell, PowerShell, pip, ou depuis les sources en utilisant maturin. Le projet inclut un serveur MCP pour l'intégration avec les assistants IA, une GitHub Action, ainsi qu'une documentation extensive, des benchmarks et des directives de contribution. Les benchmarks de performance montrent une précision et un rappel élevés sur tous les types de détection, positionnant CytoScnPy comme une alternative robuste et rapide aux linters et analyseurs Python traditionnels.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.