-
Notifications
You must be signed in to change notification settings - Fork 516
/
Makefile
68 lines (51 loc) · 1.47 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
LINT_PATHS = *.py tests/ scripts/ rl_zoo3/ hyperparams/python/*.py docs/conf.py
# Run pytest and coverage report
pytest:
./scripts/run_tests.sh
# check all trained agents (slow)
check-trained-agents:
python -m pytest -v tests/test_enjoy.py -k trained_agent --color=yes
mypy:
mypy ${LINT_PATHS} --install-types --non-interactive
type: mypy
lint:
# stop the build if there are Python syntax errors or undefined names
# see https://www.flake8rules.com/
ruff check ${LINT_PATHS} --select=E9,F63,F7,F82 --output-format=full
# exit-zero treats all errors as warnings.
ruff check ${LINT_PATHS} --exit-zero --output-format=concise
format:
# Sort imports
ruff check --select I ${LINT_PATHS} --fix
# Reformat using black
black ${LINT_PATHS}
check-codestyle:
# Sort imports
ruff check --select I ${LINT_PATHS}
# Reformat using black
black --check ${LINT_PATHS}
commit-checks: format type lint
doc:
cd docs && make html
spelling:
cd docs && make spelling
clean:
cd docs && make clean
docker: docker-cpu docker-gpu
docker-cpu:
./scripts/build_docker.sh
docker-gpu:
USE_GPU=True ./scripts/build_docker.sh
# PyPi package release
release:
# rm -r build/* dist/*
python -m build -s
python -m build -w
twine upload dist/*
# Test PyPi package release
test-release:
# rm -r build/* dist/*
python -m build -s
python -m build -w
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
.PHONY: lint format check-codestyle commit-checks doc spelling docker type pytest