OpenSource-Hub
P

pyrefly

SHA-256
6.1k stars·개발 도구·SHA-256 체크섬 확인됨

초고속 Python 타입 체커 및 언어 서버, Meta의 2000만 줄 코드로 검증됨, 속도는 Mypy/Pyright의 15배, IDE 응답이 10밀리초 미만, 설치 즉시 사용 가능.

스마트 다운로드

Download 버전 다운로드

v1.0.0 · 12.9 MB

Mypy보다 15배 빠른 타입 검사기, Instagram에서 사용 중이며, 자동 완성 및 코드 탐색도 가능합니다.

주요 기능

  • 초고속 검사: 초당 185만 줄의 코드 처리, Mypy 및 Pyright보다 15배 빠름
  • 완전한 IDE 지원: 코드 탐색, 자동 완성, 호버 정보, 인라인 힌트, 의미론적 하이라이트
  • 네이티브 프레임워크 지원: Pydantic 및 Django를 기본 지원, 모델 검증 및 필드 유형 자동 인식
  • 원활한 마이그레이션: Mypy/Pyright에서 한 번의 초기화로 기존 오류 자동 억제, 새로운 검사 점진적 활성화
  • 프로덕션 검증: Meta Instagram 2000만 줄 코드에서 기본 사용, PyTorch/JAX 등 오픈소스 프로젝트 채택

할 수 없는 것

  • Pyrefly는 엄격한 시맨틱 버전 넘버를 따르지 않으며, 마이너 버전 업그레이드 시 새로운 타입 오류가 발생할 수 있습니다. `pyrefly suppress` 명령어를 사용하여 업그레이드 후 새로 추가된 오류를 한 번에 무음 처리할 수 있습니다. 또한, 일부 비정규 Python 문법(예: 동적 속성 주입)은 완전히 지원되지 않을 수 있습니다.

사용 사례

  • 대형 Python 프로젝트의 타입 검사 및 IDE 기능 향상, 특히 이미 Mypy/Pyright 구성을 사용 중인 팀이 속도 향상을 원하는 경우
  • Pydantic 또는 Django를 사용하는 프로젝트에서 제로 설정 모델 검증 및 필드 타입 지원을 원하는 경우

상세 설명

Pyrefly는 초고속 Python 타입 검사기이자 언어 서버로, Meta 내부의 2000만 줄 Instagram 코드베이스에서 검증되었으며, 초당 185만 줄 이상의 코드를 검사할 수 있습니다. 속도는 Mypy와 Pyright의 15배입니다. IDE에서 파일을 저장한 후 재검사는 일반적으로 10밀리초 미만이 소요됩니다. 완전한 언어 서버 기능(코드 탐색, 자동 완성, 호버 정보, 인라인 힌트, 시맨틱 하이라이팅 등)을 제공하며, Pydantic 및 Django(모델 검증, 필드 유형, 자동 완성이 기본 제공됨)를 네이티브로 지원합니다. Mypy 또는 Pyright에서 마이그레이션하려면 `pyrefly init`으로 구성을 초기화하고, `pyrefly suppress`로 기존 오류를 억제하며, `pyrefly infer`로 타입 어노테이션을 자동 생성하면 됩니다. 명령줄 도구는 `pip install pyrefly`로 설치할 수 있으며, VS Code, Neovim, Zed 등의 편집기 확장도 설치할 수 있습니다.

문제 해결 & FAQ (1)

문제 해결
왜 `pyrefly check --suppress-errors`는 인라인 ignore 주석을 여러 줄 f-문자열 내부에 배치하고 그 위에 배치하지 않습니까?

이것은 pyrefly 1.1.0 이전 버전에서 알려진 버그입니다. 수정은 커밋 170ea02a1a3a1a437437dd5753f2df0d7b82620e에 포함되어 있습니다. pyrefly 1.1.0 이상으로 업데이트하면 억제 주석(suppression comment)을 문장 이전 줄에 배치하는 올바른 동작을 얻을 수 있습니다.

원본 Issue #3682

태그

type-checkerpythonlanguage-serveridemetafastpydanticdjango

시작하기

1

설치 프로그램 다운로드

위 버튼을 클릭하여 시스템에 맞는 설치 프로그램을 다운로드

2

소프트웨어 설치

배포판에 맞는 패키지를 설치 (dpkg / rpm / AppImage)

3

터미널에서 pip install pyrefly를 실행하여 명령줄 도구를 설치합니다.

4

프로젝트 디렉토리에서 pyrefly init을 실행하여 설정 파일을 생성합니다 (또는 pyrefly를 직접 실행하여 기본 설정을 사용합니다).

5

편집기 확장 프로그램 설치: VS Code에서 Pyrefly를 검색하여 설치하거나, 공식 사이트에 따라 Neovim/Zed를 구성합니다.

설치 가이드
  1. 터미널에서 pip install pyrefly를 실행하여 명령줄 도구를 설치합니다.
  2. 프로젝트 디렉토리에서 pyrefly init을 실행하여 설정 파일을 생성합니다 (또는 pyrefly를 직접 실행하여 기본 설정을 사용합니다).
  3. 편집기 확장 프로그램 설치: VS Code에서 Pyrefly를 검색하여 설치하거나, 공식 사이트에 따라 Neovim/Zed를 구성합니다.
파일 무결성

SHA-256 체크섬 확인됨

GitHub 공식 Release 페이지에서 추출된 체크섬

SHA256 체크섬

8b35318ba7377a621ff9d9ef77a443b6ad3cf065be566c84f5ae9c8318df5459

이 체크섬은 GitHub Release 페이지에서 추출되었습니다. 다운로드 후 파일 무결성을 확인하세요.

이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.

오픈소스 투명성

GitHub 소스 보기
환경 가이드

제거 정보

터미널에서 pip uninstall pyrefly를 실행하여 명령줄 도구를 제거합니다. VS Code 확장 패널에서 Pyrefly 확장을 비활성화하거나 제거합니다.

추가 의존성 없음

다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.

프로젝트 정보
라이선스MIT
마지막 업데이트2026-06-26 18:10:13
GitHub 저장소공식 웹사이트

문제 발생? 아래 FAQ 확인

1 FAQ

유사한 프로젝트