aboutsummaryrefslogtreecommitdiff
path: root/setup.cfg
diff options
context:
space:
mode:
authorTeddy Sudol <tsudol@google.com>2018-10-05 10:20:33 -0700
committerThea Flowers <theaflowers@google.com>2018-10-05 10:20:33 -0700
commita10b15e34447a35cedd0f73654b13404999141b5 (patch)
tree2cbcdef7ee07e5ccc596334dfa893863f715c8f4 /setup.cfg
parentf1028252b262baee67a294b27ff831182ac645d3 (diff)
downloadgoogle-auth-library-python-a10b15e34447a35cedd0f73654b13404999141b5.tar.gz
Enable static type checking with pytype (#298)
* Ignore pytype import errors in google/auth. These errors are raised because the packages are not required, i.e. not listed in setup.py. We can't guarantee they'll be installed or that their pyi files exist in github.com/python/typeshed, so silence potential errors instead. This does impact the accuracy of type checking. * Ignore pytype import errors in transport/. These imports are not listed in setup.py, because they are optional -- it is assumed the user has them installed if needed. Disabling import-error for these imports prevents useless errors from pytype. * Ignore various type errors raised by pytype. - `__init__.py`: pytype is not aware of `__path__`. - jwt.py: the pyi file for urllib.unparse is not aware of None. Empty strings are clearer. * Add pytype disable comments for scripts/ oauth2client isn't listed as a requirement, so users may not have it installed. * Fix lint errors from pytype directives. * Enable pytype -V3.6. A few notes: - Previous commits fixed type errors detected by pytype. - setup.cfg disables pytype's `pyi-error`. This is necessary due to incomplete type stubs in https://github.com/python/typeshed. - This only enables pytype's Python3.6 checks. Python2.7 is supported by pytype but incomplete type stubs cause spurious type errors. * Remove pytype directives. Updates to pytype made these directives unnecessary. * Move pytype install command. * Add pytype to tox. * Remove pytype directives for tox-installed imports. These imports are handled by setup.py and tox.ini, so they'll be available when pytype is run under tox. * Fix lint error.
Diffstat (limited to 'setup.cfg')
-rw-r--r--setup.cfg15
1 files changed, 15 insertions, 0 deletions
diff --git a/setup.cfg b/setup.cfg
index 2a9acf1..0f15a38 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,2 +1,17 @@
[bdist_wheel]
universal = 1
+
+[pytype]
+# Where to start analysis.
+inputs = .
+# Some files aren't worth analyzing, namely tests. Hidden directories (e.g.
+# .tox) are automatically filtered out.
+exclude = tests system_tests
+# All pytype output goes here.
+output = pytype_output
+# Python version (major.minor) of the target code.
+python_version = 3.6
+# Paths to source code directories, separated by ':'.
+pythonpath = .
+# Errors to disable.
+disable = pyi-error