Skip to content

Commit

Permalink
Add Python 3.7 to supported versions
Browse files Browse the repository at this point in the history
Add Django 2.1 to the test matrix

Fixes #371

Signed-off-by: Aleksi Häkli <aleksi.hakli@iki.fi>
  • Loading branch information
aleksihakli committed Dec 10, 2018
1 parent 295eb62 commit 8204032
Show file tree
Hide file tree
Showing 9 changed files with 39 additions and 30 deletions.
4 changes: 4 additions & 0 deletions .prospector.yaml
Expand Up @@ -10,5 +10,9 @@ pyflakes:
disable:
- F401

pylint:
disable:
- old-style-class

dodgy:
run: false
14 changes: 9 additions & 5 deletions .travis.yml
@@ -1,11 +1,15 @@
sudo: false
language: python
cache: pip
python:
- 2.7
- 3.4
- 3.5
- 3.6
matrix:
include:
- python: 2.7
- python: 3.4
- python: 3.5
- python: 3.6
- python: 3.7
dist: xenial
sudo: true
install: pip install tox-travis
script: tox
after_success:
Expand Down
14 changes: 7 additions & 7 deletions axes/attempts.py
Expand Up @@ -210,12 +210,12 @@ def is_already_locked(request):
failures_cached >= settings.AXES_FAILURE_LIMIT and
settings.AXES_LOCK_OUT_AT_FAILURE
)
else:
for attempt in get_user_attempts(request):
if (
attempt.failures_since_start >= settings.AXES_FAILURE_LIMIT and
settings.AXES_LOCK_OUT_AT_FAILURE
):
return True

for attempt in get_user_attempts(request):
if (
attempt.failures_since_start >= settings.AXES_FAILURE_LIMIT and
settings.AXES_LOCK_OUT_AT_FAILURE
):
return True

return False
4 changes: 2 additions & 2 deletions axes/decorators.py
Expand Up @@ -69,12 +69,12 @@ def lockout_response(request):
status=403,
)

elif settings.AXES_LOCKOUT_TEMPLATE:
if settings.AXES_LOCKOUT_TEMPLATE:
return render(
request, settings.AXES_LOCKOUT_TEMPLATE, context, status=403
)

elif settings.AXES_LOCKOUT_URL:
if settings.AXES_LOCKOUT_URL:
return HttpResponseRedirect(settings.AXES_LOCKOUT_URL)

return HttpResponse(get_lockout_message(), status=403)
6 changes: 3 additions & 3 deletions axes/models.py
Expand Up @@ -46,7 +46,7 @@ class CommonAccess(models.Model):
auto_now_add=True,
)

class Meta(object):
class Meta:
app_label = 'axes'
abstract = True
ordering = ['-attempt_time']
Expand All @@ -72,7 +72,7 @@ def failures(self):
def __str__(self):
return 'Attempted Access: %s' % self.attempt_time

class Meta(object):
class Meta:
verbose_name = _('access attempt')
verbose_name_plural = _('access attempts')

Expand All @@ -87,6 +87,6 @@ class AccessLog(CommonAccess):
def __str__(self):
return 'Access Log for %s @ %s' % (self.username, self.attempt_time)

class Meta(object):
class Meta:
verbose_name = _('access log')
verbose_name_plural = _('access logs')
1 change: 1 addition & 0 deletions axes/test_settings.py
Expand Up @@ -19,6 +19,7 @@
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)

AUTHENTICATION_BACKENDS = (
Expand Down
8 changes: 4 additions & 4 deletions requirements.txt
@@ -1,5 +1,5 @@
django
astroid==1.6.5
prospector==0.12.11
sphinx-rtd-theme
-e .
coveralls==1.5.1
mock==2.0.0 ; python_version <= "2.7"
prospector==1.1.6.2
sphinx_rtd_theme==0.4.2
2 changes: 2 additions & 0 deletions setup.py
Expand Up @@ -25,6 +25,7 @@
package_dir={'axes': 'axes'},
install_requires=[
'pytz',
'django',
'django-appconf',
'django-ipware>=2.0.2',
'win_inet_pton ; python_version < "3.4" and sys_platform == "win32"',
Expand All @@ -48,6 +49,7 @@
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Topic :: Internet :: Log Analysis',
'Topic :: Security',
'Topic :: System :: Logging',
Expand Down
16 changes: 7 additions & 9 deletions tox.ini
@@ -1,22 +1,20 @@
[tox]
envlist =
py{27,34,35,36}-django-111
py{34,35,36}-django-20
py{35,36}-django-master
py{27,34,35,36,37}-django-111
py{34,35,36,37}-django-20
py{35,36,37}-django-21
py{35,36,37}-django-master

[testenv]
deps =
coveralls
django-appconf
django-ipware
-r requirements.txt
django-111: django>=1.11,<2.0
django-20: django>=2.0,<2.1
django-21: django>=2.1,<2.2
django-master: https://github.com/django/django/archive/master.tar.gz
astroid==1.6.5
prospector==0.12.11
py27: mock
usedevelop = True
ignore_outcome =
django-21: True
django-master: True
commands =
coverage run -a --source=axes runtests.py -v2
Expand Down

0 comments on commit 8204032

Please sign in to comment.