Performant type-checking for python.
Clone or download
mrkmndz and facebook-github-bot fixing setup for opam 2.x
Summary: This fixes compatibility for opam 2.1 for the build jobs, but doesn't fix it for the external and pypi builds.  Those are running into curl issues I don't know how to solve quite yet, but this should get our main testing apparatus up and running again.

Reviewed By: dark

Differential Revision: D13055249

fbshipit-source-id: 965cb94690221b2b51a6d9fc5ada321978d0142e
Latest commit ebdf56c Nov 15, 2018
Permalink
Failed to load latest commit information.
.circleci Add CircleCI configuration May 12, 2018
analysis relax the joining of parameters for callables Nov 14, 2018
ast class properties also have a meta first parameter Nov 9, 2018
client Increase the timeout of pyre check to 10 minutes. Nov 13, 2018
command Throw pyre error on signatures with untracked annotations Nov 9, 2018
docs Documentation update/clarification for do_not_check Sep 14, 2018
external class properties also have a meta first parameter Nov 9, 2018
hack_parallel print shared memory logs when debug is enabled Sep 20, 2018
ide_plugins/vscode better distincion between ide plugins and pyre plugins Jun 21, 2018
interprocedural move resolution from Environment -> TypeCheck Nov 14, 2018
parser Only allow one implementation per callable Nov 1, 2018
plugin move resolution from Environment -> TypeCheck Nov 14, 2018
scripts fixing setup for opam 2.x Nov 14, 2018
server move resolution from Environment -> TypeCheck Nov 14, 2018
service move resolution from Environment -> TypeCheck Nov 14, 2018
taint move resolution from Environment -> TypeCheck Nov 14, 2018
test move resolution from Environment -> TypeCheck Nov 14, 2018
website Warn if watchman doesn't watch source root Jul 11, 2018
.buck_definitions Initial commit May 7, 2018
.buckconfig Initial commit May 7, 2018
.flake8 disable mypy linter Aug 16, 2018
.gitignore Add concrete Makefile [1/2] Oct 23, 2018
.ocp-indent Initial commit May 7, 2018
.pyre_configuration.local Turn push blocking on for tools/pyre Jul 16, 2018
.python3 simple script to log adoption in fbcode Sep 13, 2018
.typeshed-version Upgrade typeshed to bc3f9fe1d3c43b00c04cedb23e0eeebc9e1734b6 Oct 5, 2018
CODE_OF_CONDUCT.md Fix code of conduct link. Aug 7, 2018
CONTRIBUTING.es.md Updated README.es.md, And Translated INSTALL.md, CONTRIBUTING.md (#88) Aug 21, 2018
CONTRIBUTING.md Updated README.es.md, And Translated INSTALL.md, CONTRIBUTING.md (#88) Aug 21, 2018
INSTALL.es.md Updated README.es.md, And Translated INSTALL.md, CONTRIBUTING.md (#88) Aug 21, 2018
INSTALL.md Updated README.es.md, And Translated INSTALL.md, CONTRIBUTING.md (#88) Aug 21, 2018
LICENSE Initial commit May 7, 2018
Makefile Do not use sequential runner to run tests Oct 23, 2018
README.es.md Updated README.es.md, And Translated INSTALL.md, CONTRIBUTING.md (#88) Aug 21, 2018
README.md Updated README.es.md, And Translated INSTALL.md, CONTRIBUTING.md (#88) Aug 21, 2018
configuration.ml pipe command line arguments through the backend to run additional che… Oct 25, 2018
configuration.mli pipe command line arguments through the backend to run additional che… Oct 25, 2018
dune-project Convert jbuilder files to dune Jul 24, 2018
dune.in add watchman integration for saved states Sep 28, 2018
file.ml move search_path to configuration Oct 8, 2018
file.mli create a mechanism to dynamically restore paths from handles Oct 8, 2018
log.ml Move and rename CallGraph module Nov 6, 2018
log.mli Move and rename CallGraph module Nov 6, 2018
logo.txt Ascii art logo Aug 16, 2018
main.ml split server start and stop commands Sep 26, 2018
opam Initial commit May 7, 2018
pyre.ml Initial commit May 7, 2018
pyrePath.ml add watchman integration for saved states Sep 28, 2018
pyrePath.mli named parameter type spacing in pyrePath.mli and statistics.mli Sep 28, 2018
pyrelib.opam remove sedlex dependency Aug 27, 2018
statistics.ml Always log performance of long-running generated files Nov 5, 2018
statistics.mli Always log performance of long-running generated files Nov 5, 2018
timer.ml Initial commit May 7, 2018
timer.mli Initial commit May 7, 2018
version.mli Add build information to `pyre rage` Jul 27, 2018

README.md

Pyre

Pyre is a performant type checker for python.

Read this in other languages: Español

Getting Started

To install Pyre on your system run pip install pyre-check and you should be good to go! Run it on your project with pyre --source-directory . check.

For more detailed documentation, see https://pyre-check.org.

Supported platforms

  • Python: you need Python 3.5 or later to run Pyre.
  • Operating System:
    • a recent version of Linux (we tested on Ubuntu 16.04 LTS and CentOS 7);
    • OSX 10.11 or newer;
    • please note: Windows is not supported.

Installation

See INSTALL.md for details on installing Pyre from a packaged version or from source.

Join the Pyre community

See CONTRIBUTING.md for how to help out.

License

Pyre is licensed under the MIT license.