pytype

A static type analyzer for Python code

Home
User guide
Developer guide
Error classes
FAQ
Supported features
Mailing list
File a bug

View the Project on GitHub google/pytype

Hosted on GitHub Pages — Theme by orderedlist

Support

This page lists the Python versions and features supported by the latest version of pytype.

Python Version

Version Analyzes Runs In Issue
2.7 #545
3.5 #677
3.6  
3.7  
3.8  
3.9 #749

Features

Core

Note: pytype supports all language and stdlib features in its supported versions unless noted otherwise. This section lists features that are difficult to type for which pytype has or intends to add custom support.

Feature Supports Issues
Control Flow Analysis (“Type Narrowing”)  
collections.namedtuple  
Dataclasses  
Enums 🟡 #788

Typing

Feature Supports Issues
PEP 484 – Type Hints  
PEP 526 – Syntax for Variable Annotations  
PEP 544 – Protocols 🟡 #524, #789, #792
PEP 561 – Distributing and Packaging Type Information #151
PEP 563 – Postponed Evaluation of Annotations  
PEP 585 – Type Hinting Generics in Standard Collections  
PEP 586 – Literal Types 🟡 #790
PEP 589 – TypedDict #680
PEP 591 – Adding a Final Qualifier to Typing #680
PEP 593 – Flexible Function and Variable Annotations #791
PEP 604 – Allow Writing Union Types as X | Y #785
PEP 612 – Parameter Specification Variables #786
PEP 613 – Explicit Type Aliases #787
Custom Recursive Types #407
Generic Type Aliases 🟡 #793
Type Annotation Inheritance #81

Third-Party Libraries

Note: This section does not list all third-party libraries that pytype supports, only the ones that are difficult to type for which pytype has or intends to add custom support.

Feature Supports Issues
Attrs  
Flax 🟡 Google-internal
Numpy 🟡 Minimal type stub
Tensorflow 🟡 Minimal, Google-internal