Skip to content

Commit

Permalink
Merge fa8da12 into 60a173f
Browse files Browse the repository at this point in the history
  • Loading branch information
yakky committed Apr 22, 2020
2 parents 60a173f + fa8da12 commit 999dbc8
Show file tree
Hide file tree
Showing 12 changed files with 167 additions and 80 deletions.
8 changes: 8 additions & 0 deletions .travis.yml
Expand Up @@ -2,6 +2,7 @@ language: python
dist: xenial

python:
- 3.8
- 3.7
- 3.6
- 3.5
Expand Down Expand Up @@ -32,6 +33,7 @@ install:
- "if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then export TOX_ENV=py35; fi"
- "if [[ $TRAVIS_PYTHON_VERSION == '3.6' ]]; then export TOX_ENV=py36; fi"
- "if [[ $TRAVIS_PYTHON_VERSION == '3.7' ]]; then export TOX_ENV=py37; fi"
- "if [[ $TRAVIS_PYTHON_VERSION == '3.8' ]]; then export TOX_ENV=py38; fi"
- "if [[ $TEST != '1' ]]; then export TOX_ENV=$TEST; fi"

# command to run tests, e.g. python setup.py test
Expand Down Expand Up @@ -61,6 +63,12 @@ matrix:
env: TEST='isort'
- python: 3.6
env: TEST='docs'
- python: 3.7
env: TEST='pep8'
- python: 3.7
env: TEST='isort'
- python: 3.7
env: TEST='docs'

notifications:
webhooks: https://ring.nephila.it/packages/hook/
5 changes: 5 additions & 0 deletions HISTORY.rst
Expand Up @@ -8,6 +8,11 @@ unreleased

* Nothing yet

1.2.2 (unreleased)
++++++++++++++++++

* Added support for Django 3.0

1.2.1 (2019-12-27)
++++++++++++++++++

Expand Down
14 changes: 7 additions & 7 deletions README.rst
Expand Up @@ -88,13 +88,13 @@ Supported versions

The current supported version matrix is the following:

+----------------+-------------+-------------+---------------+--------------+
| | Django 1.11 | Django 2.0 | Django 2.1 | Django 2.2 |
+----------------+-------------+-------------+---------------+--------------+
| django CMS 3.6 | Supported | Supported | Supported | Supported |
+----------------+-------------+-------------+---------------+--------------+
| django CMS 3.7 | Supported | Supported | Supported | Supported |
+----------------+-------------+-------------+---------------+--------------+
+----------------+-------------+-------------+---------------+--------------+--------------+
| | Django 1.11 | Django 2.0 | Django 2.1 | Django 2.2 | Django 3.0 |
+----------------+-------------+-------------+---------------+--------------+--------------+
| django CMS 3.6 | Supported | Supported | Supported | Supported | Supported |
+----------------+-------------+-------------+---------------+--------------+--------------+
| django CMS 3.7 | Supported | Supported | Supported | Supported | Supported |
+----------------+-------------+-------------+---------------+--------------+--------------+

See `version 1.1`_ for older Django / django CMS versions support

Expand Down
1 change: 1 addition & 0 deletions djangocms_installer/config/__init__.py
Expand Up @@ -232,6 +232,7 @@ def parse(args):
except RuntimeError as e: # pragma: no cover
sys.stderr.write(compat.unicode(e))
sys.exit(6)

if django_version is None: # pragma: no cover
sys.stderr.write(
'Please provide a Django supported version: {0}. Only Major.Minor '
Expand Down
64 changes: 38 additions & 26 deletions djangocms_installer/config/data.py
Expand Up @@ -11,15 +11,19 @@
'--permissions', '--bootstrap', '--templates',
'--starting-page']

DJANGOCMS_DEVELOP = 'https://github.com/divio/django-cms/archive/develop.zip?{bust}'.format(
DJANGOCMS_DEVELOP = 'https://github.com/yakky/django-cms/archive/develop.zip?{bust}'.format(
**bust
)
DJANGOCMS_RC = 'https://github.com/divio/django-cms/archive/release/3.7.x.zip?{bust}'.format(
**bust
)
DJANGOCMS_BETA = DJANGOCMS_RC
DJANGOCMS_36 = 'django-cms>=3.6,<3.7'
DJANGOCMS_37 = 'django-cms>=3.7,<3.8'

if sys.version_info > (3, 0):
DJANGOCMS_37 = 'django-cms>=3.7,<3.8'
else:
DJANGOCMS_37 = 'django-cms>=3.7,<3.7.2'

if sys.version_info >= (3, 5):
DJANGOCMS_SUPPORTED = ('3.6', '3.7', 'stable', 'lts', 'develop', 'rc')
Expand All @@ -34,8 +38,8 @@
DJANGO_DEVELOP = 'https://github.com/django/django/archive/master.zip?{bust}'.format(**bust)
DJANGO_BETA = 'https://github.com/django/django/archive/master.zip?{bust}'.format(**bust)
if sys.version_info >= (3, 5):
DJANGO_SUPPORTED = ('1.11', '2.0', '2.1', '2.2', 'stable', 'lts')
DJANGO_STABLE = '2.2'
DJANGO_SUPPORTED = ('1.11', '2.0', '2.1', '2.2', '3.0', 'stable', 'lts')
DJANGO_STABLE = '3.0'
DJANGO_LTS = '2.2'
else:
DJANGO_SUPPORTED = ('1.11', 'stable', 'lts')
Expand All @@ -59,10 +63,10 @@
}
VERSION_MATRIX = {
'3.6': ('1.11', '2.1'),
'3.7': ('1.11', '2.2'),
DJANGOCMS_BETA: ('1.11', '2.2'),
DJANGOCMS_RC: ('1.11', '2.2'),
DJANGOCMS_DEVELOP: ('1.11', '2.2'),
'3.7': ('1.11', '3.0'),
DJANGOCMS_BETA: ('1.11', '3.0'),
DJANGOCMS_RC: ('1.11', '3.0'),
DJANGOCMS_DEVELOP: ('1.11', '2.2', '3.0'),
}
PACKAGE_MATRIX = {
'3.6': DJANGOCMS_36,
Expand Down Expand Up @@ -100,6 +104,11 @@
'django-sekizai>=1.0',
'django-mptt>0.9',
],
'django-3.0': [
'django-classy-tags>=0.9',
'django-sekizai>=1.0',
'django-mptt>0.9',
],
'reversion-django-1.11': [
'django-reversion>=2.0,<2.1',
],
Expand All @@ -116,32 +125,35 @@
'django-treebeard>=4.0,<5.0',
],
'plugins-3.6': [
'djangocms-text-ckeditor>=3.7,<3.9',
'djangocms-link>=2.3,<2.6',
'djangocms-style>=2.2,<2.3',
'djangocms-googlemap>=1.3,<1.4',
'djangocms-snippet>=2.1,<2.3',
'djangocms-video>=2.1,<2.3',
'djangocms-file>=2.2,<3.0',
'djangocms-picture>=2.3,<2.4',
'djangocms-bootstrap4>=1.5,<1.6',
'djangocms-text-ckeditor>=3.7,<4.0',
'djangocms-link>=2.5,<2.7',
'djangocms-icon>=1.4,<1.6',
'djangocms-style>=2.2,<2.4',
'djangocms-googlemap>=1.3,<1.5',
'djangocms-snippet>=2.2,<2.4',
'djangocms-video>=2.1,<2.4',
'djangocms-file>=2.3,<2.5',
'djangocms-picture>=2.3,<2.5',
'djangocms-bootstrap4>=1.5,<1.7',
],
'plugins-3.7': [
'djangocms-text-ckeditor>=3.7,<3.9',
'djangocms-link>=2.5,<2.6',
'djangocms-style>=2.2,<2.3',
'djangocms-googlemap>=1.3,<1.4',
'djangocms-snippet>=2.2,<2.3',
'djangocms-video>=2.1,<2.3',
'djangocms-file>=2.3,<3.0',
'djangocms-picture>=2.3,<2.4',
'djangocms-bootstrap4>=1.5,<1.6',
'djangocms-text-ckeditor>=3.7,<4.0',
'djangocms-link>=2.5,<2.7',
'djangocms-icon>=1.4,<1.6',
'djangocms-style>=2.2,<2.4',
'djangocms-googlemap>=1.3,<1.5',
'djangocms-snippet>=2.2,<2.4',
'djangocms-video>=2.1,<2.4',
'djangocms-file>=2.3,<2.5',
'djangocms-picture>=2.3,<2.5',
'djangocms-bootstrap4>=1.5,<1.7',
],
'plugins-master': [
'https://github.com/divio/djangocms-text-ckeditor/archive/master.zip?{bust}'
''.format(**bust),
'https://github.com/divio/djangocms-file/archive/master.zip?{bust}'.format(**bust),
'https://github.com/divio/djangocms-link/archive/master.zip?{bust}'.format(**bust),
'https://github.com/divio/djangocms-icon/archive/master.zip?{bust}'.format(**bust),
'https://github.com/divio/djangocms-style/archive/master.zip?{bust}'.format(**bust),
'https://github.com/divio/djangocms-googlemap/archive/master.zip?{bust}'.format(**bust),
'https://github.com/divio/djangocms-snippet/archive/master.zip?{bust}'.format(**bust),
Expand Down
2 changes: 1 addition & 1 deletion djangocms_installer/install/__init__.py
Expand Up @@ -80,7 +80,7 @@ def check_install(config_data):


def requirements(req_file, pip_options='', is_file=False, verbose=False):
args = ['install']
args = ['install', '--disable-pip-version-check']
if not verbose:
args.append('-q')
if pip_options:
Expand Down
2 changes: 1 addition & 1 deletion djangocms_installer/utils.py
Expand Up @@ -76,7 +76,7 @@ def supported_versions(django, cms):
cms_version and django_version and
not (LooseVersion(VERSION_MATRIX[compat.unicode(cms_version)][0]) <=
LooseVersion(compat.unicode(django_version)) <=
LooseVersion(VERSION_MATRIX[compat.unicode(cms_version)][1]))
LooseVersion(VERSION_MATRIX[compat.unicode(cms_version)][-1]))
):
raise RuntimeError(
'Django and django CMS versions doesn\'t match: '
Expand Down
24 changes: 21 additions & 3 deletions tests/base.py
Expand Up @@ -117,7 +117,7 @@ def setUp(self):

def get_latest_django(latest_stable=False, latest_1_x=False):
"""
Get latest django version compatible with all the supported django CMS versions.
Get latest django version compatible with all the supported django CMS and python versions.
Takes into account arguments and python version.
"""
Expand All @@ -134,6 +134,24 @@ def get_latest_django(latest_stable=False, latest_1_x=False):
dj_ver = '2.0'
match = 'Django<2.1'
else:
dj_ver = '2.1'
match = 'Django<2.2'
dj_ver = '2.2'
match = 'Django<2.3'
return dj_ver, match


def get_latest_djangocms(latest_1_x=False):
"""
Get latest django CMS version compatible with all the supported django and python versions.
Takes into account arguments and python version.
"""
if latest_1_x:
dj_ver = '3.7'
match = 'django-cms<3.8'
elif sys.version_info < (3, 5):
dj_ver = '3.7'
match = 'django-cms<3.8'
else:
dj_ver = '3.7'
match = 'django-cms<3.8'
return dj_ver, match
30 changes: 15 additions & 15 deletions tests/config.py
Expand Up @@ -32,7 +32,7 @@ def test_default_config(self):
self.assertEqual(conf_data.project_name, 'example_prj')

self.assertEqual(conf_data.cms_version, '3.7')
self.assertEqual(conf_data.django_version, '2.2')
self.assertEqual(conf_data.django_version, '3.0')
self.assertEqual(conf_data.i18n, 'yes')
self.assertEqual(conf_data.reversion, 'yes')
self.assertEqual(conf_data.permissions, 'no')
Expand Down Expand Up @@ -401,11 +401,11 @@ def test_latest_version(self):
@unittest.skipIf(sys.version_info[0] < 3,
reason='django 2+ only supports python 3')
def test_supported_versions(self):
self.assertEqual(supported_versions('stable', 'stable'), ('2.2', '3.7'))
self.assertEqual(supported_versions('stable', '3.1.10'), ('2.2', None))
self.assertEqual(supported_versions('stable', 'rc'), ('2.2', DJANGOCMS_RC))
self.assertEqual(supported_versions('stable', 'beta'), ('2.2', DJANGOCMS_BETA))
self.assertEqual(supported_versions('stable', 'develop'), ('2.2', DJANGOCMS_DEVELOP))
self.assertEqual(supported_versions('stable', 'stable'), ('3.0', '3.7'))
self.assertEqual(supported_versions('stable', '3.1.10'), ('3.0', None))
self.assertEqual(supported_versions('stable', 'rc'), ('3.0', DJANGOCMS_RC))
self.assertEqual(supported_versions('stable', 'beta'), ('3.0', DJANGOCMS_BETA))
self.assertEqual(supported_versions('stable', 'develop'), ('3.0', DJANGOCMS_DEVELOP))
self.assertEqual(supported_versions('lts', 'rc'), ('2.2', DJANGOCMS_RC))
self.assertEqual(supported_versions('lts', 'lts'), ('2.2', '3.7'))

Expand Down Expand Up @@ -464,7 +464,7 @@ def test_requirements(self):
self.assertTrue(conf_data.requirements.find(config.data.DJANGOCMS_37) > -1)
self.assertTrue(conf_data.requirements.find('Django<2.0') > -1)
self.assertFalse(conf_data.requirements.find('django-reversion') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7,<3.9') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7,<4.0') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-admin-style>=1.4') > -1)
self.assertTrue(conf_data.requirements.find('django-filer') > -1)
self.assertTrue(conf_data.requirements.find('cmsplugin-filer') == -1)
Expand All @@ -483,11 +483,11 @@ def test_requirements(self):
'example_prj'])

self.assertTrue(conf_data.requirements.find(config.data.DJANGOCMS_37) > -1)
self.assertTrue(conf_data.requirements.find('Django<2.3') > -1)
self.assertTrue(conf_data.requirements.find('Django<3.1') > -1)
self.assertFalse(conf_data.requirements.find('django-reversion') > -1)
self.assertTrue(conf_data.requirements.find('cmsplugin-filer') == -1)
self.assertTrue(conf_data.requirements.find('djangocms-admin-style') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7,<3.9') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7,<4.0') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-bootstrap4') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-file') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-flash') == -1)
Expand Down Expand Up @@ -576,7 +576,7 @@ def test_requirements(self):
'example_prj'])

self.assertTrue(conf_data.requirements.find(config.data.DJANGOCMS_DEVELOP) > -1)
self.assertTrue(conf_data.requirements.find('Django<2.3') > -1)
self.assertTrue(conf_data.requirements.find('Django<3.1') > -1)
self.assertFalse(conf_data.requirements.find('django-reversion') > -1)
self.assertTrue(conf_data.requirements.find('https://github.com/divio/djangocms-link') > -1)
self.assertTrue(conf_data.requirements.find('https://github.com/divio/djangocms-style') > -1)
Expand All @@ -601,9 +601,9 @@ def test_requirements(self):
'example_prj'])

self.assertTrue(conf_data.requirements.find(config.data.DJANGOCMS_37) > -1)
self.assertTrue(conf_data.requirements.find('Django<2.3') > -1)
self.assertTrue(conf_data.requirements.find('Django<3.1') > -1)
self.assertFalse(conf_data.requirements.find('django-reversion') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7,<3.9') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-admin-style') > -1)
self.assertTrue(conf_data.requirements.find('pytz') > -1)

Expand All @@ -622,7 +622,7 @@ def test_requirements(self):
self.assertTrue(conf_data.requirements.find(config.data.DJANGOCMS_37) > -1)
self.assertTrue(conf_data.requirements.find('Django<2.3') > -1)
self.assertFalse(conf_data.requirements.find('django-reversion') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7,<3.9') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-text-ckeditor>=3.7') > -1)
self.assertTrue(conf_data.requirements.find('djangocms-admin-style') > -1)
self.assertTrue(conf_data.requirements.find('pytz') > -1)

Expand Down Expand Up @@ -737,7 +737,7 @@ def test_requirements(self):
'example_prj'])

self.assertTrue(conf_data.requirements.find(config.data.DJANGOCMS_37) > -1)
self.assertTrue(conf_data.requirements.find('Django<2.3') > -1)
self.assertTrue(conf_data.requirements.find('Django<3.1') > -1)

def test_bootstrap(self):
"""
Expand Down Expand Up @@ -987,7 +987,7 @@ def test_parse_config_file(self, *args):
('config-03.ini', None, (
('cms_version', '3.7'),
('i18n', 'no'),
('django_version', '2.2'),
('django_version', '3.0'),
)),
('config-04.ini', None, (('cms_version', '3.7'), ('use_timezone', 'no'))),
('config-05.ini', None, (('cms_version', '3.7'), ('timezone', 'Europe/London'))),
Expand Down

0 comments on commit 999dbc8

Please sign in to comment.