RDO tickets are now tracked in Jira https://issues.redhat.com/projects/RDO/issues/
Bug 1384058 - In Newton python-webob 1.6.1 is required as in upper-constraints.txt
Summary: In Newton python-webob 1.6.1 is required as in upper-constraints.txt
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: RDO
Classification: Community
Component: python-webob
Version: trunk
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: trunk
Assignee: RHOS Maint
QA Contact: Shai Revivo
URL:
Whiteboard:
Depends On:
Blocks: 1384064
TreeView+ depends on / blocked
 
Reported: 2016-10-12 12:47 UTC by Michal Pryc
Modified: 2017-06-19 20:33 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1384064 (view as bug list)
Environment:
Last Closed: 2017-06-19 20:33:40 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 385495 0 None None None 2016-10-12 14:20:55 UTC

Description Michal Pryc 2016-10-12 12:47:13 UTC
Description of problem:

python-webob 1.4.1 is available, however upper-constraints.txt specifies 1.6.1 as minimum for Newton:

https://github.com/openstack/requirements/blob/stable/newton/upper-constraints.txt#L30

Without 1.6.1 unit some unit tests are failing.

Comment 1 Michal Pryc 2016-10-12 12:51:50 UTC
Failed tests:

nova.tests.unit.api.openstack.placement.test_util.TestRequireContent.test_fail_no_content_type
----------------------------------------------------------------------------------------------
 
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "nova/tests/unit/api/openstack/placement/test_util.py", line 163, in test_fail_no_content_type
        self.handler, req)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 422, in assertRaises
        self.assertThat(our_callable, matcher)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 433, in assertThat
        mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 483, in _matchHelper
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 108, in match
        mismatch = self.exception_matcher.match(exc_info)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_higherorder.py", line 62, in match
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 414, in match
        reraise(*matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 101, in match
        result = matchee()
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 969, in __call__
        return self._callable_object(*self._args, **self._kwargs)
      File "nova/api/openstack/placement/util.py", line 115, in decorated_function
        json_formatter=json_error_formatter)
      File "/usr/lib/python2.7/site-packages/webob/exc.py", line 255, in __init__
        **kw)
      File "/usr/lib/python2.7/site-packages/webob/response.py", line 155, in __init__
        "Unexpected keyword: %s=%r" % (name, value))
    TypeError: Unexpected keyword: json_formatter=<function json_error_formatter at 0x781bf50>
   
 
nova.tests.unit.api.openstack.placement.test_handler.DispatchTest.test_no_match_with_map
----------------------------------------------------------------------------------------
 
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "nova/tests/unit/api/openstack/placement/test_handler.py", line 58, in test_no_match_with_map
        self.mapper)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 422, in assertRaises
        self.assertThat(our_callable, matcher)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 433, in assertThat
        mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 483, in _matchHelper
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 108, in match
        mismatch = self.exception_matcher.match(exc_info)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_higherorder.py", line 62, in match
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 414, in match
        reraise(*matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 101, in match
        result = matchee()
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 969, in __call__
        return self._callable_object(*self._args, **self._kwargs)
      File "nova/api/openstack/placement/handler.py", line 94, in dispatch
        json_formatter=util.json_error_formatter)
      File "/usr/lib/python2.7/site-packages/webob/exc.py", line 255, in __init__
        **kw)
      File "/usr/lib/python2.7/site-packages/webob/response.py", line 155, in __init__
        "Unexpected keyword: %s=%r" % (name, value))
    TypeError: Unexpected keyword: json_formatter=<function json_error_formatter at 0x8b9b050>
   
 
nova.tests.unit.api.openstack.placement.test_util.TestCheckAccept.test_fail_complex_no_match
--------------------------------------------------------------------------------------------
 
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "nova/tests/unit/api/openstack/placement/test_util.py", line 50, in test_fail_complex_no_match
        self.handler, req)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 422, in assertRaises
        self.assertThat(our_callable, matcher)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 433, in assertThat
        mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 483, in _matchHelper
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 108, in match
        mismatch = self.exception_matcher.match(exc_info)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_higherorder.py", line 62, in match
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 414, in match
        reraise(*matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 101, in match
        result = matchee()
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 969, in __call__
        return self._callable_object(*self._args, **self._kwargs)
      File "nova/api/openstack/placement/util.py", line 56, in decorated_function
        json_formatter=json_error_formatter)
      File "/usr/lib/python2.7/site-packages/webob/exc.py", line 255, in __init__
        **kw)
      File "/usr/lib/python2.7/site-packages/webob/response.py", line 155, in __init__
        "Unexpected keyword: %s=%r" % (name, value))
    TypeError: Unexpected keyword: json_formatter=<function json_error_formatter at 0x8b9b050>
   
 
nova.tests.unit.api.openstack.placement.test_util.TestRequireContent.test_fail_wrong_content_type
-------------------------------------------------------------------------------------------------
 
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "nova/tests/unit/api/openstack/placement/test_util.py", line 173, in test_fail_wrong_content_type
        self.handler, req)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 422, in assertRaises
        self.assertThat(our_callable, matcher)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 433, in assertThat
        mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 483, in _matchHelper
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 108, in match
        mismatch = self.exception_matcher.match(exc_info)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_higherorder.py", line 62, in match
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 414, in match
        reraise(*matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 101, in match
        result = matchee()
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 969, in __call__
        return self._callable_object(*self._args, **self._kwargs)
      File "nova/api/openstack/placement/util.py", line 115, in decorated_function
        json_formatter=json_error_formatter)
      File "/usr/lib/python2.7/site-packages/webob/exc.py", line 255, in __init__
        **kw)
      File "/usr/lib/python2.7/site-packages/webob/response.py", line 155, in __init__
        "Unexpected keyword: %s=%r" % (name, value))
    TypeError: Unexpected keyword: json_formatter=<function json_error_formatter at 0x8b9b050>
   
 
nova.tests.unit.api.openstack.placement.test_handler.DispatchTest.test_no_match_null_map
----------------------------------------------------------------------------------------
 
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "nova/tests/unit/api/openstack/placement/test_handler.py", line 51, in test_no_match_null_map
        self.mapper)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 422, in assertRaises
        self.assertThat(our_callable, matcher)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 433, in assertThat
        mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 483, in _matchHelper
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 108, in match
        mismatch = self.exception_matcher.match(exc_info)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_higherorder.py", line 62, in match
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 414, in match
        reraise(*matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 101, in match
        result = matchee()
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 969, in __call__
        return self._callable_object(*self._args, **self._kwargs)
      File "nova/api/openstack/placement/handler.py", line 94, in dispatch
        json_formatter=util.json_error_formatter)
      File "/usr/lib/python2.7/site-packages/webob/exc.py", line 255, in __init__
        **kw)
      File "/usr/lib/python2.7/site-packages/webob/response.py", line 155, in __init__
        "Unexpected keyword: %s=%r" % (name, value))
    TypeError: Unexpected keyword: json_formatter=<function json_error_formatter at 0x8ae9050>
   
 
nova.tests.unit.api.openstack.placement.test_util.TestCheckAccept.test_fail_no_match
------------------------------------------------------------------------------------
 
Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "nova/tests/unit/api/openstack/placement/test_util.py", line 40, in test_fail_no_match
        self.handler, req)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 422, in assertRaises
        self.assertThat(our_callable, matcher)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 433, in assertThat
        mismatch_error = self._matchHelper(matchee, matcher, message, verbose)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 483, in _matchHelper
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 108, in match
        mismatch = self.exception_matcher.match(exc_info)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_higherorder.py", line 62, in match
        mismatch = matcher.match(matchee)
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 414, in match
        reraise(*matchee)
      File "/usr/lib/python2.7/site-packages/testtools/matchers/_exception.py", line 101, in match
        result = matchee()
      File "/usr/lib/python2.7/site-packages/testtools/testcase.py", line 969, in __call__
        return self._callable_object(*self._args, **self._kwargs)
      File "nova/api/openstack/placement/util.py", line 56, in decorated_function
        json_formatter=json_error_formatter)
      File "/usr/lib/python2.7/site-packages/webob/exc.py", line 255, in __init__
        **kw)
      File "/usr/lib/python2.7/site-packages/webob/response.py", line 155, in __init__
        "Unexpected keyword: %s=%r" % (name, value))
    TypeError: Unexpected keyword: json_formatter=<function json_error_formatter at 0x8ae9050>

Comment 2 Alan Pevec 2016-10-12 13:49:55 UTC
global-requirements.txt is still WebOb>=1.2.3 even on master, if new version is required at runtime, it should have been bumped there.
Note that this will unlikely get accepted for stable/newton, so I think release note in Nova Newton would be good to explain for which feature update is required.

Comment 3 Lee Yarwood 2016-10-12 14:20:55 UTC
(In reply to Alan Pevec from comment #2)
> global-requirements.txt is still WebOb>=1.2.3 even on master, if new version
> is required at runtime, it should have been bumped there.
> Note that this will unlikely get accepted for stable/newton, so I think
> release note in Nova Newton would be good to explain for which feature
> update is required.

Speaking upstream the plan is to support both with a hack in stable/newton and a release note. The global-requirements.txt bump is also proposed for master.

Comment 4 Christopher Brown 2017-06-19 20:33:40 UTC
Upstream patch was merged so closing.


Note You need to log in before you can comment on or make changes to this bug.