From cfe9c1ffa272f3aa58f38f423fc5f8b5f477fe08 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:07:32 +0600 Subject: [PATCH 01/14] update setup.py --- setup.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/setup.py b/setup.py index 15b1142..12a90ff 100644 --- a/setup.py +++ b/setup.py @@ -81,6 +81,7 @@ if sys.argv[-1] == 'publish': LONG_DESCRIPTION = remove_screenshots(open('README.rst').read()) HISTORY = open('HISTORY.rst').read() + class PyTest(TestCommand): user_options = [('pytest-args=', 'a', "Arguments to pass to py.test")] @@ -100,6 +101,7 @@ class PyTest(TestCommand): errno = pytest.main(self.pytest_args) sys.exit(errno) + setup( name='django-admin2', version=version, @@ -113,7 +115,9 @@ setup( "Operating System :: OS Independent", "Programming Language :: JavaScript", "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Python Modules", @@ -127,12 +131,12 @@ setup( include_package_data=True, #test_suite='runtests.runtests', install_requires=[ - 'django>=1.8.0', - 'django-extra-views==0.8.0', + 'django>=1.11.1', + 'django-extra-views>=0.11.0', 'django-braces>=1.3.0', - 'djangorestframework<=3.5.3', + 'djangorestframework>=3.8.2', 'django-filter==1.0.0', - 'pytz==2016.4', + 'pytz>=2016.4', 'future>=0.15.2', ], extras_require={ From 26fc9ff2351e64c889deb9f170f950a8c9dd5201 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:11:14 +0600 Subject: [PATCH 02/14] update readme --- README.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index ba52145..8f10652 100644 --- a/README.rst +++ b/README.rst @@ -47,8 +47,8 @@ Screenshots Requirements ============ -* Django 1.7+ -* Python 2.7+ or Python 3.3+ +* Django 1.11+ +* Python 2.7+ or Python 3.4+ * django-braces_ * django-extra-views_ * django-rest-framework_ From d44f64f3fd025d03260302c1f6c173c01e6c270e Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:11:41 +0600 Subject: [PATCH 03/14] update django-fillter to 1.1 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 12a90ff..9db8c1d 100644 --- a/setup.py +++ b/setup.py @@ -135,7 +135,7 @@ setup( 'django-extra-views>=0.11.0', 'django-braces>=1.3.0', 'djangorestframework>=3.8.2', - 'django-filter==1.0.0', + 'django-filter==1.1.0', 'pytz>=2016.4', 'future>=0.15.2', ], From 5d4ba598d74b8a069825748030a584c9c22b8df4 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:15:12 +0600 Subject: [PATCH 04/14] updated travis matrix --- .travis.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3540c2b..c8304ca 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,11 +5,11 @@ cache: - "~/.cache/pip" python: - '2.7' -- '3.4' +- '3.6' - '3.5' env: - DJANGO=2.0 -- DJANGO=1.10 +- DJANGO=2.1 - DJANGO=1.11 - DJANGO=master matrix: @@ -18,10 +18,14 @@ matrix: env: DJANGO=master - python: '2.7' env: DJANGO=2.0 + - python: '2.7' + env: DJANGO=2.1 + - python: '3.6' + env: DJANGO=1.11 allow_failures: - python: '3.5' env: DJANGO=master - - python: '3.4' + - python: '3.6' env: DJANGO=master install: From 394b04c2f909c38adf478dd32d8fb15fd36ed9e9 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:20:28 +0600 Subject: [PATCH 05/14] updated authors --- AUTHORS.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/AUTHORS.rst b/AUTHORS.rst index afc7c06..03dfd66 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -4,6 +4,7 @@ CONTRIBUTORS Project Lead ------------ +* Asif Saif Uddin (@auvipy) * Daniel Greenfeld (@pydanny / ) Translation Managers @@ -11,6 +12,7 @@ Translation Managers * Henri Colas (@NotSqrt) * Danilo Bargen (@dbrgn) +* Asif Saif Uddin (@auvipy) Developers ---------- From 68eb9c7c5915e3dc1573566c344e609d975773c4 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:31:48 +0600 Subject: [PATCH 06/14] updated urls reverse import --- example/files/tests/test_views.py | 2 +- example/polls/tests/test_views.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/example/files/tests/test_views.py b/example/files/tests/test_views.py index 6751c6a..0d743a0 100644 --- a/example/files/tests/test_views.py +++ b/example/files/tests/test_views.py @@ -1,7 +1,7 @@ from os import path from django.contrib.auth import get_user_model -from django.core.urlresolvers import reverse +from django.urls import reverse from django.test import TestCase, Client from django.utils.encoding import force_text diff --git a/example/polls/tests/test_views.py b/example/polls/tests/test_views.py index 67ab56a..a2bcc65 100644 --- a/example/polls/tests/test_views.py +++ b/example/polls/tests/test_views.py @@ -1,6 +1,6 @@ from django.contrib.auth import get_user_model -from django.core.urlresolvers import reverse from django.test import TestCase, Client +from django.urls import reverse from django.utils import timezone from django.utils.encoding import force_text From 75c7d4180a118c3d8e497826381f704e13033040 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 11:38:31 +0600 Subject: [PATCH 07/14] updated tox with newer versions --- tox.ini | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tox.ini b/tox.ini index 07ab3cc..df0d23d 100644 --- a/tox.ini +++ b/tox.ini @@ -6,9 +6,9 @@ exclude = migrations/*,docs/* [tox] envlist = - py27-{1.10,1.11}, - py34-{1.10,1.11,2.0}, - py35-{1.10,1.11,2.0,master}, + py27-{1.11}, + py35-{1.11,2.0,2.1}, + py36-{2.0,2.1,master}, [testenv] commands = @@ -16,7 +16,7 @@ commands = py.test [] deps = -rrequirements_test.txt - 1.10: Django>=1.10,<1.11 + 2.1: Django>=2.1,<2.2 1.11: Django>=1.11,<2.0 2.0: Django>=2.0,<2.1 master: https://github.com/django/django/tarball/master From 5f0c3c323dd72e18e9dff549b731fe2cdb1df74a Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 13:37:47 +0600 Subject: [PATCH 08/14] fixed url includes deprecation warning --- djadmin2/core.py | 4 ++-- example/example/urls.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/djadmin2/core.py b/djadmin2/core.py index 1d29aa9..260abec 100644 --- a/djadmin2/core.py +++ b/djadmin2/core.py @@ -195,11 +195,11 @@ class Admin2(object): url('^{}/{}/'.format( model_options.app_label, model_options.object_name.lower()), - include(model_admin.urls)), + model_admin.urls), url('^api/v0/{}/{}/'.format( model_options.app_label, model_options.object_name.lower()), - include(model_admin.api_urls)), + model_admin.api_urls), ] return urlpatterns diff --git a/example/example/urls.py b/example/example/urls.py index d302b8d..fc8653b 100644 --- a/example/example/urls.py +++ b/example/example/urls.py @@ -12,8 +12,8 @@ from djadmin2.site import djadmin2_site djadmin2_site.autodiscover() urlpatterns = [ - url(r'^admin2/', include(djadmin2_site.urls)), - url(r'^admin/', include(admin.site.urls)), + url(r'^admin2/', djadmin2_site.urls), + url(r'^admin/', admin.site.urls), url(r'^blog/', BlogListView.as_view(template_name="blog/blog_list.html"), name='blog_list'), url(r'^blog/detail(?P\d+)/$', From 647260dfb786abd9d9a45ede2fac72370e4c440c Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 13:38:39 +0600 Subject: [PATCH 09/14] fixed migrations on_delete argument warning --- djadmin2/migrations/0001_initial.py | 12 ++++++++++-- example/blog/migrations/0001_initial.py | 18 ++++++++++++++---- example/polls/migrations/0001_initial.py | 5 ++++- 3 files changed, 28 insertions(+), 7 deletions(-) diff --git a/djadmin2/migrations/0001_initial.py b/djadmin2/migrations/0001_initial.py index 3931cd3..f3030bc 100644 --- a/djadmin2/migrations/0001_initial.py +++ b/djadmin2/migrations/0001_initial.py @@ -22,8 +22,16 @@ class Migration(migrations.Migration): ('object_repr', models.CharField(max_length=200, verbose_name='object repr')), ('action_flag', models.PositiveSmallIntegerField(verbose_name='action flag')), ('change_message', models.TextField(verbose_name='change message', blank=True)), - ('content_type', models.ForeignKey(related_name='log_entries', null=True, blank=True, to='contenttypes.ContentType')), - ('user', models.ForeignKey(related_name='log_entries', to=settings.AUTH_USER_MODEL)), + ('content_type', models.ForeignKey( + related_name='log_entries', + null=True, + blank=True, + to='contenttypes.ContentType', + on_delete=models.CASCADE)), + ('user', models.ForeignKey( + related_name='log_entries', + to=settings.AUTH_USER_MODEL, + on_delete=models.CASCADE)), ], options={ 'verbose_name': 'log entry', diff --git a/example/blog/migrations/0001_initial.py b/example/blog/migrations/0001_initial.py index 6761aea..a063401 100644 --- a/example/blog/migrations/0001_initial.py +++ b/example/blog/migrations/0001_initial.py @@ -27,7 +27,8 @@ class Migration(migrations.Migration): fields=[ ('id', models.AutoField(serialize=False, verbose_name='ID', auto_created=True, primary_key=True)), ('num', models.PositiveSmallIntegerField()), - ('parent', models.ForeignKey(to='blog.Count', null=True)), + ('parent', models.ForeignKey( + to='blog.Count', null=True, on_delete=models.CASCADE)), ], ), migrations.CreateModel( @@ -49,7 +50,9 @@ class Migration(migrations.Migration): fields=[ ('id', models.AutoField(serialize=False, verbose_name='ID', auto_created=True, primary_key=True)), ('name', models.CharField(max_length=255)), - ('event', models.OneToOneField(to='blog.Event')), + ('event', models.OneToOneField( + to='blog.Event', + on_delete=models.CASCADE)), ], options={ 'verbose_name': 'awesome guest', @@ -59,7 +62,10 @@ class Migration(migrations.Migration): name='Location', fields=[ ('id', models.AutoField(serialize=False, verbose_name='ID', auto_created=True, primary_key=True)), - ('event', models.OneToOneField(verbose_name='awesome event', to='blog.Event')), + ('event', models.OneToOneField( + verbose_name='awesome event', + to='blog.Event', + on_delete=models.CASCADE)), ], ), migrations.CreateModel( @@ -79,6 +85,10 @@ class Migration(migrations.Migration): migrations.AddField( model_name='comment', name='post', - field=models.ForeignKey(related_name='comments', verbose_name='post', to='blog.Post'), + field=models.ForeignKey( + related_name='comments', + verbose_name='post', + to='blog.Post', + on_delete=models.CASCADE), ), ] diff --git a/example/polls/migrations/0001_initial.py b/example/polls/migrations/0001_initial.py index 21980fd..8dd792e 100644 --- a/example/polls/migrations/0001_initial.py +++ b/example/polls/migrations/0001_initial.py @@ -37,6 +37,9 @@ class Migration(migrations.Migration): migrations.AddField( model_name='choice', name='poll', - field=models.ForeignKey(verbose_name='poll', to='polls.Poll'), + field=models.ForeignKey( + verbose_name='poll', + to='polls.Poll', + on_delete=models.CASCADE), ), ] From 6263f2a340921944657a147ef2f2dc4b3d2e4035 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 13:45:27 +0600 Subject: [PATCH 10/14] fixed lint error --- djadmin2/core.py | 2 +- example/example/urls.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/djadmin2/core.py b/djadmin2/core.py index 260abec..d9dc280 100644 --- a/djadmin2/core.py +++ b/djadmin2/core.py @@ -8,7 +8,7 @@ from __future__ import division, absolute_import, unicode_literals from importlib import import_module from django.conf import settings -from django.conf.urls import include, url +from django.conf.urls import url from django.core.exceptions import ImproperlyConfigured from . import apiviews diff --git a/example/example/urls.py b/example/example/urls.py index fc8653b..eb45787 100644 --- a/example/example/urls.py +++ b/example/example/urls.py @@ -2,7 +2,7 @@ from __future__ import unicode_literals from blog.views import BlogListView, BlogDetailView from django.conf import settings -from django.conf.urls import include, url +from django.conf.urls import url from django.conf.urls.static import static from django.contrib import admin From 2091f9649d61b520c4787ae8a79338287554a196 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 14:13:10 +0600 Subject: [PATCH 11/14] fixed is_authenticated error --- djadmin2/permissions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/djadmin2/permissions.py b/djadmin2/permissions.py index 8bbee29..e9371a2 100644 --- a/djadmin2/permissions.py +++ b/djadmin2/permissions.py @@ -35,7 +35,7 @@ def is_authenticated(request, view, obj=None): ''' Checks if the current user is authenticated. ''' - return request.user.is_authenticated() + return request.user.is_authenticated def is_staff(request, view, obj=None): From 8169c11e3179342d03ac3a7837cca8f9996d294b Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 14:25:27 +0600 Subject: [PATCH 12/14] fixed url erros --- djadmin2/tests/urls.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/djadmin2/tests/urls.py b/djadmin2/tests/urls.py index f2b520d..283ce87 100644 --- a/djadmin2/tests/urls.py +++ b/djadmin2/tests/urls.py @@ -1,7 +1,7 @@ from __future__ import unicode_literals from django.conf import settings -from django.conf.urls import include, url +from django.conf.urls import url from django.conf.urls.static import static from djadmin2.site import djadmin2_site @@ -17,5 +17,5 @@ djadmin2_site.login_view = CustomLoginView djadmin2_site.autodiscover() urlpatterns = [ - url(r'^admin2/', include(djadmin2_site.urls)), + url(r'^admin2/', djadmin2_site.urls), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) From 6ae2354d2ae28c13cec19a8ef28d1081b0933f44 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 14:42:29 +0600 Subject: [PATCH 13/14] removed SessionAuthenticationMiddleware --- example/example/settings.py | 1 - 1 file changed, 1 deletion(-) diff --git a/example/example/settings.py b/example/example/settings.py index e42013d..e8a4116 100644 --- a/example/example/settings.py +++ b/example/example/settings.py @@ -56,7 +56,6 @@ MIDDLEWARE = [ 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', - 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] From 8636f6ce9851a876a8b5323d6925d4e54ca95fd7 Mon Sep 17 00:00:00 2001 From: Asif Saif Uddin Date: Mon, 3 Sep 2018 14:54:37 +0600 Subject: [PATCH 14/14] template dir settings --- example/example/settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/example/example/settings.py b/example/example/settings.py index e8a4116..3b5ecec 100644 --- a/example/example/settings.py +++ b/example/example/settings.py @@ -65,7 +65,7 @@ ROOT_URLCONF = 'example.urls' TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': [], + 'DIRS': [os.path.join(BASE_DIR, 'templates')], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [