Hello community,
here is the log from the commit of package python-django-avatar for
openSUSE:Leap:15.2 checked in at 2020-02-23 16:47:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.2/python-django-avatar (Old)
and /work/SRC/openSUSE:Leap:15.2/.python-django-avatar.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-avatar"
Sun Feb 23 16:47:14 2020 rev:12 rq:776564 version:5.0.0
Changes:
--------
---
/work/SRC/openSUSE:Leap:15.2/python-django-avatar/python-django-avatar.changes
2020-01-15 15:48:36.471431648 +0100
+++
/work/SRC/openSUSE:Leap:15.2/.python-django-avatar.new.26092/python-django-avatar.changes
2020-02-23 16:47:15.794296614 +0100
@@ -1,0 +2,13 @@
+Tue Jan 7 09:53:20 UTC 2020 - Tomáš Chvátal <[email protected]>
+
+- Update to 5.0.0:
+ * Added Django 2.1, 2.2, and 3.0 support.
+ * Added Python 3.7 and 3.8 support.
+ * Fixed bug where avatars couldn't be deleted if file was already deleted.
+
+-------------------------------------------------------------------
+Fri Sep 13 16:31:38 UTC 2019 - John Vandenberg <[email protected]>
+
+- Skip the check if flavor python2 is not being built
+
+-------------------------------------------------------------------
Old:
----
django-avatar-4.1.0.tar.gz
New:
----
django-avatar-5.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-avatar.spec ++++++
--- /var/tmp/diff_new_pack.avfAoZ/_old 2020-02-23 16:47:16.222297438 +0100
+++ /var/tmp/diff_new_pack.avfAoZ/_new 2020-02-23 16:47:16.230297453 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-django-avatar
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,20 +17,19 @@
Name: python-django-avatar
-Version: 4.1.0
+Version: 5.0.0
Release: 0
Summary: Django-avatar package
License: BSD-3-Clause
-Group: Development/Libraries/Python
URL: https://github.com/grantmcconnaughey/django-avatar/
Source:
https://files.pythonhosted.org/packages/source/d/django-avatar/django-avatar-%{version}.tar.gz
-BuildRequires: %{python_module Django}
+BuildRequires: %{python_module Django >= 1.11}
BuildRequires: %{python_module Pillow >= 2.0}
BuildRequires: %{python_module django-appconf >= 0.6}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-Requires: python-Django
+Requires: python-Django >= 1.11
Requires: python-Pillow >= 2.0
Requires: python-django-appconf >= 0.6
BuildArch: noarch
@@ -53,8 +52,7 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-export DJANGO_SETTINGS_MODULE=tests.settings
-python2 %{_bindir}/django-admin.py-2.7 test tests --pythonpath=`pwd`
+%python_expand %{_bindir}/django-admin.py-%{$python_bin_suffix} test
--settings=tests.settings --pythonpath=`pwd`
%files %{python_files}
%license LICENSE.txt
++++++ django-avatar-4.1.0.tar.gz -> django-avatar-5.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/PKG-INFO
new/django-avatar-5.0.0/PKG-INFO
--- old/django-avatar-4.1.0/PKG-INFO 2017-12-20 16:22:43.000000000 +0100
+++ new/django-avatar-5.0.0/PKG-INFO 2020-01-04 18:46:57.000000000 +0100
@@ -1,10 +1,12 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.2
Name: django-avatar
-Version: 4.1.0
+Version: 5.0.0
Summary: A Django app for handling user avatars
Home-page: http://github.com/grantmcconnaughey/django-avatar/
-Author: Grant McConnaughey
-Author-email: [email protected]
+Author: Eric Florenzano
+Author-email: [email protected]
+Maintainer: Grant McConnaughey
+Maintainer-email: [email protected]
License: BSD
Description: =============
django-avatar
@@ -26,10 +28,6 @@
:target:
https://coveralls.io/github/grantmcconnaughey/django-avatar?branch=master
:alt: Coverage
- .. image::
https://lintly.com/gh/grantmcconnaughey/django-avatar/badge.svg
- :target: https://lintly.com/gh/grantmcconnaughey/django-avatar/
- :alt: Lintly
-
Django-avatar is a reusable application for handling user avatars. It
has the
ability to default to Gravatar if no avatar is found for a certain
user.
Django-avatar automatically generates thumbnails and stores them to
your default
@@ -44,9 +42,11 @@
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: Framework :: Django
-Classifier: Framework :: Django :: 1.9
-Classifier: Framework :: Django :: 1.10
Classifier: Framework :: Django :: 1.11
+Classifier: Framework :: Django :: 2.0
+Classifier: Framework :: Django :: 2.1
+Classifier: Framework :: Django :: 2.2
+Classifier: Framework :: Django :: 3.0
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
@@ -56,3 +56,5 @@
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/README.rst
new/django-avatar-5.0.0/README.rst
--- old/django-avatar-4.1.0/README.rst 2017-12-17 17:10:03.000000000 +0100
+++ new/django-avatar-5.0.0/README.rst 2020-01-04 18:38:11.000000000 +0100
@@ -18,10 +18,6 @@
:target:
https://coveralls.io/github/grantmcconnaughey/django-avatar?branch=master
:alt: Coverage
-.. image:: https://lintly.com/gh/grantmcconnaughey/django-avatar/badge.svg
- :target: https://lintly.com/gh/grantmcconnaughey/django-avatar/
- :alt: Lintly
-
Django-avatar is a reusable application for handling user avatars. It has the
ability to default to Gravatar if no avatar is found for a certain user.
Django-avatar automatically generates thumbnails and stores them to your
default
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/avatar/__init__.py
new/django-avatar-5.0.0/avatar/__init__.py
--- old/django-avatar-4.1.0/avatar/__init__.py 2017-12-20 16:22:29.000000000
+0100
+++ new/django-avatar-5.0.0/avatar/__init__.py 2020-01-04 18:46:08.000000000
+0100
@@ -1 +1 @@
-__version__ = '4.1.0'
+__version__ = '5.0.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/avatar/admin.py
new/django-avatar-5.0.0/avatar/admin.py
--- old/django-avatar-4.1.0/avatar/admin.py 2017-12-17 17:10:03.000000000
+0100
+++ new/django-avatar-5.0.0/avatar/admin.py 2019-12-30 05:02:47.000000000
+0100
@@ -1,6 +1,10 @@
from django.contrib import admin
+# Issue 182: six no longer included with Django 3.0
+try:
+ from django.utils import six
+except ImportError:
+ import six
from django.utils.translation import ugettext_lazy as _
-from django.utils import six
from django.template.loader import render_to_string
from avatar.models import Avatar
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/avatar/forms.py
new/django-avatar-5.0.0/avatar/forms.py
--- old/django-avatar-4.1.0/avatar/forms.py 2017-12-17 17:10:03.000000000
+0100
+++ new/django-avatar-5.0.0/avatar/forms.py 2019-12-30 05:02:47.000000000
+0100
@@ -2,8 +2,13 @@
from django import forms
from django.forms import widgets
-from django.utils import six
from django.utils.safestring import mark_safe
+
+# Issue 182: six no longer included with Django 3.0
+try:
+ from django.utils import six
+except ImportError:
+ import six
from django.utils.translation import ugettext_lazy as _
from django.template.defaultfilters import filesizeformat
@@ -20,7 +25,6 @@
class UploadAvatarForm(forms.Form):
-
avatar = forms.ImageField(label=_("avatar"))
def __init__(self, *args, **kwargs):
@@ -36,21 +40,19 @@
valid_exts = ", ".join(settings.AVATAR_ALLOWED_FILE_EXTS)
error = _("%(ext)s is an invalid file extension. "
"Authorized extensions are : %(valid_exts_list)s")
- raise forms.ValidationError(error %
- {'ext': ext,
+ raise forms.ValidationError(error
+ % {'ext': ext,
'valid_exts_list': valid_exts})
if data.size > settings.AVATAR_MAX_SIZE:
error = _("Your file is too big (%(size)s), "
"the maximum allowed size is %(max_valid_size)s")
- raise forms.ValidationError(error % {
- 'size': filesizeformat(data.size),
- 'max_valid_size': filesizeformat(settings.AVATAR_MAX_SIZE)
- })
+ raise forms.ValidationError(error
+ % {'size': filesizeformat(data.size),
+ 'max_valid_size':
filesizeformat(settings.AVATAR_MAX_SIZE)})
count = Avatar.objects.filter(user=self.user).count()
- if (settings.AVATAR_MAX_AVATARS_PER_USER > 1 and
- count >= settings.AVATAR_MAX_AVATARS_PER_USER):
+ if 1 < settings.AVATAR_MAX_AVATARS_PER_USER <= count:
error = _("You already have %(nb_avatars)d avatars, "
"and the maximum allowed is %(nb_max_avatars)d.")
raise forms.ValidationError(error % {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/avatar/models.py
new/django-avatar-5.0.0/avatar/models.py
--- old/django-avatar-4.1.0/avatar/models.py 2017-12-17 17:24:16.000000000
+0100
+++ new/django-avatar-5.0.0/avatar/models.py 2019-12-30 05:02:47.000000000
+0100
@@ -9,9 +9,8 @@
from django.core.files.base import ContentFile
from django.core.files.storage import get_storage_class
from django.utils.module_loading import import_string
-from django.utils.translation import ugettext as _
+from django.utils.translation import ugettext_lazy as _
from django.utils.encoding import force_text
-from django.utils import six
from django.db.models import signals
from avatar.conf import settings
@@ -22,6 +21,12 @@
except ImportError:
now = datetime.datetime.now
+# Issue 182: six no longer included with Django 3.0
+try:
+ from django.utils import six
+except ImportError:
+ import six
+
avatar_storage = get_storage_class(settings.AVATAR_STORAGE)()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/django-avatar-4.1.0/avatar/templatetags/avatar_tags.py
new/django-avatar-5.0.0/avatar/templatetags/avatar_tags.py
--- old/django-avatar-4.1.0/avatar/templatetags/avatar_tags.py 2017-12-17
17:16:45.000000000 +0100
+++ new/django-avatar-5.0.0/avatar/templatetags/avatar_tags.py 2019-12-30
05:02:47.000000000 +0100
@@ -5,7 +5,11 @@
# For Django < 1.10
from django.core.urlresolvers import reverse
from django.template.loader import render_to_string
-from django.utils import six
+# Issue 182: six no longer included with Django 3.0
+try:
+ from django.utils import six
+except ImportError:
+ import six
from django.utils.translation import ugettext as _
from django.utils.module_loading import import_string
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/avatar/utils.py
new/django-avatar-5.0.0/avatar/utils.py
--- old/django-avatar-4.1.0/avatar/utils.py 2017-12-17 17:10:03.000000000
+0100
+++ new/django-avatar-5.0.0/avatar/utils.py 2019-12-30 05:02:47.000000000
+0100
@@ -1,7 +1,6 @@
import hashlib
from django.core.cache import cache
-from django.utils import six
from django.template.defaultfilters import slugify
try:
@@ -9,6 +8,12 @@
except ImportError:
force_bytes = str
+# Issue 182: six no longer included with Django 3.0
+try:
+ from django.utils import six
+except ImportError:
+ import six
+
from django.contrib.auth import get_user_model
from avatar.conf import settings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/avatar/views.py
new/django-avatar-5.0.0/avatar/views.py
--- old/django-avatar-4.1.0/avatar/views.py 2017-12-17 17:23:13.000000000
+0100
+++ new/django-avatar-5.0.0/avatar/views.py 2019-12-30 05:02:47.000000000
+0100
@@ -1,7 +1,10 @@
from django.shortcuts import render, redirect
-from django.utils import six
from django.utils.translation import ugettext as _
-
+# Issue 182: six no longer included with Django 3.0
+try:
+ from django.utils import six
+except ImportError:
+ import six
from django.contrib import messages
from django.contrib.auth.decorators import login_required
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/django_avatar.egg-info/PKG-INFO
new/django-avatar-5.0.0/django_avatar.egg-info/PKG-INFO
--- old/django-avatar-4.1.0/django_avatar.egg-info/PKG-INFO 2017-12-20
16:22:43.000000000 +0100
+++ new/django-avatar-5.0.0/django_avatar.egg-info/PKG-INFO 2020-01-04
18:46:57.000000000 +0100
@@ -1,10 +1,12 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.2
Name: django-avatar
-Version: 4.1.0
+Version: 5.0.0
Summary: A Django app for handling user avatars
Home-page: http://github.com/grantmcconnaughey/django-avatar/
-Author: Grant McConnaughey
-Author-email: [email protected]
+Author: Eric Florenzano
+Author-email: [email protected]
+Maintainer: Grant McConnaughey
+Maintainer-email: [email protected]
License: BSD
Description: =============
django-avatar
@@ -26,10 +28,6 @@
:target:
https://coveralls.io/github/grantmcconnaughey/django-avatar?branch=master
:alt: Coverage
- .. image::
https://lintly.com/gh/grantmcconnaughey/django-avatar/badge.svg
- :target: https://lintly.com/gh/grantmcconnaughey/django-avatar/
- :alt: Lintly
-
Django-avatar is a reusable application for handling user avatars. It
has the
ability to default to Gravatar if no avatar is found for a certain
user.
Django-avatar automatically generates thumbnails and stores them to
your default
@@ -44,9 +42,11 @@
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: Framework :: Django
-Classifier: Framework :: Django :: 1.9
-Classifier: Framework :: Django :: 1.10
Classifier: Framework :: Django :: 1.11
+Classifier: Framework :: Django :: 2.0
+Classifier: Framework :: Django :: 2.1
+Classifier: Framework :: Django :: 2.2
+Classifier: Framework :: Django :: 3.0
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
@@ -56,3 +56,5 @@
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/docs/index.txt
new/django-avatar-5.0.0/docs/index.txt
--- old/django-avatar-4.1.0/docs/index.txt 2017-12-17 17:10:03.000000000
+0100
+++ new/django-avatar-5.0.0/docs/index.txt 2019-12-30 05:02:47.000000000
+0100
@@ -48,7 +48,7 @@
urlpatterns = [
# ...
- url(r'^avatar/', include('avatar.urls')),
+ url('avatar/', include('avatar.urls')),
]
4. Somewhere in your template navigation scheme, link to the change avatar
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/setup.py
new/django-avatar-5.0.0/setup.py
--- old/django-avatar-4.1.0/setup.py 2017-12-17 17:10:03.000000000 +0100
+++ new/django-avatar-5.0.0/setup.py 2020-01-04 18:38:11.000000000 +0100
@@ -18,6 +18,7 @@
return version_match.group(1)
raise RuntimeError("Unable to find version string.")
+
setup(
name='django-avatar',
version=find_version("avatar", "__init__.py"),
@@ -29,9 +30,11 @@
'Framework :: Django',
'Intended Audience :: Developers',
'Framework :: Django',
- 'Framework :: Django :: 1.9',
- 'Framework :: Django :: 1.10',
'Framework :: Django :: 1.11',
+ 'Framework :: Django :: 2.0',
+ 'Framework :: Django :: 2.1',
+ 'Framework :: Django :: 2.2',
+ 'Framework :: Django :: 3.0',
'License :: OSI Approved :: BSD License',
'Operating System :: OS Independent',
'Programming Language :: Python',
@@ -41,6 +44,8 @@
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
+ 'Programming Language :: Python :: 3.7',
+ 'Programming Language :: Python :: 3.8',
],
keywords='avatar, django',
author='Eric Florenzano',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-avatar-4.1.0/tests/settings.py
new/django-avatar-5.0.0/tests/settings.py
--- old/django-avatar-4.1.0/tests/settings.py 2017-12-17 18:22:45.000000000
+0100
+++ new/django-avatar-5.0.0/tests/settings.py 2020-01-04 18:38:11.000000000
+0100
@@ -12,6 +12,8 @@
}
INSTALLED_APPS = [
+ 'django.contrib.admin',
+ 'django.contrib.messages',
'django.contrib.sessions',
'django.contrib.auth',
'django.contrib.contenttypes',
@@ -19,16 +21,6 @@
'avatar',
]
-# Django 1.9
-MIDDLEWARE_CLASSES = (
- "django.middleware.common.CommonMiddleware",
- "django.contrib.sessions.middleware.SessionMiddleware",
- "django.middleware.csrf.CsrfViewMiddleware",
- "django.contrib.auth.middleware.AuthenticationMiddleware",
- "django.contrib.messages.middleware.MessageMiddleware",
-)
-
-# Django 1.10+
MIDDLEWARE = (
"django.middleware.common.CommonMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
@@ -43,7 +35,13 @@
'APP_DIRS': True,
'DIRS': [
os.path.join(SETTINGS_DIR, 'templates')
- ]
+ ],
+ 'OPTIONS': {
+ 'context_processors': [
+ 'django.contrib.auth.context_processors.auth',
+ 'django.contrib.messages.context_processors.messages'
+ ]
+ }
}
]