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 like Pydantic and Django, with model validation, field types, 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.1.0.dev1.tar.gz (5.8 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.1.0.dev1-py3-none-win_arm64.whl (12.6 MB view details)

Uploaded Python 3Windows ARM64

pyrefly-1.1.0.dev1-py3-none-win_amd64.whl (13.2 MB view details)

Uploaded Python 3Windows x86-64

pyrefly-1.1.0.dev1-py3-none-win32.whl (12.3 MB view details)

Uploaded Python 3Windows x86

pyrefly-1.1.0.dev1-py3-none-musllinux_1_2_x86_64.whl (13.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

pyrefly-1.1.0.dev1-py3-none-musllinux_1_2_aarch64.whl (13.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (14.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (14.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pyrefly-1.1.0.dev1-py3-none-macosx_11_0_arm64.whl (12.8 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pyrefly-1.1.0.dev1-py3-none-macosx_10_12_x86_64.whl (13.3 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for pyrefly-1.1.0.dev1.tar.gz
Algorithm Hash digest
SHA256 f0c0174fb3cd6e5d278febac380a82240c1a94b6196650fcb2beade39f0de26f
MD5 e4b762a0358cc69ce00c0d3860316233
BLAKE2b-256 d4054684d487223e8028ecddc781a3c0aa12b3fb8f8a642618ca6513ec4d72a5

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyrefly-1.1.0.dev1-py3-none-win_arm64.whl
  • Upload date:
  • Size: 12.6 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.1.0.dev1-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 f76f30a62f92ce605bf9100da001f1ae2de36dc490628919872c8ef3213d09b9
MD5 2b785a4f2065e893ea2cb2d451d9973b
BLAKE2b-256 5cd603373dc324a8aa1cb80da595e0949fda7ffba1a5f87799ef0478a4c8df65

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyrefly-1.1.0.dev1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 13.2 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.1.0.dev1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 873f7797f2a289880785a7f8ba1b3704f055aa55c2ee6f584ef0b2ab2ba0a432
MD5 a9e065464ad1758e7c0e08e2c27441ad
BLAKE2b-256 b4c61a26c24dbb5e9128145ac057fe5aaf76588339c72d34c6f50a0148ce8151

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pyrefly-1.1.0.dev1-py3-none-win32.whl
  • Upload date:
  • Size: 12.3 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.1.0.dev1-py3-none-win32.whl
Algorithm Hash digest
SHA256 2444b366aae0941140f4c162d79c33a3586fe66a2f338a007075e0fc404e0557
MD5 85e4765beee2f1d290d44ec188b77047
BLAKE2b-256 b142c528818f13ea80dadb307b6d7d41c3f0f4b5fba4c38cffdbb64244013548

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 769c18b61ab548c76b15e81cd220523e05518856eaed4c5beb74f29e11423001
MD5 039e830d0c310957136519140d8bc5db
BLAKE2b-256 9ef5e08b107a8ae098c4f712460c4ed1b8c4b0d50bcf7aad3498148104715526

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 704673f8fb65b07b17aa6d41742dfb8443e5f32c1b51e5e7e1a68279883d7b72
MD5 07a87f260d48a4eda78f015746f0a7f8
BLAKE2b-256 ff13e493ffd7b7c6466a339de5321679dc829b2d3f2679f21edafff737c00d59

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e251726cef932a3b645bd3d57d7b2b17186cfd3d35ec9154448d518d7277373b
MD5 84c5083b33e509885f03ef32315a02ee
BLAKE2b-256 1059d8f91c1686d329f74596237da0dcd5d87eff50f28734e4d5449e312646bb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ffc70307a41a45dc3c79c5629d1eadda60536e9bd6a05ca7360163da8014509a
MD5 6d0577125a8470936f276bbe46fe1f69
BLAKE2b-256 bcc9415ee99e87342b564a802d7f119d13e2c2af0f3f0810fbe2815103dd1bee

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0b5a87e0214dab52d565499961ac70ea1d8bbcc4c18abd7c5562bdd9b74187e2
MD5 ae95eed9d9d77391fd7b307cc3f8c4a0
BLAKE2b-256 d7e448a6636d9d3f3bc5797b7ba0d2f0dac3ba4000ee7520da37e28d9ae4c61f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a96c6438243c994bace83816d9bd34db5158b828fef651518344f7606eb24bd9
MD5 b9188ee735bbdcc1efa23297caa814cd
BLAKE2b-256 f907adc4ad4e9102eac681c2b8f761ac3c943e2f42eaf305d0042ad5b6b8d790

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9ff4399984c05c9792e4cdd7f2b81558d4099143e7cb6f2ffa871862cce7c043
MD5 4b6b524e5fc2e699b571a9fb707c7a85
BLAKE2b-256 528851f62c4780972fa43a94de65e1e07fb123cc4ec358c4d675f694f346b58b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for pyrefly-1.1.0.dev1-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d132cf558c55edbfba48f4183b83ccfadf876f60535c3c327499dd3f9dcc784f
MD5 9a3c200d5c7a9b7856238259f2cc475c
BLAKE2b-256 1d53414b9f87497a38bb7960b1cb73c56806271fd4c7e54cecf8234d796636b9

See more details on using hashes here.

Provenance

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