Django 2.0 support and fix lower-constraints tox env
Replace django.core.urlresolves with django.urls (In Django 2.0) The django.core.urlresolvers module is removed in favor of its new location, django.urls. It was deprecated in Django 1.10: https://docs.djangoproject.com/en/2.0/releases/1.10/#id3 Add py35dj20 job to test Django 2.0 integration. And update the lower-constraints. Co-Authored-By: Akihiro Motoki <amotoki@gmail.com> Co-Authored-By: Ellen Batbouta <ellen.batbouta@oracle.com> Change-Id: I3456162c934eb48ccf180d80b5cf7ff5614221c0
This commit is contained in:
parent
d7f5065b62
commit
87f1b5b658
|
@ -2,11 +2,17 @@
|
|||
check:
|
||||
jobs:
|
||||
- murano-dashboard-sanity-check
|
||||
|
||||
- openstack-tox-lower-constraints
|
||||
- horizon-openstack-tox-py35dj20:
|
||||
required-projects:
|
||||
openstack/horizon
|
||||
gate:
|
||||
jobs:
|
||||
- openstack-tox-lower-constraints
|
||||
- horizon-openstack-tox-py35dj20:
|
||||
required-projects:
|
||||
openstack/horizon
|
||||
|
||||
- job:
|
||||
name: murano-dashboard-sanity-check
|
||||
parent: legacy-dsvm-base
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
alabaster==0.7.10
|
||||
appdirs==1.4.3
|
||||
asn1crypto==0.24.0
|
||||
Babel==2.5.3
|
||||
Babel==2.3.4
|
||||
beautifulsoup4==4.6.0
|
||||
castellan==0.17.0
|
||||
castellan==0.16.0
|
||||
certifi==2018.1.18
|
||||
cffi==1.11.5
|
||||
chardet==3.0.4
|
||||
|
@ -11,17 +11,17 @@ cliff==2.11.0
|
|||
cmd2==0.8.1
|
||||
colorama==0.3.9
|
||||
contextlib2==0.5.5
|
||||
coverage==4.5.1
|
||||
coverage==4.0
|
||||
cryptography==2.1.4
|
||||
debtcollector==1.19.0
|
||||
decorator==4.2.1
|
||||
deprecation==2.0
|
||||
Django==1.11.11
|
||||
Django==1.11
|
||||
django-appconf==1.0.2
|
||||
django-babel==0.6.2
|
||||
django-compressor==2.2
|
||||
django-formtools==2.1
|
||||
django-nose==1.4.5
|
||||
django-compressor==2.0
|
||||
django-formtools==1.0
|
||||
django-nose==1.4.4
|
||||
django-pyscss==2.0.2
|
||||
docutils==0.14
|
||||
dogpile.cache==0.6.5
|
||||
|
@ -32,10 +32,10 @@ fixtures==3.0.0
|
|||
flake8==2.5.5
|
||||
futurist==1.6.0
|
||||
hacking==0.12.0
|
||||
horizon==13.0.0
|
||||
horizon==14.0.0.0b1
|
||||
idna==2.6
|
||||
imagesize==1.0.0
|
||||
iso8601==0.1.12
|
||||
iso8601==0.1.11
|
||||
Jinja2==2.10
|
||||
jmespath==0.9.3
|
||||
jsonpatch==1.21
|
||||
|
@ -47,17 +47,17 @@ MarkupSafe==1.0
|
|||
mccabe==0.2.1
|
||||
mock==2.0.0
|
||||
monotonic==1.4
|
||||
mox3==0.25.0
|
||||
mox3==0.20.0
|
||||
msgpack==0.5.6
|
||||
munch==2.2.0
|
||||
murano-pkg-check==0.3.0
|
||||
netaddr==0.7.19
|
||||
netifaces==0.10.6
|
||||
nodeenv==1.2.0
|
||||
nodeenv==0.9.4
|
||||
nose==1.3.7
|
||||
nosehtmloutput==0.0.5
|
||||
openstack.nose-plugin==0.11
|
||||
openstackdocstheme==1.20.0
|
||||
nosehtmloutput==0.0.3
|
||||
openstack.nose-plugin==0.7
|
||||
openstackdocstheme==1.18.1
|
||||
openstacksdk==0.12.0
|
||||
os-client-config==1.29.0
|
||||
os-service-types==1.2.0
|
||||
|
@ -66,13 +66,13 @@ oslo.concurrency==3.26.0
|
|||
oslo.config==5.2.0
|
||||
oslo.context==2.20.0
|
||||
oslo.i18n==3.20.0
|
||||
oslo.log==3.37.0
|
||||
oslo.log==3.36.0
|
||||
oslo.policy==1.34.0
|
||||
oslo.serialization==2.25.0
|
||||
oslo.utils==3.36.0
|
||||
osprofiler==2.0.0
|
||||
packaging==17.1
|
||||
pbr==3.1.1
|
||||
pbr==2.0.0
|
||||
pep8==1.5.7
|
||||
Pint==0.8.1
|
||||
ply==3.11
|
||||
|
@ -92,28 +92,28 @@ python-dateutil==2.7.0
|
|||
python-glanceclient==2.9.1
|
||||
python-keystoneclient==3.15.0
|
||||
python-mimeparse==1.6.0
|
||||
python-muranoclient==1.0.1
|
||||
python-muranoclient==0.8.2
|
||||
python-neutronclient==6.7.0
|
||||
python-novaclient==10.1.0
|
||||
python-swiftclient==3.5.0
|
||||
pytz==2018.3
|
||||
pytz==2013.6
|
||||
PyYAML==3.12
|
||||
rcssmin==1.0.6
|
||||
reno==2.7.0
|
||||
reno==2.5.0
|
||||
requests==2.18.4
|
||||
requestsexceptions==1.4.0
|
||||
rfc3986==1.1.0
|
||||
rjsmin==1.0.12
|
||||
selenium==3.11.0
|
||||
semantic-version==2.6.0
|
||||
selenium==2.50.1
|
||||
semantic-version==2.3.1
|
||||
simplejson==3.13.2
|
||||
six==1.11.0
|
||||
six==1.10.0
|
||||
snowballstemmer==1.2.1
|
||||
Sphinx==1.6.5
|
||||
Sphinx==1.6.2
|
||||
sphinxcontrib-websupport==1.0.1
|
||||
stevedore==1.28.0
|
||||
termcolor==1.1.0
|
||||
testtools==2.3.0
|
||||
testtools==2.2.0
|
||||
traceback2==1.4.0
|
||||
unittest2==1.1.0
|
||||
urllib3==1.22
|
||||
|
|
|
@ -25,7 +25,7 @@ from django.conf import settings
|
|||
from django.contrib import auth
|
||||
from django.contrib.auth import decorators as auth_dec
|
||||
from django.contrib.staticfiles.templatetags.staticfiles import static
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.urls import reverse
|
||||
# django.contrib.formtools migration to django 1.8
|
||||
# https://docs.djangoproject.com/en/1.8/ref/contrib/formtools/
|
||||
try:
|
||||
|
@ -407,7 +407,7 @@ class Wizard(generic_views.PageTitleMixin, views.ModalFormMixin, LazyWizard):
|
|||
messages.success(self.request, message)
|
||||
|
||||
if do_redirect:
|
||||
return http.HttpResponseRedirect(env_url)
|
||||
return http.HttpResponseRedirect(bytes(env_url))
|
||||
else:
|
||||
srv_id = getattr(srv, '?')['id']
|
||||
return self.create_hacked_response(
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
# under the License.
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.utils.translation import ungettext_lazy
|
||||
from horizon import exceptions
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
import itertools
|
||||
|
||||
from django.core.urlresolvers import reverse_lazy
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from horizon.forms import views
|
||||
from horizon import tables as horizon_tables
|
||||
|
|
|
@ -17,11 +17,11 @@ import copy
|
|||
import json
|
||||
import re
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.core import validators as django_validator
|
||||
from django import forms
|
||||
from django.forms import widgets
|
||||
from django.template import defaultfilters
|
||||
from django.urls import reverse
|
||||
from django.utils.encoding import force_text
|
||||
from django.utils import html
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
|
|
@ -14,11 +14,10 @@
|
|||
|
||||
import json
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django import http as django_http
|
||||
from django import shortcuts
|
||||
from django import template
|
||||
from django.template import defaultfilters
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.utils.translation import ungettext_lazy
|
||||
|
||||
|
@ -378,9 +377,9 @@ class DeployThisEnvironment(tables.Action):
|
|||
exceptions.handle(
|
||||
request, msg,
|
||||
redirect=reverse('horizon:app-catalog:environments:index'))
|
||||
return shortcuts.redirect(
|
||||
reverse('horizon:app-catalog:environments:services',
|
||||
args=(environment_id,)))
|
||||
redirect_to = reverse('horizon:app-catalog:environments:services',
|
||||
args=(environment_id,))
|
||||
return django_http.HttpResponseRedirect(bytes(redirect_to))
|
||||
|
||||
|
||||
class ShowEnvironmentServices(tables.LinkAction):
|
||||
|
|
|
@ -16,7 +16,7 @@ import collections
|
|||
import json
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from heat_dashboard.api import heat as heat_api
|
||||
|
|
|
@ -15,8 +15,8 @@
|
|||
import json
|
||||
|
||||
from django.contrib.staticfiles.templatetags.staticfiles import static
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.template import loader
|
||||
from django.urls import reverse
|
||||
|
||||
import six
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
import base64
|
||||
import json
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.core.urlresolvers import reverse_lazy
|
||||
from django import http
|
||||
from django.urls import reverse
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.views import generic
|
||||
from horizon import conf
|
||||
|
|
|
@ -15,8 +15,8 @@
|
|||
import json
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.urlresolvers import reverse
|
||||
from django import forms
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from horizon import exceptions
|
||||
from horizon import forms as horizon_forms
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.utils.translation import ungettext_lazy
|
||||
from horizon import exceptions
|
||||
|
|
|
@ -14,8 +14,8 @@
|
|||
|
||||
import itertools
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.core.urlresolvers import reverse_lazy
|
||||
from django.urls import reverse
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from horizon import exceptions
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
import json
|
||||
import sys
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.core import validators
|
||||
from django import forms
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from horizon import exceptions
|
||||
from horizon import forms as horizon_forms
|
||||
|
|
|
@ -12,8 +12,8 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.template import defaultfilters
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.utils.translation import ungettext_lazy
|
||||
from horizon import exceptions
|
||||
|
|
|
@ -16,9 +16,9 @@ import json
|
|||
import sys
|
||||
|
||||
from django.core.files import storage
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.core.urlresolvers import reverse_lazy
|
||||
from django import http
|
||||
from django.urls import reverse
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
# django.contrib.formtools migration to django 1.8
|
||||
# https://docs.djangoproject.com/en/1.8/ref/contrib/formtools/
|
||||
|
@ -309,7 +309,7 @@ class ImportBundleWizard(horizon_views.PageTitleMixin, views.ModalFormMixin,
|
|||
msg = _('Bundle successfully imported.')
|
||||
LOG.info(msg)
|
||||
messages.success(self.request, msg)
|
||||
return http.HttpResponseRedirect(redirect)
|
||||
return http.HttpResponseRedirect(bytes(redirect))
|
||||
|
||||
|
||||
class ImportPackageWizard(horizon_views.PageTitleMixin, views.ModalFormMixin,
|
||||
|
@ -408,7 +408,7 @@ class ImportPackageWizard(horizon_views.PageTitleMixin, views.ModalFormMixin,
|
|||
msg = _('Package parameters successfully updated.')
|
||||
LOG.info(msg)
|
||||
messages.success(self.request, msg)
|
||||
return http.HttpResponseRedirect(redirect)
|
||||
return http.HttpResponseRedirect(bytes(redirect))
|
||||
|
||||
def _handle_exception(self, original_e):
|
||||
exc_info = sys.exc_info()
|
||||
|
|
|
@ -4,7 +4,8 @@
|
|||
pbr!=2.1.0,>=2.0.0 # Apache-2.0
|
||||
|
||||
beautifulsoup4>=4.6.0 # MIT
|
||||
Django<2.0,>=1.11 # BSD
|
||||
Django<2;python_version<'3.0' # BSD
|
||||
Django<2.1;python_version>='3.0' # BSD
|
||||
django-formtools>=1.0 # BSD
|
||||
iso8601>=0.1.11 # MIT
|
||||
six>=1.10.0 # MIT
|
||||
|
|
Loading…
Reference in New Issue