Skip to content
This repository was archived by the owner on Sep 5, 2023. It is now read-only.

Commit 09a543d

Browse files
chore: exclude .nox from linting; add pre-commit hook (#64)
* docs(python): update intersphinx for grpc and auth * docs(python): update intersphinx for grpc and auth * use https for python intersphinx Co-authored-by: Tim Swast <swast@google.com> Source-Author: Bu Sun Kim <8822365+busunkim96@users.noreply.github.com> Source-Date: Wed Nov 18 14:37:25 2020 -0700 Source-Repo: googleapis/synthtool Source-Sha: 9a7d9fbb7045c34c9d3d22c1ff766eeae51f04c9 Source-Link: googleapis/synthtool@9a7d9fb * docs(python): fix intersphinx link for google-auth Source-Author: Bu Sun Kim <8822365+busunkim96@users.noreply.github.com> Source-Date: Thu Nov 19 10:16:05 2020 -0700 Source-Repo: googleapis/synthtool Source-Sha: a073c873f3928c561bdf87fdfbf1d081d1998984 Source-Link: googleapis/synthtool@a073c87 * chore: add config / docs for 'pre-commit' support Source-Author: Tres Seaver <tseaver@palladion.com> Source-Date: Tue Dec 1 16:01:20 2020 -0500 Source-Repo: googleapis/synthtool Source-Sha: 32af6da519a6b042e3da62008e2a75e991efb6b4 Source-Link: googleapis/synthtool@32af6da * chore(deps): update precommit hook pre-commit/pre-commit-hooks to v3.3.0 Source-Author: WhiteSource Renovate <bot@renovateapp.com> Source-Date: Wed Dec 2 17:18:24 2020 +0100 Source-Repo: googleapis/synthtool Source-Sha: 69629b64b83c6421d616be2b8e11795738ec8a6c Source-Link: googleapis/synthtool@69629b6 * test(python): give filesystem paths to pytest-cov https://pytest-cov.readthedocs.io/en/latest/config.html The pytest-cov docs seem to suggest a filesystem path is expected. Source-Author: Bu Sun Kim <8822365+busunkim96@users.noreply.github.com> Source-Date: Wed Dec 2 09:28:04 2020 -0700 Source-Repo: googleapis/synthtool Source-Sha: f94318521f63085b9ccb43d42af89f153fb39f15 Source-Link: googleapis/synthtool@f943185 * chore(deps): update precommit hook pre-commit/pre-commit-hooks to v3.4.0 Co-authored-by: Tres Seaver <tseaver@palladion.com> Source-Author: WhiteSource Renovate <bot@renovateapp.com> Source-Date: Wed Dec 16 18:13:24 2020 +0100 Source-Repo: googleapis/synthtool Source-Sha: aa255b15d52b6d8950cca48cfdf58f7d27a60c8a Source-Link: googleapis/synthtool@aa255b1 * docs(python): document adding Python 3.9 support, dropping 3.5 support Closes #787 Source-Author: Tres Seaver <tseaver@palladion.com> Source-Date: Thu Dec 17 16:08:02 2020 -0500 Source-Repo: googleapis/synthtool Source-Sha: b670a77a454f415d247907908e8ee7943e06d718 Source-Link: googleapis/synthtool@b670a77 * chore: exclude `.nox` directories from linting The samples tests create `.nox` directories with all dependencies installed. These directories should be excluded from linting. I've tested this change locally, and it significantly speeds up linting on my machine. Source-Author: Tim Swast <swast@google.com> Source-Date: Tue Dec 22 13:04:04 2020 -0600 Source-Repo: googleapis/synthtool Source-Sha: 373861061648b5fe5e0ac4f8a38b32d639ee93e4 Source-Link: googleapis/synthtool@3738610
1 parent 62cd894 commit 09a543d

6 files changed

Lines changed: 41 additions & 14 deletions

File tree

.flake8

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ exclude =
2626
*_pb2.py
2727

2828
# Standard linting exemptions.
29+
**/.nox/**
2930
__pycache__,
3031
.git,
3132
*.pyc,

.pre-commit-config.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# See https://pre-commit.com for more information
2+
# See https://pre-commit.com/hooks.html for more hooks
3+
repos:
4+
- repo: https://github.com/pre-commit/pre-commit-hooks
5+
rev: v3.4.0
6+
hooks:
7+
- id: trailing-whitespace
8+
- id: end-of-file-fixer
9+
- id: check-yaml
10+
- repo: https://github.com/psf/black
11+
rev: 19.10b0
12+
hooks:
13+
- id: black
14+
- repo: https://gitlab.com/pycqa/flake8
15+
rev: 3.8.4
16+
hooks:
17+
- id: flake8

CONTRIBUTING.rst

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ In order to add a feature:
2121
- The feature must be documented in both the API and narrative
2222
documentation.
2323

24-
- The feature must work fully on the following CPython versions: 2.7,
25-
3.5, 3.6, 3.7 and 3.8 on both UNIX and Windows.
24+
- The feature must work fully on the following CPython versions:
25+
3.6, 3.7, 3.8 and 3.9 on both UNIX and Windows.
2626

2727
- The feature must not add unnecessary dependencies (where
2828
"unnecessary" is of course subjective, but new dependencies should
@@ -111,6 +111,16 @@ Coding Style
111111
should point to the official ``googleapis`` checkout and the
112112
the branch should be the main branch on that remote (``master``).
113113

114+
- This repository contains configuration for the
115+
`pre-commit <https://pre-commit.com/>`__ tool, which automates checking
116+
our linters during a commit. If you have it installed on your ``$PATH``,
117+
you can enable enforcing those checks via:
118+
119+
.. code-block:: bash
120+
121+
$ pre-commit install
122+
pre-commit installed at .git/hooks/pre-commit
123+
114124
Exceptions to PEP8:
115125

116126
- Many unit tests use a helper method, ``_call_fut`` ("FUT" is short for
@@ -192,25 +202,24 @@ Supported Python Versions
192202

193203
We support:
194204

195-
- `Python 3.5`_
196205
- `Python 3.6`_
197206
- `Python 3.7`_
198207
- `Python 3.8`_
208+
- `Python 3.9`_
199209

200-
.. _Python 3.5: https://docs.python.org/3.5/
201210
.. _Python 3.6: https://docs.python.org/3.6/
202211
.. _Python 3.7: https://docs.python.org/3.7/
203212
.. _Python 3.8: https://docs.python.org/3.8/
213+
.. _Python 3.9: https://docs.python.org/3.9/
204214

205215

206216
Supported versions can be found in our ``noxfile.py`` `config`_.
207217

208218
.. _config: https://github.com/googleapis/python-billingbudgets/blob/master/noxfile.py
209219

210-
Python 2.7 support is deprecated. All code changes should maintain Python 2.7 compatibility until January 1, 2020.
211220

212221
We also explicitly decided to support Python 3 beginning with version
213-
3.5. Reasons for this include:
222+
3.6. Reasons for this include:
214223

215224
- Encouraging use of newest versions of Python 3
216225
- Taking the lead of `prominent`_ open-source `projects`_

docs/conf.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -345,10 +345,10 @@
345345

346346
# Example configuration for intersphinx: refer to the Python standard library.
347347
intersphinx_mapping = {
348-
"python": ("http://python.readthedocs.org/en/latest/", None),
349-
"google-auth": ("https://google-auth.readthedocs.io/en/stable", None),
348+
"python": ("https://python.readthedocs.org/en/latest/", None),
349+
"google-auth": ("https://googleapis.dev/python/google-auth/latest/", None),
350350
"google.api_core": ("https://googleapis.dev/python/google-api-core/latest/", None,),
351-
"grpc": ("https://grpc.io/grpc/python/", None),
351+
"grpc": ("https://grpc.github.io/grpc/python/", None),
352352
"proto-plus": ("https://proto-plus-python.readthedocs.io/en/latest/", None),
353353
}
354354

noxfile.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,8 @@ def default(session):
8181
session.run(
8282
"py.test",
8383
"--quiet",
84-
"--cov=google.cloud.billing.budgets",
85-
"--cov=google.cloud",
86-
"--cov=tests.unit",
84+
"--cov=google/cloud",
85+
"--cov=tests/unit",
8786
"--cov-append",
8887
"--cov-config=.coveragerc",
8988
"--cov-report=",

synth.metadata

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"git": {
55
"name": ".",
66
"remote": "https://github.com/googleapis/python-billingbudgets.git",
7-
"sha": "409385ccda7bbdfc5185d19297b057ecde7185c1"
7+
"sha": "62cd894af1cc1aeaca48725dcd4665c8ce48df20"
88
}
99
},
1010
{
@@ -19,7 +19,7 @@
1919
"git": {
2020
"name": "synthtool",
2121
"remote": "https://github.com/googleapis/synthtool.git",
22-
"sha": "1f1148d3c7a7a52f0c98077f976bd9b3c948ee2b"
22+
"sha": "373861061648b5fe5e0ac4f8a38b32d639ee93e4"
2323
}
2424
}
2525
],
@@ -87,6 +87,7 @@
8787
".kokoro/test-samples.sh",
8888
".kokoro/trampoline.sh",
8989
".kokoro/trampoline_v2.sh",
90+
".pre-commit-config.yaml",
9091
".trampolinerc",
9192
"CODE_OF_CONDUCT.md",
9293
"CONTRIBUTING.rst",

0 commit comments

Comments
 (0)