Skip to main content

A fast type checker and language server for Python with powerful IDE features

Project description

Pyrefly: A fast type checker and language server for Python with powerful IDE features

pyrefly PyPI VS Code Open VSX Discord License: MIT

Pyrefly is a type checker and language server for Python, which provides lightning-fast type checking along with IDE features such as code navigation, semantic highlighting, and code completion. It is available as a command-line tool and an extension for popular IDEs and editors such as VSCode, Neovim, Zed, and more.

See the Pyrefly website for full documentation and how to add Pyrefly to your editor of choice.

Pyrefly's current development status is stable.

Key Features

  • Fast. Pyrefly checks over 1.85 million lines of code per second, type checking projects like PyTorch 15x faster than Mypy and Pyright. In the IDE, rechecks typically complete in under 10 milliseconds after saving a file.
  • Production-proven at scale. Pyrefly is the default type checker for Instagram's 20-million-line Python codebase at Meta, and has been adopted by large open source projects including PyTorch and JAX.
  • Full-featured language server. Code navigation, autocomplete, hover information, inlay hints, semantic highlighting, and more, with consistent results across the CLI and your editor of choice.
  • Understands real-world Python. Built-in support for frameworks and tools like Pydantic, Django, and pytest, with model validation, field types, fixture navigation, and autocomplete that work out of the box.
  • Adoption-ready. Migrate from Mypy or Pyright with pyrefly init, silence existing errors with pyrefly suppress, and generate type annotations with pyrefly infer. Start with one file and expand at your own pace.

Getting Started

Version Policy

Pyrefly releases new minor versions (1.x.0) monthly and patch versions in between as-needed for critical fixes. Pyrefly does not follow strict semantic versioning: minor versions contain more significant changes than patch versions, but any version may introduce new type errors and other breaking changes. The pyrefly suppress command can be used to easily silence errors when upgrading to a new version.

Getting Involved

If you have questions or would like to report a bug, please create an issue.

See our contributing guide and architecture overview for information on how to contribute to Pyrefly.

Join our Discord to chat about Pyrefly and types. This is also where we hold biweekly office hours.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyrefly-1.2.0.dev1.tar.gz (6.0 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyrefly-1.2.0.dev1-py3-none-win_arm64.whl (13.0 MB view details)

Uploaded Python 3Windows ARM64

pyrefly-1.2.0.dev1-py3-none-win_amd64.whl (13.6 MB view details)

Uploaded Python 3Windows x86-64

pyrefly-1.2.0.dev1-py3-none-win32.whl (12.7 MB view details)

Uploaded Python 3Windows x86

pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_x86_64.whl (14.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_aarch64.whl (13.6 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (14.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (14.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pyrefly-1.2.0.dev1-py3-none-macosx_11_0_arm64.whl (13.2 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pyrefly-1.2.0.dev1-py3-none-macosx_10_12_x86_64.whl (13.7 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file pyrefly-1.2.0.dev1.tar.gz.

File metadata

  • Download URL: pyrefly-1.2.0.dev1.tar.gz
  • Upload date:
  • Size: 6.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyrefly-1.2.0.dev1.tar.gz
Algorithm Hash digest
SHA256 fb0a3caba3962131caa3b4c45629ba8dc4d8b27b57a97cdd38ff472f8fa63af3
MD5 055039ab467c8ae545d2423ed589a49f
BLAKE2b-256 060b11b9bb19bed4931ce965ab0920c3e4b7b86fe1d9076436c25bfed0c46a13

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1.tar.gz:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-win_arm64.whl.

File metadata

  • Download URL: pyrefly-1.2.0.dev1-py3-none-win_arm64.whl
  • Upload date:
  • Size: 13.0 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 2cfd75e7688416379e858b91eda240d2bfeb781526d71c1c36e0b93aa5a35ad9
MD5 d702d51872c84efff11ae647ea2305a4
BLAKE2b-256 6b8a8b338da41c7a8d45401072ac8a9662b15493cea1be36c19d060f3b72d58c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-win_arm64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-win_amd64.whl.

File metadata

  • Download URL: pyrefly-1.2.0.dev1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 13.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 1a4cb01144e34cbe3f8a8182a8fedc57633bb9da8d32e8368d033e142c3a61fd
MD5 29a20179ce95b19b87ab4c459c64eaaa
BLAKE2b-256 f87e933f2ceb86b82a1954f701b5fc2d4b10e71bcee5c0ea7e0e13d0a039d167

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-win_amd64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-win32.whl.

File metadata

  • Download URL: pyrefly-1.2.0.dev1-py3-none-win32.whl
  • Upload date:
  • Size: 12.7 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-win32.whl
Algorithm Hash digest
SHA256 00b7dea4bb605c5d541aeeb8ee5e63fb3fb7fa9822ab10e7eb39bd0b48daf34c
MD5 d2202843556db6c61c8c5ccec318dfd6
BLAKE2b-256 2e07a60259a880b55b830db32d582a4e80260be2deae8b03fa888f1639512447

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-win32.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f1d6337445753b730bc5066c9c267131ededc2d2ea65b3f56f2f84a4a958f625
MD5 e3b280447cefa89070960f090f86f5d2
BLAKE2b-256 bd1bf0c6f82cbb66b67fe9074c57a902704d7dce1257b4a514ebf3365406dfcf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_x86_64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 18a2ad0f02c58ddb4c4a191698441cf99283e38de8a644279fa728d584837f1e
MD5 267d3205de8507d8d22cab8707d5e629
BLAKE2b-256 5a0d7d2faba1c49651070abf0a311d0b2cf02f98e4178e185f214b95f335b570

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-musllinux_1_2_aarch64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 481b568ec94d7244b485af26489580449f09ecf1acc08622516aaf7dec24b135
MD5 091346f5a3ad3064f753eadd2eb2d682
BLAKE2b-256 e7ff9b66b7e9c89a53341199ce38e0d95215a3cbae4430ce0e893f15671cdace

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 1e992165de47b7156b5b03d8e3b015853148070b6e3a6dbd30d1c9df8974196d
MD5 390f30003d97bc64c75fac8f860679b5
BLAKE2b-256 171f333c4ae9cf0f27bd04f6bda5c4552571d66c566af279df7f9f022eefaf96

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8660187f73f3a0878d73fc1638b960a46f10e408d8035e1d38dc68374dab302c
MD5 90579a826058743e694bfd4010afd8c0
BLAKE2b-256 fb96fe7ac248fa684010e030874bab9f0d8d241de33bf00373c209820fcf0244

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3d77c5acde9db380aa0bf9f143f02ed00e6835946ee655dd6dff9bc08162ee43
MD5 6a606e602eb1834fc4f771648c32b2d8
BLAKE2b-256 9dd6e8eb128eb3f88a845f741e543c6b103eb2dd170eb4eadf7192d9b7af6d85

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 821e64b53859ced297cd6f2d49f7eba2e3fe4fc29fe5d1b4e1ba8bca14faec12
MD5 6201d66e4e70fe456c1236fbde4dc8cb
BLAKE2b-256 d97e8c62d6efe53b30ecf532ab23c8f3cd6b4bf4f7654494e130e6a3c260d17e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-macosx_11_0_arm64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyrefly-1.2.0.dev1-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0.dev1-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2dd00fe2ff666cd357a71ccb4dabe07d3b712b20d7f76826f4a49884512326b6
MD5 033868c7991738af6c7bf10470459817
BLAKE2b-256 99bbd08042af7b64b06f3266e6938469bcaf3e5c31c66c40c07d431ce7dde1ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.dev1-py3-none-macosx_10_12_x86_64.whl:

Publisher: publish_to_pypi.yml on facebook/pyrefly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page