forked from aio-libs/aiohttp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
136 lines (108 loc) · 3.11 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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
# Some simple testing tasks (sorry, UNIX only).
PYXS = $(wildcard aiohttp/*.pyx)
SRC = aiohttp examples tests setup.py
all: test
.install-cython:
pip install -r requirements/cython.txt
touch .install-cython
aiohttp/%.c: aiohttp/%.pyx
cython -3 -o $@ $< -I aiohttp
cythonize: .install-cython $(PYXS:.pyx=.c)
.install-deps: cythonize $(shell find requirements -type f)
pip install -r requirements/dev.txt
@touch .install-deps
isort:
isort -rc $(SRC)
flake: .flake
.flake: .install-deps $(shell find aiohttp -type f) \
$(shell find tests -type f) \
$(shell find examples -type f)
flake8 aiohttp examples tests
@if ! isort -c -rc aiohttp tests examples; then \
echo "Import sort errors, run 'make isort' to fix them!!!"; \
isort --diff -rc aiohttp tests examples; \
false; \
fi
@if ! LC_ALL=C sort -c CONTRIBUTORS.txt; then \
echo "CONTRIBUTORS.txt sort error"; \
fi
@touch .flake
flake8:
flake8 $(SRC)
mypy: .flake
mypy aiohttp
isort-check:
@if ! isort -rc --check-only $(SRC); then \
echo "Import sort errors, run 'make isort' to fix them!!!"; \
isort --diff -rc $(SRC); \
false; \
fi
check_changes:
./tools/check_changes.py
.develop: .install-deps $(shell find aiohttp -type f) .flake check_changes mypy
# pip install -e .
@touch .develop
test: .develop
@pytest -q
vtest: .develop
@pytest -s -v
cov cover coverage:
tox
cov-dev: .develop
@pytest --cov-report=html
@echo "open file://`pwd`/htmlcov/index.html"
cov-ci-run: .develop
@echo "Regular run"
@pytest --cov-report=html
cov-dev-full: cov-ci-run
@echo "open file://`pwd`/htmlcov/index.html"
clean:
@rm -rf `find . -name __pycache__`
@rm -f `find . -type f -name '*.py[co]' `
@rm -f `find . -type f -name '*~' `
@rm -f `find . -type f -name '.*~' `
@rm -f `find . -type f -name '@*' `
@rm -f `find . -type f -name '#*#' `
@rm -f `find . -type f -name '*.orig' `
@rm -f `find . -type f -name '*.rej' `
@rm -f .coverage
@rm -rf htmlcov
@rm -rf build
@rm -rf cover
@make -C docs clean
@python setup.py clean
@rm -f aiohttp/_frozenlist.html
@rm -f aiohttp/_frozenlist.c
@rm -f aiohttp/_frozenlist.*.so
@rm -f aiohttp/_frozenlist.*.pyd
@rm -f aiohttp/_http_parser.html
@rm -f aiohttp/_http_parser.c
@rm -f aiohttp/_http_parser.*.so
@rm -f aiohttp/_http_parser.*.pyd
@rm -f aiohttp/_multidict.html
@rm -f aiohttp/_multidict.c
@rm -f aiohttp/_multidict.*.so
@rm -f aiohttp/_multidict.*.pyd
@rm -f aiohttp/_websocket.html
@rm -f aiohttp/_websocket.c
@rm -f aiohttp/_websocket.*.so
@rm -f aiohttp/_websocket.*.pyd
@rm -f aiohttp/_parser.html
@rm -f aiohttp/_parser.c
@rm -f aiohttp/_parser.*.so
@rm -f aiohttp/_parser.*.pyd
@rm -rf .tox
@rm -f .develop
@rm -f .flake
@rm -f .install-deps
@rm -rf aiohttp.egg-info
doc:
@make -C docs html SPHINXOPTS="-W -E"
@echo "open file://`pwd`/docs/_build/html/index.html"
doc-spelling:
@make -C docs spelling SPHINXOPTS="-W -E"
install:
@pip install -U 'pip'
@pip install -Ur requirements/dev.txt
install-dev: .develop
.PHONY: all build flake test vtest cov clean doc mypy