From ff0b552c8e83e2515a9cc02b2a948dc215171eae Mon Sep 17 00:00:00 2001 From: Hugo Date: Sun, 20 Oct 2019 20:30:20 +0300 Subject: [PATCH 1/4] Run pre-commit on Travis CI --- .pre-commit-config.yaml | 32 +++++++++++++++----------------- .travis.yml | 21 ++++++++------------- 2 files changed, 23 insertions(+), 30 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5abeb8249ce..1ab6322fc07 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,21 +2,19 @@ # "Version control integration" in README.md. exclude: ^(blib2to3/|profiling/|tests/data/) repos: -- repo: local + - repo: https://github.com/psf/black + rev: 19.3b0 hooks: - - id: black - name: black - language: system - entry: black - types: [python] - - id: flake8 - name: flake8 - language: system - entry: flake8 - types: [python] - - id: mypy - name: mypy - language: system - entry: mypy - types: [python] - exclude: ^docs/conf.py + - id: black + + - repo: https://gitlab.com/pycqa/flake8 + rev: 3.7.8 + hooks: + - id: flake8 + additional_dependencies: [flake8-bugbear] + + - repo: https://github.com/pre-commit/mirrors-mypy + rev: v0.740 + hooks: + - id: mypy + exclude: ^docs/conf.py diff --git a/.travis.yml b/.travis.yml index a4eb9981b35..84b10f87d55 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,12 @@ -dist: xenial language: python -cache: pip +cache: + pip: true + directories: + - $HOME/.cache/pre-commit env: - TEST_CMD="coverage run tests/test_black.py" install: -- pip install coverage coveralls flake8 flake8-bugbear mypy +- pip install coverage coveralls - pip install -e '.[d]' script: - $TEST_CMD @@ -15,18 +17,11 @@ notifications: on_failure: always matrix: include: - - name: "mypy" - python: 3.6 - env: - - TEST_CMD="mypy black.py blackd.py tests/test_black.py" - - name: "black" - python: 3.7 - env: - - TEST_CMD="black --check --verbose ." - - name: "flake8" + - name: "lint" python: 3.7 + install: pip install pre-commit env: - - TEST_CMD="flake8 black.py blackd.py tests/test_black.py" + - TEST_CMD="pre-commit run --all-files" - name: "3.6" python: 3.6 - name: "3.7" From 9bac874bae484b57a728037796096cdd9e7bd965 Mon Sep 17 00:00:00 2001 From: Hugo Date: Sun, 20 Oct 2019 22:18:30 +0300 Subject: [PATCH 2/4] Dogfood Black --- .pre-commit-config.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 1ab6322fc07..f9de4cb2e73 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,10 +2,13 @@ # "Version control integration" in README.md. exclude: ^(blib2to3/|profiling/|tests/data/) repos: - - repo: https://github.com/psf/black - rev: 19.3b0 + - repo: local hooks: - id: black + name: black + language: system + entry: black + types: [python] - repo: https://gitlab.com/pycqa/flake8 rev: 3.7.8 From 23a6fe80dd476d851a40ac3850706a00ab0f99e9 Mon Sep 17 00:00:00 2001 From: Hugo Date: Sun, 20 Oct 2019 22:23:26 +0300 Subject: [PATCH 3/4] Install pre-commit for all so Black is also installed for lint --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 84b10f87d55..b6dc6b3be09 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,7 @@ cache: env: - TEST_CMD="coverage run tests/test_black.py" install: -- pip install coverage coveralls +- pip install coverage coveralls pre-commit - pip install -e '.[d]' script: - $TEST_CMD @@ -19,7 +19,6 @@ matrix: include: - name: "lint" python: 3.7 - install: pip install pre-commit env: - TEST_CMD="pre-commit run --all-files" - name: "3.6" From f0b4854d02de7c642e676a23d2603a4788fda180 Mon Sep 17 00:00:00 2001 From: Hugo Date: Sun, 20 Oct 2019 22:27:04 +0300 Subject: [PATCH 4/4] Require serial for Black, as Black interally does multiprocessing --- .pre-commit-config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f9de4cb2e73..a7b40fd6317 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -8,6 +8,7 @@ repos: name: black language: system entry: black + require_serial: true types: [python] - repo: https://gitlab.com/pycqa/flake8