Hello community,
here is the log from the commit of package python-django-invitations for
openSUSE:Factory checked in at 2020-02-20 14:59:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-invitations (Old)
and /work/SRC/openSUSE:Factory/.python-django-invitations.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-invitations"
Thu Feb 20 14:59:09 2020 rev:4 rq:777591 version:1.9.3
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-django-invitations/python-django-invitations.changes
2020-02-05 19:44:33.703349408 +0100
+++
/work/SRC/openSUSE:Factory/.python-django-invitations.new.26092/python-django-invitations.changes
2020-02-20 14:59:13.798741275 +0100
@@ -1,0 +2,7 @@
+Thu Feb 20 08:25:25 UTC 2020 - Tomáš Chvátal <[email protected]>
+
+- Update to 1.9.3:
+ * support new django
+- Remove patch django20.patch
+
+-------------------------------------------------------------------
Old:
----
1.9.2.tar.gz
django20.patch
New:
----
1.9.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-invitations.spec ++++++
--- /var/tmp/diff_new_pack.U21MxF/_old 2020-02-20 14:59:14.838743316 +0100
+++ /var/tmp/diff_new_pack.U21MxF/_new 2020-02-20 14:59:14.842743324 +0100
@@ -19,14 +19,12 @@
%define skip_python2 1
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-django-invitations
-Version: 1.9.2
+Version: 1.9.3
Release: 0
Summary: Generic invitations app with support for Django-allauth
License: GPL-3.0-only
-Group: Development/Languages/Python
URL: https://github.com/bee-keeper/django-invitations
Source:
https://github.com/bee-keeper/django-invitations/archive/%{version}.tar.gz
-Patch0: django20.patch
BuildRequires: %{python_module Django >= 1.11}
BuildRequires: %{python_module django-allauth}
BuildRequires: %{python_module freezegun >= 0.3.5}
@@ -46,7 +44,6 @@
%prep
%setup -q -n django-invitations-%{version}
-%patch0 -p1
rm tox.ini
%build
@@ -58,8 +55,7 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-# test_auth https://github.com/pytest-dev/pytest-django/issues/341
-%pytest tests/basic/tests.py --ds=test_settings -k 'not test_auth'
+%pytest tests/basic/tests.py --ds=test_settings
%pytest tests/allauth/test_allauth.py --ds=test_allauth_settings
%files %{python_files}
++++++ 1.9.2.tar.gz -> 1.9.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/.gitignore
new/django-invitations-1.9.3/.gitignore
--- old/django-invitations-1.9.2/.gitignore 2018-02-03 08:43:57.000000000
+0100
+++ new/django-invitations-1.9.3/.gitignore 2020-02-08 10:01:02.000000000
+0100
@@ -7,5 +7,8 @@
.coverage/
django_invitations.egg-info/
.gitchangelog.rc
+git-push.bat
.python-version
.coverage
+/.idea/
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/.travis.yml
new/django-invitations-1.9.3/.travis.yml
--- old/django-invitations-1.9.2/.travis.yml 2018-02-03 08:43:57.000000000
+0100
+++ new/django-invitations-1.9.3/.travis.yml 2020-02-08 10:01:02.000000000
+0100
@@ -1,59 +1,21 @@
+sudo: false
language: python
-python: 3.5
-
-env:
- matrix:
- - TOX_ENV=py27-django19-backendBasic
- - TOX_ENV=py27-django110-backendBasic
- - TOX_ENV=py27-django111-backendBasic
-
- - TOX_ENV=py34-django19-backendBasic
- - TOX_ENV=py34-django110-backendBasic
- - TOX_ENV=py34-django111-backendBasic
-
- - TOX_ENV=py35-django19-backendBasic
- - TOX_ENV=py35-django110-backendBasic
- - TOX_ENV=py35-django111-backendBasic
-
- - TOX_ENV=py27-django19-backendAllauth
- - TOX_ENV=py27-django110-backendAllauth
- - TOX_ENV=py27-django111-backendAllauth
-
- - TOX_ENV=py34-django19-backendAllauth
- - TOX_ENV=py34-django110-backendAllauth
- - TOX_ENV=py34-django111-backendAllauth
-
- - TOX_ENV=py35-django19-backendAllauth
- - TOX_ENV=py35-django110-backendAllauth
- - TOX_ENV=py35-django111-backendAllauth
-
- - TOX_ENV=flake8
-
-matrix:
- include:
- - python: "3.5"
- env: TOX_ENV=py35-django19-backendBasic
- - python: "3.5"
- env: TOX_ENV=py35-django110-backendBasic
- - python: "3.5"
- env: TOX_ENV=py35-django110-backendBasic
- - python: "3.5"
- env: TOX_ENV=py35-django19-backendAllauth
- - python: "3.5"
- env: TOX_ENV=py35-django110-backendAllauth
- - python: "3.5"
- env: TOX_ENV=py35-django111-backendAllauth
+python:
+ - 3.5
+ - 3.6
+ - 3.7
+ - 3.8
+
+cache:
+ directories:
+ - $HOME/.cache/pip
+ - $TRAVIS_BUILD_DIR/.tox
install:
- - pip install tox
- - pip install flake8
- - pip install coveralls
-
-branches:
- - devel
- - master
+ - pip install --upgrade pip wheel setuptools
+ - pip install tox coveralls tox-travis
-script: tox -e $TOX_ENV
+script: tox
after_success:
- coveralls
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/ChangeLog
new/django-invitations-1.9.3/ChangeLog
--- old/django-invitations-1.9.2/ChangeLog 2018-02-03 08:43:57.000000000
+0100
+++ new/django-invitations-1.9.3/ChangeLog 2020-02-08 10:01:02.000000000
+0100
@@ -1,6 +1,12 @@
Changelog
=========
+x.x (yyyy-mm-dd)
+----------------
+(not yet released)
+
+- Added AppConfig.
+
1.9 (2017-02-11)
----------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/README.md
new/django-invitations-1.9.3/README.md
--- old/django-invitations-1.9.2/README.md 2018-02-03 08:43:57.000000000
+0100
+++ new/django-invitations-1.9.3/README.md 2020-02-08 10:01:02.000000000
+0100
@@ -50,6 +50,20 @@
### Sending Invites
+First import the model:
+
+```
+from invitations.utils import get_invitation_model
+```
+
+Make an instance of the model:
+
+```
+Invitation = get_invitation_model()
+```
+
+Then finally pass the recipient to the model and send.
+
```
# inviter argument is optional
invite = Invitation.create('[email protected]', inviter=request.user)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/invitations/__init__.py
new/django-invitations-1.9.3/invitations/__init__.py
--- old/django-invitations-1.9.2/invitations/__init__.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/invitations/__init__.py 2020-02-08
10:01:02.000000000 +0100
@@ -0,0 +1 @@
+default_app_config = 'invitations.apps.Config'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/invitations/apps.py
new/django-invitations-1.9.3/invitations/apps.py
--- old/django-invitations-1.9.2/invitations/apps.py 1970-01-01
01:00:00.000000000 +0100
+++ new/django-invitations-1.9.3/invitations/apps.py 2020-02-08
10:01:02.000000000 +0100
@@ -0,0 +1,8 @@
+from django.apps import AppConfig
+
+
+class Config(AppConfig):
+ """Config."""
+
+ name = 'invitations'
+ label = 'invitations'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/django-invitations-1.9.2/invitations/base_invitation.py
new/django-invitations-1.9.3/invitations/base_invitation.py
--- old/django-invitations-1.9.2/invitations/base_invitation.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/invitations/base_invitation.py 2020-02-08
10:01:02.000000000 +0100
@@ -1,12 +1,10 @@
from django.conf import settings
from django.db import models
-from django.utils.encoding import python_2_unicode_compatible
from django.utils.translation import ugettext_lazy as _
from .managers import BaseInvitationManager
-@python_2_unicode_compatible
class AbstractBaseInvitation(models.Model):
accepted = models.BooleanField(verbose_name=_('accepted'), default=False)
key = models.CharField(verbose_name=_('key'), max_length=64, unique=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/invitations/models.py
new/django-invitations-1.9.3/invitations/models.py
--- old/django-invitations-1.9.2/invitations/models.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/invitations/models.py 2020-02-08
10:01:02.000000000 +0100
@@ -9,7 +9,6 @@
from django.db import models
from django.utils import timezone
from django.utils.crypto import get_random_string
-from django.utils.encoding import python_2_unicode_compatible
from django.utils.translation import ugettext_lazy as _
from . import signals
@@ -18,7 +17,6 @@
from .base_invitation import AbstractBaseInvitation
-@python_2_unicode_compatible
class Invitation(AbstractBaseInvitation):
email = models.EmailField(unique=True, verbose_name=_('e-mail address'),
max_length=app_settings.EMAIL_MAX_LENGTH)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/invitations/utils.py
new/django-invitations-1.9.3/invitations/utils.py
--- old/django-invitations-1.9.2/invitations/utils.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/invitations/utils.py 2020-02-08
10:01:02.000000000 +0100
@@ -1,6 +1,5 @@
from django.apps import apps as django_apps
from django.core.exceptions import ImproperlyConfigured
-from django.utils import six
from .app_settings import app_settings
@@ -11,7 +10,7 @@
def import_attribute(path):
- assert isinstance(path, six.string_types)
+ assert isinstance(path, str)
pkg, attr = path.rsplit('.', 1)
ret = getattr(importlib.import_module(pkg), attr)
return ret
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/invitations/views.py
new/django-invitations-1.9.3/invitations/views.py
--- old/django-invitations-1.9.2/invitations/views.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/invitations/views.py 2020-02-08
10:01:02.000000000 +0100
@@ -188,7 +188,7 @@
def accept_invite_after_signup(sender, request, user, **kwargs):
- invitation = Invitation.objects.filter(email=user.email).first()
+ invitation = Invitation.objects.filter(email__iexact=user.email).first()
if invitation:
accept_invitation(invitation=invitation,
request=request,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/requirements.txt
new/django-invitations-1.9.3/requirements.txt
--- old/django-invitations-1.9.2/requirements.txt 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/requirements.txt 2020-02-08
10:01:02.000000000 +0100
@@ -1,7 +1,8 @@
-tox>=2.1.1
-mock>=1.3.0
-coverage>=3.7.1
-freezegun>=0.3.5
-pytest==3.0.7
-pytest-django==3.1.2
-pytest-cov==2.4.0
+coverage==4.5.4
+flake8==3.7.9
+freezegun==0.3.12
+mock==3.0.5
+pytest==5.2.2
+pytest-django==3.6.0
+pytest-cov==2.8.1
+tox==3.14.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/setup.py
new/django-invitations-1.9.3/setup.py
--- old/django-invitations-1.9.2/setup.py 2018-02-03 08:43:57.000000000
+0100
+++ new/django-invitations-1.9.3/setup.py 2020-02-08 10:01:02.000000000
+0100
@@ -6,13 +6,13 @@
package_data={'invitations': ['templates/*.*']},
include_package_data=True,
zip_safe=False,
- version='1.9.2',
+ version='1.9.3',
description='Generic invitations app with support for django-allauth',
author='https://github.com/bee-keeper',
author_email='[email protected]',
url='https://github.com/bee-keeper/django-invitations.git',
download_url='https://github.com/'
- 'bee-keeper/django-invitations/tarball/1.9.2',
+ 'bee-keeper/django-invitations/tarball/1.9.3',
keywords=['django', 'invitation', 'django-allauth', 'invite'],
classifiers=[
'Development Status :: 4 - Beta',
@@ -21,10 +21,10 @@
'Environment :: Web Environment',
'Topic :: Internet',
'Programming Language :: Python',
- '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',
+ 'Programming Language :: Python :: 3.7',
+ 'Programming Language :: Python :: 3.8',
'Framework :: Django',
],
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/test_settings.py
new/django-invitations-1.9.3/test_settings.py
--- old/django-invitations-1.9.2/test_settings.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/test_settings.py 2020-02-08
10:01:02.000000000 +0100
@@ -40,15 +40,15 @@
"django.contrib.messages.context_processors.messages",
)
-MIDDLEWARE_CLASSES = (
+MIDDLEWARE = [
+ 'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'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',
-)
+]
EMAIL_BACKEND = 'django.core.mail.backends.locmem.EmailBackend'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/django-invitations-1.9.2/tests/allauth/test_allauth.py
new/django-invitations-1.9.3/tests/allauth/test_allauth.py
--- old/django-invitations-1.9.2/tests/allauth/test_allauth.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/tests/allauth/test_allauth.py 2020-02-08
10:01:02.000000000 +0100
@@ -50,6 +50,34 @@
invite = Invitation.objects.get(email='[email protected]')
assert invite.accepted is True
+ @pytest.mark.parametrize('method', [
+ ('get'),
+ ('post'),
+ ])
+ def test_invite_accepted_after_signup_with_altered_case_email(
+ self, settings, method, sent_invitation_by_user_a, user_a):
+ settings.INVITATIONS_ACCEPT_INVITE_AFTER_SIGNUP = True
+ client_with_method = getattr(self.client, method)
+ resp = client_with_method(
+ reverse('invitations:accept-invite',
+ kwargs={'key': sent_invitation_by_user_a.key}
+ ), follow=True)
+
+ invite = Invitation.objects.get(email='[email protected]')
+ assert invite.accepted is False
+ form = resp.context_data['form']
+ assert '[email protected]' == form.fields['email'].initial
+
+ resp = self.client.post(
+ reverse('account_signup'),
+ {'email': '[email protected]',
+ 'username': 'username',
+ 'password1': 'password',
+ 'password2': 'password'
+ })
+ invite = Invitation.objects.get(email='[email protected]')
+ assert invite.accepted is True
+
class TestAllAuthIntegration:
client = Client()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/tests/basic/tests.py
new/django-invitations-1.9.3/tests/basic/tests.py
--- old/django-invitations-1.9.2/tests/basic/tests.py 2018-02-03
08:43:57.000000000 +0100
+++ new/django-invitations-1.9.3/tests/basic/tests.py 2020-02-08
10:01:02.000000000 +0100
@@ -72,6 +72,7 @@
class TestInvitationsSendView:
client = Client()
+ @pytest.mark.django_db
def test_auth(self):
response = self.client.post(
reverse('invitations:send-invite'), {'email': '[email protected]'},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/django-invitations-1.9.2/tox.ini
new/django-invitations-1.9.3/tox.ini
--- old/django-invitations-1.9.2/tox.ini 2018-02-03 08:43:57.000000000
+0100
+++ new/django-invitations-1.9.3/tox.ini 2020-02-08 10:01:02.000000000
+0100
@@ -1,28 +1,33 @@
[tox]
-envlist = py{27,33,34,35,36}-django{19,1.10,1.11}-backend{Basic,Allauth}
+envlist =
+ py35-django{111}-backend{Basic}
+ py36-django{111}-backend{Basic}
+ py37-django{111}-backend{Basic}
+ py35-django22-backend{Basic,Allauth}
+ py36-django{22,3}-backend{Basic,Allauth}
+ py37-django{22,3}-backend{Basic,Allauth}
+ py38-django{22,3}-backend{Basic,Allauth}
+ flake8
[pytest]
python_files = tests.py test_*.py
[testenv]
+setenv =
+ PYTHONWARNINGS = all
deps =
- -rrequirements.txt
- django19: Django<1.10
- django110: Django<1.11
- django111: Django<2
- django20: Django<2.1
+ -r requirements.txt
+ django111: Django>=1.11.17,<2.0
+ django22: Django>=2.2.6
+ django3: Django>=3.0.1
backendAllauth: django-allauth
commands =
python -V
- backendBasic: py.test --cov-report term --cov=. tests/basic/
--ds=test_settings
- backendAllauth: py.test --cov-report term --cov=. tests/allauth
--ds=test_allauth_settings
+ backendBasic: py.test --cov-report term --cov=invitations
--ignore=tests/allauth/ --ds=test_settings tests
+ backendAllauth: py.test --cov-report term --cov=invitations
--ignore=tests/basic/ --ds=test_allauth_settings tests
coverage report
[testenv:flake8]
-basepython=python
+skip_install = True
deps=flake8
-commands=flake8 invitations
-
-[flake8]
-exclude = invitations/migrations/*
-
+commands=flake8 invitations --exclude=migrations