awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
PyCQA avatar

PyCQA/pylint

0
View on GitHub↗
5,685 stars·1,260 forks·Python·GPL-2.0·11 vuespylint.readthedocs.io/en/latest↗

Pylint

Pylint est un outil d'analyse statique de code pour Python qui vérifie le code source pour les erreurs, les violations des normes de codage et les « code smells » sans exécuter le programme. Il analyse le code dans un arbre de syntaxe abstraite et parcourt l'arbre pour détecter les problèmes, applique des règles de style et des conventions de nommage configurables, et identifie les blocs de code dupliqués en comparant les séquences sources tokenisées. L'outil inclut également un moteur d'inférence qui déduit les types de variables en simulant les chemins de code, permettant une analyse plus approfondie même dans le code non typé.

Ce qui distingue Pylint est son architecture de vérificateur basée sur des plugins, qui permet aux utilisateurs d'étendre l'analyse en chargeant des modules Python externes qui enregistrent des vérificateurs et des règles d'inférence personnalisés lors de l'exécution. Il prend en charge la superposition de fichiers de configuration, fusionnant les paramètres de plusieurs fichiers de configuration et arguments de ligne de commande afin que les valeurs par défaut à l'échelle du projet puissent être remplacées par des options locales ou spécifiques aux plugins. Pylint suit également la qualité du code au fil du temps en comparant les résultats d'analyse actuels par rapport à un score de référence stocké, signalant l'amélioration ou la régression lors des exécutions successives, et peut générer des diagrammes de classes et de paquets UML à partir de l'arbre de syntaxe abstraite dans les formats Graphviz, PlantUML ou MermaidJS.

L'outil s'intègre dans les pipelines d'intégration continue et les hooks de pré-validation pour exécuter automatiquement des vérifications sur plusieurs versions de l'interpréteur Python. Il peut être installé via pip, conda ou un gestionnaire de paquets système, et offre une vérification orthographique optionnelle des identifiants de code via la bibliothèque enchant. Pylint fournit également une intégration d'éditeur pour des environnements tels qu'Emacs et TextMate, et inclut une visionneuse d'explication de message qui imprime la description complète et le contexte de tout code d'avertissement ou d'erreur spécifique directement depuis la ligne de commande.

Features

  • Static Code Analysis - Scans Python source code without execution to detect errors, style violations, and code smells.
  • Python Static Analyzers - Provides static analysis for Python source code, detecting errors, style violations, and code smells.
  • Custom Lint Rule Plugins - Allows users to define custom naming conventions and write plugins for project-specific rules.
  • Plugin-Based Checker Architectures - Ships a plugin-based checker architecture that loads external Python modules for custom rules.
  • CI/CD Pipeline Integrations - Integrates into CI pipelines and pre-commit hooks to enforce code quality automatically.
  • Coding Standards Enforcement - Checks code against configurable style rules to ensure consistent formatting and naming conventions.
  • Third-Party Plugins - Loads user-written or third-party plugins to add project-specific or framework-specific checks.
  • Plugin-Based Architectures - Extends analysis capabilities by loading external Python modules that register custom checkers and inference rules at runtime.
  • Python Analyzers - Checks Python source code for errors, coding standard violations, and code smells without execution.
  • Pattern Violation Scanning - Scans Python source files and reports coding standard violations, probable bugs, and refactoring opportunities.
  • Custom Checker Registrations - Register a new rule that inspects code for problems and reports violations during analysis.
  • Code Quality Checks - Enforces configurable style rules and naming conventions to ensure consistent formatting.
  • Code Quality Tools - Integrates into CI pipelines and pre-commit hooks to enforce coding standards across Python versions.
  • Static Analysis AST Parsing - Parses Python source code into an abstract syntax tree to detect errors and style violations without execution.
  • Static Logic Error Detection - Analyzes Python source code without execution to find bugs, syntax mistakes, and runtime-like errors.
  • Code Analysis and Refactoring - Identifies code smells and recommends structural changes to improve codebase maintainability.
  • Layered Configuration Mergers - Merges settings from multiple configuration files and command-line arguments with layered override support.
  • AST-Based Diagram Generators - Generates UML class and package diagrams from Python source code via the abstract syntax tree.
  • AST-Based Generators - Produces class and package diagrams from Python source code to visualize project structure.
  • Code Duplication Directory Scans - Scans Python source files for identical or near-identical code blocks and reports similarity percentages.
  • Transformation Plugin Development - Modifies the inference engine to understand project-specific patterns or third-party libraries.
  • Pre-commit Hooks - Configures the analyser to execute automatically before each commit to catch issues early.
  • CI Pipeline Integrations - Runs static analysis across multiple Python interpreters during automated build pipelines to catch issues early.
  • Continuous Integration Checks - Automatically executes linting and analysis on pushed code or pull requests as part of a build pipeline.
  • Code Smell Detectors - Identifies problematic patterns and recommends improvements to make code cleaner and more maintainable.
  • Type Inference Support - Deduces variable types by simulating code paths, enabling deeper analysis even in untyped Python code.
  • Token-Based Duplication Detectors - Scans Python source files for identical or near-identical code blocks and reports their locations and similarity percentage.
  • Plugin Configurations - Reads additional settings from a plugin after the main configuration is applied, allowing custom defaults.
  • Regex-Based Customizations - Allows overriding default regular expressions for valid constant, variable, or function names.
  • Quality - Tracks code quality scores over time, reporting improvement or regression between successive analysis runs.
  • Type Inference Engines - Deduces variable types by simulating code paths and propagating type information through the internal program representation.
  • Outils de qualité de code - Analyse le code Python pour détecter les erreurs et les problèmes de style.
  • Linting And Formatting - Python static analysis and error checking.

Historique des stars

Graphique de l'historique des stars pour pycqa/pylintGraphique de l'historique des stars pour pycqa/pylint

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait pycqa/pylint ?

Pylint est un outil d'analyse statique de code pour Python qui vérifie le code source pour les erreurs, les violations des normes de codage et les « code smells » sans exécuter le programme. Il analyse le code dans un arbre de syntaxe abstraite et parcourt l'arbre pour détecter les problèmes, applique des règles de style et des conventions de nommage configurables, et identifie les blocs de code dupliqués en comparant les séquences sources tokenisées. L'outil inclut…

Quelles sont les fonctionnalités principales de pycqa/pylint ?

Les fonctionnalités principales de pycqa/pylint sont : Static Code Analysis, Python Static Analyzers, Custom Lint Rule Plugins, Plugin-Based Checker Architectures, CI/CD Pipeline Integrations, Coding Standards Enforcement, Third-Party Plugins, Plugin-Based Architectures.

Quelles sont les alternatives open-source à pycqa/pylint ?

Les alternatives open-source à pycqa/pylint incluent : pylint-dev/pylint — Pylint is a static code analyzer for Python that scans source code for errors, coding standard violations, code… standard/standard — Standard is a suite of static analysis tools for JavaScript, comprising a linter, formatter, and a predefined style… checkstyle/checkstyle — Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best… squizlabs/php_codesniffer — PHP_CodeSniffer is a static analysis tool, coding standard linter, and command-line validator for PHP. It scans files… pycqa/flake8 — Flake8 is a Python style checker and static analysis tool that identifies programmatic errors and violations of coding… sonarsource/sonarqube — SonarQube is a static code analysis platform used to scan source code and infrastructure scripts across multiple…

Alternatives open source à Pylint

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Pylint.
  • pylint-dev/pylintAvatar de pylint-dev

    pylint-dev/pylint

    5,685Voir sur GitHub↗

    Pylint is a static code analyzer for Python that scans source code for errors, coding standard violations, code smells, and type-related issues without executing the program. It functions as a plugin-based linter framework, allowing users to extend its analysis capabilities with custom or third-party checks for project-specific rules and framework support. The tool also includes a duplicate code detector that identifies identical or near-identical code blocks across a project to help reduce redundancy. Beyond its core linting functionality, Pylint can generate UML class and package diagrams f

    Pythonclosembercode-qualityhacktoberfest
    Voir sur GitHub↗5,685
  • standard/standardAvatar de standard

    standard/standard

    29,431Voir sur GitHub↗

    Standard is a suite of static analysis tools for JavaScript, comprising a linter, formatter, and a predefined style guide. It functions as a static code analyzer that scans source code for style violations and potential errors without executing the program. The project provides an automatic code fixer that rewrites source code to resolve formatting issues and enforce syntax consistency. It implements a standardized set of rules for JavaScript formatting and syntax to ensure a uniform appearance across different projects. The system covers a wide range of static analysis capabilities, includi

    JavaScriptdevelopmentecmascriptes6
    Voir sur GitHub↗29,431
  • checkstyle/checkstyleAvatar de checkstyle

    checkstyle/checkstyle

    8,867Voir sur GitHub↗

    Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement

    Javacode-qualitycommand-line-toolhacktoberfest
    Voir sur GitHub↗8,867
  • squizlabs/php_codesnifferAvatar de squizlabs

    squizlabs/PHP_CodeSniffer

    10,771Voir sur GitHub↗

    PHP_CodeSniffer is a static analysis tool, coding standard linter, and command-line validator for PHP. It scans files and directories to detect and report formatting errors and language-specific coding violations without executing the code. The project functions as an automated code formatter capable of correcting detected style and formatting violations to bring source code into compliance with defined standards. It uses token-based lexical analysis to match code patterns against rule sets, ensuring consistency across a codebase. The tool provides comprehensive capabilities for recursive fi

    PHPautomationclicoding-standards
    Voir sur GitHub↗10,771
Voir les 30 alternatives à Pylint→