Skip to content

Commit b3cd06f

Browse files
Lint and ASV run workflows added (django#16)
* Lint and benchmark workflow added * newline added at EOF's and skip option in setup.cfg removed
1 parent 59c053a commit b3cd06f

12 files changed

+105
-21
lines changed

.github/workflows/benchmark.yml

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Benchmark
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches:
7+
- "main"
8+
9+
jobs:
10+
11+
run_benchmarks:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: checkout
15+
uses: actions/checkout@v3
16+
- name: Install python
17+
uses: actions/setup-python@v3
18+
with:
19+
python-version: '3.10'
20+
- name: Install Requirements
21+
run: pip install -r requirements.txt
22+
- name: Run Benchmarks
23+
run: |-
24+
asv machine --yes
25+
asv run

.github/workflows/lint.yml

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Lint
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches:
7+
- "main"
8+
9+
jobs:
10+
flake8:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v3
15+
- name: Set up python
16+
uses: actions/setup-python@v3
17+
with:
18+
python-version: '3.10'
19+
- run: pip install flake8
20+
- name: flake8
21+
run: flake8 .
22+
23+
isort:
24+
runs-on: ubuntu-latest
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v3
28+
- name: Set up python
29+
uses: actions/setup-python@v3
30+
with:
31+
python-version: '3.10'
32+
- run: pip install isort
33+
- name: isort
34+
run: isort --check .
35+
36+
black:
37+
runs-on: ubuntu-latest
38+
steps:
39+
- name: Checkout
40+
uses: actions/checkout@v3
41+
- name: Set up python
42+
uses: actions/setup-python@v3
43+
with:
44+
python-version: '3.10'
45+
- run: pip install black
46+
- name: black
47+
run: black --check .
48+

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -143,4 +143,4 @@ html/
143143
results/
144144

145145
# vscode
146-
settings.json
146+
settings.json

benchmarks/bench_models.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import os
22

33
import django
4-
from django.core.management import call_command, CommandError
4+
from django.core.management import CommandError, call_command
55

66
from .models import Book
77

benchmarks/bench_templates.py

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import os
22

33
import django
4-
from django import template
4+
from django import VERSION, template
55
from django.http import HttpRequest
66
from django.shortcuts import render
7-
from django import VERSION
87

98
try:
109
os.environ["DJANGO_SETTINGS_MODULE"] = "benchmarks.settings"
@@ -44,7 +43,7 @@ def setup(self):
4443
}
4544

4645
def time_template_render(self):
47-
if VERSION >= (4,0):
46+
if VERSION >= (4, 0):
4847
render(HttpRequest(), "permalink.html", self.context)
4948
else:
5049
render(HttpRequest(), "permalink_django_lte_40.html", self.context)

benchmarks/forms.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,13 @@ def time_create_form(self):
6161
BookForm({"title": "a"})
6262

6363
def time_selectdatewidget(self):
64-
self.widget.get_context('widget', "2020-10-10", {})
65-
self.widget.get_context('widget', "2020-10-10", {})
66-
self.widget.get_context('widget', "2020-10-10", {})
67-
self.widget.get_context('widget', "2020-10-10", {})
68-
self.widget.get_context('widget', "2020-10-10", {})
69-
self.widget.get_context('widget', "2020-10-10", {})
70-
self.widget.get_context('widget', "2020-10-10", {})
64+
self.widget.get_context("widget", "2020-10-10", {})
65+
self.widget.get_context("widget", "2020-10-10", {})
66+
self.widget.get_context("widget", "2020-10-10", {})
67+
self.widget.get_context("widget", "2020-10-10", {})
68+
self.widget.get_context("widget", "2020-10-10", {})
69+
self.widget.get_context("widget", "2020-10-10", {})
70+
self.widget.get_context("widget", "2020-10-10", {})
7171

7272
def time_small_form_render(self):
7373
str(self.form_render_small)

benchmarks/other.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
import os
2-
from django.db import connection
2+
33
import django
4-
from .models import OneField
54
from django.core.management import call_command
5+
from django.db import connection
6+
7+
from .models import OneField
68

79
try:
810
os.environ["DJANGO_SETTINGS_MODULE"] = "benchmarks.settings"

benchmarks/query.py

+1-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import django
44
from django.core.management import call_command
55

6-
from .models import Book, MultiField, Author
6+
from .models import Book, MultiField
77

88
try:
99
os.environ["DJANGO_SETTINGS_MODULE"] = "benchmarks.settings"
@@ -184,6 +184,3 @@ def teardown(self):
184184

185185
def time_query_raw_deferred(self):
186186
list(MultiField.objects.raw("select * from benchmarks_multifield"))
187-
188-
189-

benchmarks/urls.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
def generate_filler_patterns(num=1):
11-
""" Returns a list of url pattern inputs for garbage views """
11+
"""Returns a list of url pattern inputs for garbage views"""
1212
for n in range(num):
1313
yield re_path(r"".join((r"^", r"x" * 3 * n, r"/$")), views.basic)
1414

benchmarks/utils.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import os
2+
23
import django
3-
from django.core.management import call_command, CommandError
4+
from django.core.management import CommandError, call_command
5+
46

57
def bench_setup(migrate=False):
68
try:

requirements.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
asv
2-
virtualenv
2+
virtualenv

setup.cfg

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[flake8]
2+
ignore = E302 E305
3+
max-line-length = 90
4+
exclude = Django, env, results
5+
6+
[isort]
7+
combine_as_imports = true
8+
include_trailing_comma = true
9+
line_length = 79
10+
multi_line_output = 5
11+

0 commit comments

Comments
 (0)