11 dépôts
Static analysis tools specifically designed to identify type inconsistencies in Python codebases.
Distinct from Static Type Checkers: Distinct from generic static type checkers: focuses specifically on the Python language ecosystem and its type hinting standards.
Explore 11 awesome GitHub repositories matching software engineering & architecture · Python Type Checkers. Refine with filters or upvote what's useful.
mypy is a static type checker for Python that analyzes source code to detect type errors and inconsistencies without executing the program. It functions as a static analysis tool and type inference engine, providing a gradual typing system that allows type hints to be added to a codebase incrementally while maintaining compatibility with dynamic typing. The project distinguishes itself through a combination of performance and precision features. It utilizes a daemon-based incremental checking system and multi-process parallel analysis to manage large codebases, supported by binary cache persi
A static analysis tool specifically designed to detect type errors and inconsistencies in Python source code.
This project is a high-performance static type checker and comprehensive development toolkit for Python. It functions as a core analysis engine that identifies type inconsistencies and enforces code correctness, while simultaneously providing a language server implementation to deliver real-time diagnostics and intelligence directly within development environments. The tool distinguishes itself through a parallelized execution engine that maximizes performance across large-scale codebases and monorepo structures. It supports gradual type adoption, allowing developers to integrate type checkin
Identifies type inconsistencies and violations in Python codebases to ensure correctness and improve overall software reliability.
Pyright is a static type checker for Python designed to validate type hints and identify potential errors within large codebases. It functions as a command-line utility that integrates into local development environments and continuous integration pipelines to ensure code quality and consistency. The tool distinguishes itself through a high-performance analysis engine that utilizes incremental dependency graph analysis and persistent state caching to re-evaluate only the affected portions of a project. By implementing the Language Server Protocol, it provides real-time feedback, including err
Validates Python type hints and identifies potential errors within large codebases using a high-performance analysis engine.
Cython is a compiler that translates Python code into C or C++ to create high-performance extension modules. It functions as a static typing optimizer and a C extension generator, allowing developers to declare C types within Python code to reduce interpreter overhead and increase execution speed. The project enables the wrapping of external C libraries to provide high-level interfaces to low-level system capabilities. It also serves as a native binary packager, capable of freezing scripts and their dependencies into standalone executable binaries for distribution. The system covers a broad
Allows declaring C types within Python code to reduce interpreter overhead and increase execution speed.
The Concise TypeScript Book: A Concise Guide to Effective Development in TypeScript. Free and Open Source.
Covers strategies for incrementally adding TypeScript to existing JavaScript projects.
Xgo is a programming language that combines familiar constructs from languages like C/C++, Go, Python, and JavaScript with a natural language-style syntax that reads closer to plain English. It executes programs compatible with the Go language, allowing reuse of existing Go libraries and tooling, and supports mixing Go and XGo source files within a single package for gradual adoption of its simplified syntax. The language distinguishes itself through direct foreign function interface capabilities, enabling calls to C/C++ and Python libraries using specialized string literal syntax without man
Enables incremental adoption of XGo syntax by mixing Go and XGo source files in the same package.
Pyre is a high-performance static type checker and analysis tool for Python. It identifies type errors and ensures type safety without executing the program, utilizing a static type inference engine to maintain consistency across functions. The project is distinguished by an incremental type analysis engine that operates as a background daemon. This system monitors filesystem changes to re-validate only modified parts of a project, reducing the time required for repeated analysis. It also includes a static analysis security tool that uses taint analysis to track untrusted data flows and ident
Provides a high-performance static type checker specifically designed for the Python language ecosystem.
Monty is a sandboxed execution environment designed primarily for running Python code generated by AI models. It provides a secure, isolated runtime that blocks host access, enforces resource limits, and supports pre-execution type checking against built-in type hints to catch signature mismatches before code runs. The sandbox can persist its interpreter state at external function calls, allowing execution sessions to be serialized, stored, and later resumed from a file or database. What distinguishes Monty is its combination of stateful, resumable execution with multi-language native embeddi
Runs full Python type-checking on AI-generated code before or during execution using built-in type hints.
Pyrefly is a static type checker for Python that operates as a language server, delivering real-time diagnostics, completions, and navigation in any editor supporting the Language Server Protocol. It also performs static tensor shape analysis, using symbolic dimension variables and arithmetic to verify shape consistency in deep learning models without runtime execution. Beyond core type checking, Pyrefly supports gradual adoption workflows: it can generate a baseline of known errors so only new issues are reported, migrate configuration from other type checkers, and automatically suppress exi
Catches type mismatches and invalid operations in Python code before runtime with configurable strictness and fast incremental analysis.
Typeshed est une collection de définitions de types statiques et de stubs pour la bibliothèque standard Python et les paquets tiers. Il sert de ressource standardisée pour les analyseurs statiques et les environnements de développement intégrés (IDE) afin de valider l'exactitude du code et de fournir une complétion de code basée sur les types sans modifier le code source original des bibliothèques. Le projet se concentre sur la création et la maintenance de fichiers d'annotations de type externes qui séparent les annotations de type de l'implémentation à l'exécution. Il utilise un système de versioning et de mappage de ces stubs vers des versions spécifiques de paquets runtime pour maintenir la compatibilité. Le dépôt inclut une suite de validation pour assurer l'exactitude de ces définitions. Cela couvre la validation runtime-vers-stub pour identifier les discordances entre les types déclarés et réels, la vérification de la structure des répertoires et les tests de régression pour empêcher la réintroduction de bugs de typage connus.
Provides the foundational type definitions used by Python type checkers to identify inconsistencies in codebases.
Pytype est un outil d'analyse de code statique et un moteur d'inférence de type pour Python. Il fonctionne comme un analyseur de type statique qui détecte les incompatibilités de type et vérifie les annotations de type sans nécessiter d'indices manuels complets, tout en servant également de générateur de stubs de type pour produire des fichiers de définition autonomes. Le projet se distingue en déterminant automatiquement les types de variables et de fonctions par une analyse des motifs de code et des affectations. Ce moteur d'inférence permet une vérification structurelle du code et la génération de stubs de type qui décrivent les interfaces des modules et fonctions. Le système couvre de larges opérations d'analyse statique, incluant la validation structurelle des hiérarchies de classes et des appels de fonction, et le suivi des symboles pour détecter les erreurs d'espace de noms et les violations d'accès aux attributs. Il fournit également des primitives de vérification de type pour appliquer les annotations et un système de type capable de modéliser des structures de données complexes utilisant des unions et des optionnels.
Detects type mismatches and logic errors in Python source code without executing the program.