[release-announce] horizon 18.0.0 (ussuri)

no-reply at openstack.org no-reply at openstack.org
Thu Jan 9 18:59:31 UTC 2020


We are thrilled to announce the release of:

horizon 18.0.0: OpenStack Dashboard

This release is part of the ussuri release series.

The source is available from:

    https://opendev.org/openstack/horizon

Download the package from:

    https://tarballs.openstack.org/horizon/

Please report issues through:

    https://bugs.launchpad.net/horizon/+bugs

For more details, please see below.

18.0.0
^^^^^^


New Features
************

* Added support to retrieve supported disk formats from glance, so
  you can adjust disk_formats only inside glance-api.conf. You still
  can use IMAGE_BACKEND_SETTINGS to adjust format naming.


Upgrade Notes
*************

* Django 1.11 support was dropped. Django 1.11 ends its extended
  support in April 2020 which is before Ussuri release. Considering
  this, horizon dropped Django 1.11 support and use Django 2.2 as
  default.

* Python 2.7 support has been dropped. Last release of horizon to
  support python 2.7 is OpenStack Train. The minimum version of Python
  now supported by horizon is Python 3.6.


Deprecation Notes
*****************

* "OPENSTACK_NOVA_EXTENSIONS_BLACKLIST" option is deprecated. All of
  the nova API extensions have been mainlined several releases ago and
  there is no potential performance issue in the nova API. This option
  is used only to toggle features in horizon and there seems no
  performance issues controlled by the option in horizon. Considering
  this situation, this option is deprecated now.

Changes in horizon 17.1.0..18.0.0
---------------------------------

79fc46a06 Cap Django again
6d149b0e8 Change Rebuild Instance Form select widget to normal style
a617bb67e Add a separate tox env for extracting and compiling translations
5a1ab92d0 Use enmerkar instead of django-babel
a2a3e8b6c Drop Django 1.11 support
c5dd1536a Prepare non-primary Django tests in zuul jobs
3e54ba096 Complete "Drop Python 2.7 Support" goal
9637d7337 Fix "prev" link pagination for instances with identical timestamps
31f7fc6bb Deprecate exceptions.check_message
155bf2278 Drop babel extractor definitions from babel config
ef4055e28 Fix use of ngettext in registry getName
04a3535e1 Add support to get disk_formats from glance
523fbce3d Deprecate OPENSTACK_NOVA_EXTENSIONS_BLACKLIST
a7b25f0cc Fix pep8 failures with hacking 2.0.0
161b4ae5d Fixes a series of bugs related to Floating IPs.
7a7558b05 Cap hacking version to <2
8fb86b2ad GUI hangs on creation of project in User creation form


Diffstat (except docs and test files)
-------------------------------------

.zuul.yaml                                         |  33 +++--
babel-django.cfg                                   |   3 -
babel-djangojs.cfg                                 |   7 -
horizon/defaults.py                                |   2 +-
horizon/exceptions.py                              |   2 +
.../conf/resource-type-registry.service.js         |  13 +-
horizon/test/settings.py                           |   4 +-
.../unit/management/commands/test_startdash.py     |  21 +--
.../unit/management/commands/test_startpanel.py    |  21 +--
horizon/test/unit/tables/test_tables.py            |   9 +-
.../test/unit/templatetags/test_templatetags.py    |   6 +-
horizon/workflows/views.py                         |   2 +-
lower-constraints.txt                              |   4 +-
openstack_dashboard/api/glance.py                  |  28 ++++
openstack_dashboard/api/nova.py                    |  30 +++--
openstack_dashboard/api/rest/config.py             |  10 ++
.../dashboards/admin/aggregates/workflows.py       |   2 +-
.../dashboards/admin/flavors/workflows.py          |   2 +-
openstack_dashboard/dashboards/admin/info/tabs.py  |   3 -
.../dashboard/identity/domains/domains.module.js   |   2 +-
.../dashboard/identity/groups/groups.module.js     |   2 +-
.../dashboard/identity/roles/roles.module.js       |   2 +-
.../dashboard/identity/users/users.module.js       |   2 +-
.../dashboards/project/floating_ips/forms.py       |   3 +-
.../dashboards/project/floating_ips/tables.py      |   2 +-
.../templates/floating_ips/_allocate.html          |  40 +++---
.../templates/floating_ips/allocate.html           |   2 +
.../dashboards/project/floating_ips/views.py       |   3 +-
.../dashboards/project/floating_ips/workflows.py   |  10 +-
.../dashboards/project/images/images/forms.py      |   3 +-
.../dashboards/project/instances/forms.py          |   6 +-
.../project/containers/containers.module.js        |   9 +-
.../dashboards/project/volumes/forms.py            |   2 +-
openstack_dashboard/defaults.py                    |   2 +-
openstack_dashboard/settings.py                    |  10 +-
.../static/app/core/flavors/flavors.module.js      |   2 +-
.../static/app/core/images/images.module.js        |   2 +-
.../static/app/core/keypairs/keypairs.module.js    |   2 +-
.../static/app/core/network_qos/qos.module.js      |   3 +-
.../app/core/server_groups/server-groups.module.js |   3 +-
.../static/app/core/trunks/trunks.module.js        |   2 +-
.../static/app/resources/resources.module.js       |  62 +++++----
openstack_dashboard/test/test_data/cinder_data.py  |   1 -
openstack_dashboard/test/test_data/glance_data.py  | 146 +++++++++++++++++++++
.../test/unit/api/rest/test_config.py              |   9 +-
openstack_dashboard/test/unit/api/test_glance.py   |  13 ++
openstack_dashboard/test/unit/api/test_nova.py     |  10 +-
openstack_dashboard/test/unit/usage/test_quotas.py | 106 +++++++++++++--
openstack_dashboard/usage/quotas.py                |  25 +++-
openstack_dashboard/usage/views.py                 |  33 +++--
playbooks/horizon-tox-django/pre.yaml              |  11 ++
playbooks/horizon-tox-django/run.yaml              |   7 +
...nova-extensions-blacklist-b6285bf02c4011f8.yaml |   9 ++
.../drop-django111-support-8803cfa3a6402dbe.yaml   |   6 +
.../drop-python27-support-160366ba52a1205b.yaml    |   6 +
.../glance_disk_formats-a13cb994a2d5c1fe.yaml      |   6 +
requirements.txt                                   |   6 +-
roles/ensure-django/defaults/main.yaml             |   3 +
roles/ensure-django/tasks/main.yaml                |   4 +
setup.cfg                                          |   5 +
test-requirements.txt                              |   6 +-
tox.ini                                            |  11 +-
74 files changed, 700 insertions(+), 256 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index 45fa08d33..a53d561d9 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -13,3 +13,2 @@ Babel!=2.4.0,>=2.3.4 # BSD
-Django<2,>=1.11;python_version<'3.0'  # BSD
-Django>=1.11;python_version>='3.0'  # BSD
-django-babel>=0.6.2 # BSD
+debtcollector>=1.2.0 # Apache-2.0
+Django>=2.2,<3.0 # BSD
@@ -18,0 +18 @@ django-pyscss>=2.0.2 # BSD License (2 clause)
+enmerkar>=0.7.1 # BSD
diff --git a/test-requirements.txt b/test-requirements.txt
index f0aef8be4..e26120707 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -10 +10 @@
-hacking>=1.1.0 # Apache-2.0
+hacking>=2.0.0 # Apache-2.0
@@ -12 +12 @@ hacking>=1.1.0 # Apache-2.0
-astroid==2.1.0;python_version>='3.0' # LGPLv2.1
+astroid==2.1.0 # LGPLv2.1
@@ -20 +20 @@ python-memcached>=1.59 # PSF
-pylint==2.2.2;python_version>='3.0' # GPLv2
+pylint==2.2.2 # GPLv2






More information about the Release-announce mailing list