Skip to main content

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.

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.tar.gz (6.2 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-py3-none-win_arm64.whl (13.4 MB view details)

Uploaded Python 3Windows ARM64

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

Uploaded Python 3Windows x86-64

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

Uploaded Python 3Windows x86

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

Uploaded Python 3musllinux: musl 1.2+ x86-64

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

Uploaded Python 3musllinux: musl 1.2+ ARM64

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

Uploaded Python 3manylinux: glibc 2.17+ x86-64

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

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

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

Uploaded Python 3manylinux: glibc 2.17+ i686

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

Uploaded Python 3manylinux: glibc 2.17+ ARM64

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

Uploaded Python 3macOS 11.0+ ARM64

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

Uploaded Python 3macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: pyrefly-1.2.0.tar.gz
  • Upload date:
  • Size: 6.2 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.tar.gz
Algorithm Hash digest
SHA256 5485f960fc2481617068c918335c39ab1507ef90b6b5bd35bf57726e60e73185
MD5 c6a71be04c45db20ecca3fbf734c0006
BLAKE2b-256 8901a86e9f24722b095c3f88e3616132b75a21b0df53804bdc6a45314dd4d93c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0.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-py3-none-win_arm64.whl.

File metadata

  • Download URL: pyrefly-1.2.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 13.4 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-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 3a90bb8df39dfbac74b1f3b2e9d7c526b8f80568884c3944d955023a73ebf61e
MD5 c47a1583b0c39330385f7e1f3f865d00
BLAKE2b-256 1b1cdf3cb0a2e5591660ded7a1836cd2f29dc48c91adb1c0a3a700a96f6d09e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-win_amd64.whl.

File metadata

  • Download URL: pyrefly-1.2.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 14.1 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-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 8a8964c224ccc4882730130955815de21ff443c1ac3f0b90685b19bf63848170
MD5 e4e5daa221eb342163f182e241f76b77
BLAKE2b-256 ed984dafa3c7a1caed2dc8cc708dde09ba27963c7736508f55b626fff3024113

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-win32.whl.

File metadata

  • Download URL: pyrefly-1.2.0-py3-none-win32.whl
  • Upload date:
  • Size: 13.2 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-py3-none-win32.whl
Algorithm Hash digest
SHA256 8c90751de8506d938e8f802659c74cf35bd7a0036510ee6c634a38eebb280bfa
MD5 71d8cce2432540f569458cfd91035893
BLAKE2b-256 0f06810d31380f66c75e1c0779a408d3b16117b1b368b57894f6aa66bef21686

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d52d5da7bc65fb7675fbaa80eda879d4f8787c494f04cac21603330d3abbdbbe
MD5 e24226027960dc6cb9c685a4a0832501
BLAKE2b-256 5de8e84f11b6e1f63fd453ad3654213b9a0f6f4de8cef6b58038eef2d0d5955d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 368aaf7eee4f511ddc0f8e564cf14e01ab2f10b0db9105c6d5b153bf498d07bf
MD5 d0f7920a815fa136add123cffed6a7ad
BLAKE2b-256 d3700d142c320e284b9e3ce35e9b1e58b8ce2ee1f578f2a7234bc30e5022b94f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 90efe75e17491ef5d636e10469e9278d7d0256b3b4c5e1f4750069bf3ae0f5d1
MD5 d407bcf413ccf75160dadfae3c7797c4
BLAKE2b-256 97f7f07087f3d185ad2eced0c56cef89ca5474dfb4ff25f146cd50a861c97553

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 25822ea9505f589ea8a725e4268b475132fb89e038fbf092e446510443ac142a
MD5 dcbbcb5f9079bf5845de5243f41aea8e
BLAKE2b-256 5bbdbca5fd0c80f4daf8ee6903a29df9f3de1feb05ff0946b8f35ec8c5096b13

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 5de7b2ad2bba5c8055181681a84b74143eac2234a48ba5d1b7ed7e7a722b02bd
MD5 b2f1f5327e67fe9bd06f1e7506bd1ccc
BLAKE2b-256 be949e08b4bf799d0b8f36b55a2783c7ba5f51730cf0632a85a67b5b5ed876cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e3465812ce5ef4781fb592edbf2724547296f0a3124be115d73c7e8b2401862d
MD5 3858119f4905c9159888b792668befb9
BLAKE2b-256 135a7d8bc00a38e93bbc9c3e7bd14d305f7948717e667c9bcddeab9dd42fd255

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 756f669b5555090f5c1a4fef30db1785fabe657764f7e4e6dc88994dfb8ca82d
MD5 dc80daf315becf855cec65933ec6dfd2
BLAKE2b-256 0a0603bbb78fbea54cdc65b626619f3597d5611aca4fdef11e72a4e8360e7e63

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyrefly-1.2.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7f46d983ac49ddd2b043694960a01dc6a19a5cfd8eec609d6bd9c42866f91b4e
MD5 830849820a5887f68443088e6be58ce5
BLAKE2b-256 7d9d3c0ef1d4843987b22f996ed381ec9cf5a3b1273e29804db276252e4c95eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyrefly-1.2.0-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.

Release history Release notifications | RSS feed

This release

1.2.0

Supported by

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