Skip to content

Commit

Permalink
[code quality] new make target that combines style and quality targets (
Browse files Browse the repository at this point in the history
huggingface#7310)

* [code quality] merge style and quality targets

Any reason why we don't run `flake8` in `make style`? I find myself needing to run `make style` and `make quality` all the time, but I need the latter just for the last 2 checks. Since we have no control over the source code why bother with separating checking and fixing - let's just have one target that fixes and then performs the remaining checks, as we know the first two have been done already.

This PR suggests to merge the 2 targets into one efficient target.

I will edit the docs if this change resonates with the team.

* move checks into style, re-use target

* better name

* add fixup target

* document new target
  • Loading branch information
stas00 authored Sep 25, 2020
1 parent 38a1b03 commit 8859c4f
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 6 deletions.
8 changes: 7 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,13 +170,19 @@ Follow these steps to start contributing:
$ make style
```

`transformers` also uses `flake8` to check for coding mistakes. Quality
`transformers` also uses `flake8` and a few custom scripts to check for coding mistakes. Quality
control runs in CI, however you can also run the same checks with:

```bash
$ make quality
```

You can do the automatic style corrections and code verifications that can't be automated in one go:

```bash
$ make fixup
```

If you're modifying documents under `docs/source`, make sure to validate that
they can still be built. This check also runs in CI. To run a local check
make sure you have installed the documentation builder requirements, by
Expand Down
15 changes: 10 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,20 +1,25 @@
.PHONY: quality style test test-examples docs
.PHONY: quality_checks quality style fixup test test-examples docs

# Check that source code meets quality standards

quality:
black --check examples templates tests src utils
isort --check-only examples templates tests src utils
quality_checks:
flake8 examples templates tests src utils
python utils/check_copies.py
python utils/check_repo.py

# Format source code automatically
quality:
black --check examples templates tests src utils
isort --check-only examples templates tests src utils
${MAKE} quality_checks

# Format source code automatically and check is there are any problems left that need manual fixing

style:
black examples templates tests src utils
isort examples templates tests src utils

fixup: style quality_checks

# Make marked copies of snippets of codes conform to the original

fix-copies:
Expand Down

0 comments on commit 8859c4f

Please sign in to comment.