dashboard failures with Django 4.2.4

Bug #2034952 reported by Corey Bryant
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Neutron VPNaaS dashboard
In Progress
Undecided
Unassigned
OpenStack Dashboard (Horizon)
Fix Released
Undecided
Unassigned
manila-ui
Fix Released
Medium
Corey Bryant

Bug Description

Running unit tests with Django==4.2.4 results in 124 errors. They seem to be limited to the same error:

== manila-ui ==

======================================================================
ERROR: test_migration_get_progress (manila_ui.tests.dashboards.admin.shares.test_forms.ManilaDashboardsAdminMigrationFormTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/corey/pkg/bobcat/upstream/manila-ui/manila_ui/tests/dashboards/admin/shares/test_forms.py", line 29, in setUp
    self.request = wsgi.WSGIRequest(FAKE_ENVIRON)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/django/core/handlers/wsgi.py", line 78, in __init__
    self._stream = LimitedStream(self.environ["wsgi.input"], content_length)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/django/core/handlers/wsgi.py", line 24, in __init__
    self._read = stream.read
AttributeError: 'str' object has no attribute 'read'

To reproduce:
git clone https://opendev.org/openstack/manila-ui; cd manila-ui
tox -e py3
.tox/py3/bin/pip3 install Django==4.2.4
tox -e py3

== horizon ==

I'm also hitting a similar error that seems to need fixing in horizon:

======================================================================
ERROR: test_view_1_None (manila_ui.tests.dashboards.project.user_messages.tests.UserMessagesViewTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/ddt.py", line 220, in wrapper
    return func(self, *args, **kwargs)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/manila_ui/tests/dashboards/project/user_messages/tests.py", line 44, in test_view
    self.assertNoMessages()
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/horizon/test/helpers.py", line 195, in assertNoMessages
    self.assertMessageCount(response, success=0, warn=0, info=0, error=0)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/horizon/test/helpers.py", line 203, in assertMessageCount
    temp_req = self.client.request(**{'wsgi.input': None})
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/django/test/client.py", line 886, in request
    response = self.handler(environ)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/django/test/client.py", line 168, in __call__
    request = WSGIRequest(environ)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/django/core/handlers/wsgi.py", line 79, in __init__
    self._stream = LimitedStream(self.environ["wsgi.input"], content_length)
  File "/home/corey/pkg/bobcat/upstream/manila-ui/.tox/py3/lib/python3.10/site-packages/django/core/handlers/wsgi.py", line 25, in __init__
    self._read = stream.read
AttributeError: 'NoneType' object has no attribute 'read'

== neutron-vpnaas-dashboard errors ==

======================================================================
FAIL: test_add_endpointgroup_get (neutron_vpnaas_dashboard.dashboards.project.vpn.tests.VPNTests.test_add_endpointgroup_get)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/root/neutron-vpnaas-dashboard/.tox/py3/lib/python3.11/site-packages/openstack_dashboard/test/helpers.py", line 134, in wrapped
    retval = function(inst, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/neutron-vpnaas-dashboard/neutron_vpnaas_dashboard/dashboards/project/vpn/tests.py", line 334, in test_add_endpointgroup_get
    self.assertQuerysetEqual(workflow.steps, expected_objs)
  File "/root/neutron-vpnaas-dashboard/.tox/py3/lib/python3.11/site-packages/django/test/testcases.py", line 1330, in assertQuerysetEqual
    return self.assertQuerySetEqual(*args, **kw)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/neutron-vpnaas-dashboard/.tox/py3/lib/python3.11/site-packages/django/test/testcases.py", line 1346, in assertQuerySetEqual
    return self.assertEqual(list(items), values, msg=msg)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Lists differ: [<AddEndpointGroupStep: addendpointgroupaction>] != ['<AddEndpointGroupStep: addendpointgroupaction>']

First differing element 0:
<AddEndpointGroupStep: addendpointgroupaction>
'<AddEndpointGroupStep: addendpointgroupaction>'

- [<AddEndpointGroupStep: addendpointgroupaction>]
+ ['<AddEndpointGroupStep: addendpointgroupaction>']
? + +

description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to manila-ui (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/manila-ui/+/894389

Changed in manila-ui:
status: New → In Progress
Changed in horizon:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to horizon (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/openstack/horizon/+/894390

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to manila-ui (master)

Reviewed: https://review.opendev.org/c/openstack/manila-ui/+/894389
Committed: https://opendev.org/openstack/manila-ui/commit/9c7912238dd3367d6a97b454a375390a0c548e3d
Submitter: "Zuul (22348)"
Branch: master

commit 9c7912238dd3367d6a97b454a375390a0c548e3d
Author: Corey Bryant <email address hidden>
Date: Fri Sep 8 14:22:49 2023 -0400

    Fix test failures with Django 4.x

    The wsgi.input environment variable is expected to be a stream
    instead of a string.

    Closes-Bug: #2034952
    Change-Id: I72e88dcf07c90051ddf1c9030a2466501482de5d

Changed in manila-ui:
status: In Progress → Fix Released
summary: - manila-ui failures with Django 4.2.4
+ dashboard failures with Django 4.2.4
description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron-vpnaas-dashboard (master)
Changed in neutron-vpnaas-dashboard:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/manila-ui 10.0.0.0rc1

This issue was fixed in the openstack/manila-ui 10.0.0.0rc1 release candidate.

Changed in manila-ui:
importance: Undecided → Medium
assignee: nobody → Corey Bryant (corey.bryant)
milestone: none → bobcat-rc1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to horizon (master)

Reviewed: https://review.opendev.org/c/openstack/horizon/+/894390
Committed: https://opendev.org/openstack/horizon/commit/b5b22dd183955e7dc551f0417ab352b7401271fe
Submitter: "Zuul (22348)"
Branch: master

commit b5b22dd183955e7dc551f0417ab352b7401271fe
Author: Corey Bryant <email address hidden>
Date: Fri Sep 8 14:25:00 2023 -0400

    Fix test failures with Django 4.x

    The wsgi.input environment variable is expected to be a stream.

    Closes-Bug: #2034952
    Change-Id: I602449245b30d5375251bd7138f538f28068a16a

Changed in horizon:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/horizon 23.4.0

This issue was fixed in the openstack/horizon 23.4.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.