Pyre adalah pemeriksa tipe berkinerja untuk Python yang sesuai dengan PEP 484. Pyre dapat menganalisis basis kode dengan jutaan baris kode secara bertahap – memberikan umpan balik instan kepada pengembang saat mereka menulis kode. Anda dapat mencobanya pada contoh di Pyre Playground.
Pyre dikirimkan bersama Pysa , alat analisis statis yang berfokus pada keamanan yang kami buat di atas Pyre yang menjelaskan aliran data dalam aplikasi Python. Silakan merujuk ke dokumentasi kami untuk memulai analisis keamanan kami.
Pysa juga tersedia di GitHub Marketplace sebagai Github Action
Untuk memulai, Anda memerlukan Python 3.8 atau lebih baru dan penjaga yang bekerja di sistem Anda. Di MacOS Anda bisa mendapatkan semuanya dengan homebrew:
$ brew install python3 watchman
Di Ubuntu , Mint , atau Debian ; gunakan apt-get
dan homebrew:
$ sudo apt-get install python3 python3-pip python3-venv
$ brew install watchman
Kami menguji Pyre di Ubuntu 18.04.5 LTS , CentOS 7 , serta OSX 10.11 dan yang lebih baru.
Kita mulai dengan membuat direktori proyek kosong dan menyiapkan lingkungan virtual:
$ mkdir my_project && cd my_project
$ python3 -m venv ~ /.venvs/venv
$ source ~ /.venvs/venv/bin/activate
(venv) $ pip install pyre-check
Selanjutnya, kami mengajari Pyre tentang proyek baru kami:
(venv) $ pyre init
Perintah ini akan menyiapkan konfigurasi untuk Pyre ( .pyre_configuration
) serta penjaga ( .watchmanconfig
) di direktori proyek Anda. Terima defaultnya untuk saat ini – Anda dapat mengubahnya nanti jika perlu.
Kami sekarang siap menjalankan Pyre:
(venv) $ echo " i: int = 'string' " > test.py
(venv) $ pyre
ƛ Found 1 type error !
test.py:1:0 Incompatible variable type [9]: i is declared to have type ` int ` but is used as type ` str ` .
Pemanggilan pertama ini akan memulai daemon yang mendengarkan perubahan sistem file – ketik pemeriksaan proyek Anda secara bertahap saat Anda mengedit kode. Anda akan melihat bahwa pemanggilan pyre
berikutnya akan lebih cepat daripada yang pertama.
Untuk dokumentasi lebih detail, lihat https://pyre-check.org.
Lihat CONTRIBUTING.md untuk mengetahui cara membantu.
Pyre dilisensikan di bawah lisensi MIT.