프로젝트 소개

ty는 uv와 Ruff를 만든 Astral 팀이 개발한 고성능 Python 타입 체커이자 언어 서버입니다. Rust로 작성되어 mypy나 Pyright 같은 기존 도구보다 10~100배 빠른 타입 체킹 속도를 제공하며, home-assistant/core 같은 대규모 프로젝트 벤치마크에서 이를 입증했습니다. 주요 기능으로는 풍부한 맥락 정보를 포함한 포괄적 진단, 규칙 수준 설정, 파일별 재정의, 주석 기반 억제 기능이 있습니다. 이 도구는 재선언과 부분적으로 타입이 지정된 코드를 지원하여 점진적 도입이 가능하며, 혼합된 타입 커버리지를 가진 프로젝트에서도 접근성을 높입니다. 언어 서버는 코드 탐색, 자동 완성, 코드 액션, 자동 가져오기, 인레이 힌트, 호버 도움말을 제공하며, IDE 편집 중 빠른 업데이트를 위한 세밀한 증분 분석을 지원합니다. VS Code, PyCharm, Neovim 등 다양한 에디터 통합이 가능합니다. 고급 타입 기능으로는 일급 교차 타입, 정교한 타입 좁히기, 도달 가능성 기반 분석이 포함됩니다. ty는 공식적으로 Python 3.10 이상을 지원하며, 이전 버전(3.7-3.9)은 선택 가능하지만 표준 라이브러리 스텁 부족으로 인해 오탐지나 누락이 발생할 수 있습니다. 현재 베타 단계로 0.0.x 버전을 사용하며, 아직 API 안정성을 보장하지 않습니다. 개발은 Ruff 저장소에서 진행되며, MIT 라이선스로 배포됩니다. uvx ty check 명령으로 빠르게 실행하거나 play.ty.dev 온라인 플레이그라운드에서 탐색할 수 있습니다.