[Bug 2039226] Re: cannot import name 'ugettext_lazy' from 'django.utils.translation'

OpenStack Infra 2039226 at bugs.launchpad.net
Tue Nov 21 14:14:57 UTC 2023


Reviewed:  https://review.opendev.org/c/openstack/charm-openstack-dashboard/+/901561
Committed: https://opendev.org/openstack/charm-openstack-dashboard/commit/dec3e0158f0fc7c484e3fc2ffd8fa31c166f9b58
Submitter: "Zuul (22348)"
Branch:    stable/2023.2

commit dec3e0158f0fc7c484e3fc2ffd8fa31c166f9b58
Author: Corey Bryant <corey.bryant at canonical.com>
Date:   Fri Oct 13 14:57:46 2023 -0400

    Add local_settings.py template for Bobcat
    
    This fixes issues found in testing with Django 4 in mantic.
    
    ugettext_lazy was deprecated in Django 3.0 and removed in
    Django 4.0. Switch to gettext_lazy.
    
    Switch to PyMemcacheCache backend as the Django MemcachedCache
    backend was removed in Django 4.1 in favor of the PyMemcacheCache
    or PyLibMCCache backend. This depends on a new openstack-dashboard
    package version that will be provided in an SRU for bug #2039225.
    
    Closes-Bug: #2039226
    Closes-Bug: #2039225
    Change-Id: Ia8e4f6f5f50d58268e4c6fa80c9f9c65a56a26ea
    (cherry picked from commit 16c5a026419e5c23ab4e7777cec8deb15c25ee6f)


** Changed in: charm-openstack-dashboard/2023.2
       Status: New => Fix Committed

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to Ubuntu Cloud Archive.
https://bugs.launchpad.net/bugs/2039226

Title:
  cannot import name 'ugettext_lazy' from 'django.utils.translation'

Status in OpenStack Dashboard Charm:
  Fix Committed
Status in OpenStack Dashboard Charm 2023.2 series:
  Fix Committed
Status in Ubuntu Cloud Archive:
  Fix Released
Status in Ubuntu Cloud Archive bobcat series:
  Fix Committed
Status in Magnum UI:
  New
Status in watcher-dashboard:
  New
Status in magnum-ui package in Ubuntu:
  Fix Released
Status in watcher-dashboard package in Ubuntu:
  Fix Released
Status in magnum-ui source package in Mantic:
  Fix Committed
Status in watcher-dashboard source package in Mantic:
  Fix Released

Bug description:
  On Ubuntu Mantic, the dashboard fails to load and the apache error log
  shows:

  [Thu Oct 12 20:33:48.383727 2023] [wsgi:error] [pid 52899:tid 140293563209408] ERROR:root:cannot import name 'ugettext_lazy' from 'django.utils.translation' (/usr/lib/python3/dist-packages/django/utils/translation/__init__.py)
  [Thu Oct 12 20:33:48.383757 2023] [wsgi:error] [pid 52899:tid 140293563209408] Traceback (most recent call last):
  [Thu Oct 12 20:33:48.383764 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "/usr/lib/python3/dist-packages/openstack_dashboard/utils/settings.py", line 58, in import_submodules
  [Thu Oct 12 20:33:48.383769 2023] [wsgi:error] [pid 52899:tid 140293563209408]     submodule = import_module(name)
  [Thu Oct 12 20:33:48.383773 2023] [wsgi:error] [pid 52899:tid 140293563209408]                 ^^^^^^^^^^^^^^^^^^^
  [Thu Oct 12 20:33:48.383777 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
  [Thu Oct 12 20:33:48.383787 2023] [wsgi:error] [pid 52899:tid 140293563209408]     return _bootstrap._gcd_import(name[level:], package, level)
  [Thu Oct 12 20:33:48.383791 2023] [wsgi:error] [pid 52899:tid 140293563209408]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  [Thu Oct 12 20:33:48.383795 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  [Thu Oct 12 20:33:48.383799 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  [Thu Oct 12 20:33:48.383803 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  [Thu Oct 12 20:33:48.383807 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  [Thu Oct 12 20:33:48.383811 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  [Thu Oct 12 20:33:48.383814 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  [Thu Oct 12 20:33:48.383818 2023] [wsgi:error] [pid 52899:tid 140293563209408]   File "/usr/lib/python3/dist-packages/openstack_dashboard/enabled/_1370_project_container_infra_panel_group.py", line 14, in <module>
  [Thu Oct 12 20:33:48.383823 2023] [wsgi:error] [pid 52899:tid 140293563209408]     from django.utils.translation import ugettext_lazy as _

  It looks like the charm template needs updating to work with Django
  4.x in Mantic.

  See upstream commit in horizon:

  commit cd7c1b5110fe1f64cd9dfbeb1072b37912d0efee
  Author: Akihiro Motoki <amotoki at gmail.com>
  Date:   Wed Jan 26 22:42:15 2022 +0900

      Address RemovedInDjango40Warning (2)

      django.utils.translation.ugettext(), ugettext_lazy(), ugettext_noop(),
      ungettext(), and ungettext_lazy() are deprecated in favor of the
      functions that they’re aliases for: django.utils.translation.gettext(),
      gettext_lazy(), gettext_noop(), ngettext(), and ngettext_lazy().

      https://docs.djangoproject.com/en/4.0/releases/3.0/#id3

      Change-Id: I77878f84e9d10cf6a136dada81eabf4e18676250

  
  == Ubuntu SRU Details ==

  [Impact]
  magnum dashboard can't be used with Django 4.x.

  [Test Case]
  Deploy openstack with magnum + magnum-ui. Ensure dashboard is functional and no errors in /var/log/apache/error.log.

  [Regression Potential]
  This is a pretty simple change to aliased functions and regression testing mentioned above should be good enough to ensure behavior is as expected. Currently the dashboard doesn't work on Mantic where Django is at 4.2.4. This package is backported to the Bobcat cloud archive on Jammy where Django is at 3.2.12 and will need testing there, however should be fine considering these functions were deprecated in Django 3.0.

To manage notifications about this bug go to:
https://bugs.launchpad.net/charm-openstack-dashboard/+bug/2039226/+subscriptions




More information about the Ubuntu-openstack-bugs mailing list