commit python-sushy for openSUSE:Factory
Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-sushy for openSUSE:Factory checked in at 2024-06-05 17:42:12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-sushy (Old) and /work/SRC/openSUSE:Factory/.python-sushy.new.24587 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python-sushy" Wed Jun 5 17:42:12 2024 rev:17 rq:1178612 version:5.1.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-sushy/python-sushy.changes 2024-05-10 12:07:12.794016802 +0200 +++ /work/SRC/openSUSE:Factory/.python-sushy.new.24587/python-sushy.changes 2024-06-05 17:42:51.875120186 +0200 @@ -1,0 +2,12 @@ +Tue Jun 4 20:09:08 UTC 2024 - cloud-devel@suse.de + +- update to version 5.1.0 + - Update master for stable/2024.1 + - refectoring: Fix parameter and annotation mismatch + - reno: Update master for unmaintained/victoria + - reno: Update master for unmaintained/zed + - Handle NotAcceptable when Accept-Encoding: identity is not allowed + - reno: Update master for unmaintained/wallaby + - reno: Update master for unmaintained/xena + +------------------------------------------------------------------- Old: ---- sushy-5.0.0.tar.gz New: ---- sushy-5.1.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-sushy.spec ++++++ --- /var/tmp/diff_new_pack.uxDUPU/_old 2024-06-05 17:42:53.875193025 +0200 +++ /var/tmp/diff_new_pack.uxDUPU/_new 2024-06-05 17:42:53.887193461 +0200 @@ -17,13 +17,13 @@ Name: python-sushy -Version: 5.0.0 +Version: 5.1.0 Release: 0 Summary: Python library to communicate with Redfish based systems License: Apache-2.0 Group: Development/Languages/Python URL: https://docs.openstack.org/sushy -Source0: https://files.pythonhosted.org/packages/source/s/sushy/sushy-5.0.0.tar.gz +Source0: https://files.pythonhosted.org/packages/source/s/sushy/sushy-5.1.0.tar.gz BuildRequires: openstack-macros BuildRequires: python3-oslotest BuildRequires: python3-pbr >= 2.0.0 @@ -62,7 +62,7 @@ This package contains the documentation. %prep -%autosetup -p1 -n sushy-5.0.0 +%autosetup -p1 -n sushy-5.1.0 %py_req_cleanup %build ++++++ sushy-5.0.0.tar.gz -> sushy-5.1.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/AUTHORS new/sushy-5.1.0/AUTHORS --- old/sushy-5.0.0/AUTHORS 2024-02-22 16:01:13.000000000 +0100 +++ new/sushy-5.1.0/AUTHORS 2024-05-23 09:55:12.000000000 +0200 @@ -59,6 +59,7 @@ Varsha <varsha.verma.eee15@itbhu.ac.in> Vu Cong Tuan <tuanvc@vn.fujitsu.com> Winicius Silva <winiciusab12@gmail.com> +Youngjun <yj.yoo@okestro.com> Yusef Shaban <yshaban@godaddy.com> ajya <mail@clusums.eu> ankit <ankit.dhn31@gmail.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/ChangeLog new/sushy-5.1.0/ChangeLog --- old/sushy-5.0.0/ChangeLog 2024-02-22 16:01:13.000000000 +0100 +++ new/sushy-5.1.0/ChangeLog 2024-05-23 09:55:12.000000000 +0200 @@ -1,6 +1,17 @@ CHANGES ======= +5.1.0 +----- + +* reno: Update master for unmaintained/zed +* Handle NotAcceptable when Accept-Encoding: identity is not allowed +* reno: Update master for unmaintained/xena +* reno: Update master for unmaintained/wallaby +* reno: Update master for unmaintained/victoria +* refectoring: Fix parameter and annotation mismatch +* Update master for stable/2024.1 + 5.0.0 ----- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/PKG-INFO new/sushy-5.1.0/PKG-INFO --- old/sushy-5.0.0/PKG-INFO 2024-02-22 16:01:13.680539100 +0100 +++ new/sushy-5.1.0/PKG-INFO 2024-05-23 09:55:13.139894000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: sushy -Version: 5.0.0 +Version: 5.1.0 Summary: Sushy is a small Python library to communicate with Redfish based systems Home-page: https://docs.openstack.org/sushy/latest/ Author: OpenStack diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/notes/accept-encoding-4646ea43998f80bd.yaml new/sushy-5.1.0/releasenotes/notes/accept-encoding-4646ea43998f80bd.yaml --- old/sushy-5.0.0/releasenotes/notes/accept-encoding-4646ea43998f80bd.yaml 1970-01-01 01:00:00.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/notes/accept-encoding-4646ea43998f80bd.yaml 2024-05-23 09:54:08.000000000 +0200 @@ -0,0 +1,5 @@ +--- +fixes: + - | + Adds a work-around for cases where ``Accept-Encoding: identity`` is not + accepted. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/source/2024.1.rst new/sushy-5.1.0/releasenotes/source/2024.1.rst --- old/sushy-5.0.0/releasenotes/source/2024.1.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/source/2024.1.rst 2024-05-23 09:54:08.000000000 +0200 @@ -0,0 +1,6 @@ +=========================== +2024.1 Series Release Notes +=========================== + +.. release-notes:: + :branch: stable/2024.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/source/index.rst new/sushy-5.1.0/releasenotes/source/index.rst --- old/sushy-5.0.0/releasenotes/source/index.rst 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/source/index.rst 2024-05-23 09:54:08.000000000 +0200 @@ -6,6 +6,7 @@ :maxdepth: 1 unreleased + 2024.1 2023.2 2023.1 zed diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/source/victoria.rst new/sushy-5.1.0/releasenotes/source/victoria.rst --- old/sushy-5.0.0/releasenotes/source/victoria.rst 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/source/victoria.rst 2024-05-23 09:54:08.000000000 +0200 @@ -3,4 +3,4 @@ ============================================= .. release-notes:: - :branch: stable/victoria + :branch: unmaintained/victoria diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/source/wallaby.rst new/sushy-5.1.0/releasenotes/source/wallaby.rst --- old/sushy-5.0.0/releasenotes/source/wallaby.rst 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/source/wallaby.rst 2024-05-23 09:54:08.000000000 +0200 @@ -3,4 +3,4 @@ ============================================ .. release-notes:: - :branch: stable/wallaby + :branch: unmaintained/wallaby diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/source/xena.rst new/sushy-5.1.0/releasenotes/source/xena.rst --- old/sushy-5.0.0/releasenotes/source/xena.rst 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/source/xena.rst 2024-05-23 09:54:08.000000000 +0200 @@ -3,4 +3,4 @@ ========================================== .. release-notes:: - :branch: stable/xena + :branch: unmaintained/xena diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/releasenotes/source/zed.rst new/sushy-5.1.0/releasenotes/source/zed.rst --- old/sushy-5.0.0/releasenotes/source/zed.rst 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/releasenotes/source/zed.rst 2024-05-23 09:54:08.000000000 +0200 @@ -3,4 +3,4 @@ ======================================== .. release-notes:: - :branch: stable/zed + :branch: unmaintained/zed diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy/connector.py new/sushy-5.1.0/sushy/connector.py --- old/sushy-5.0.0/sushy/connector.py 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/sushy/connector.py 2024-05-23 09:54:08.000000000 +0200 @@ -51,15 +51,6 @@ # By default, we ask HTTP server to shut down HTTP connection we've # just used. self._session.headers['Connection'] = 'close' - # NOTE(TheJulia): Depending on the BMC, offering compression as an - # acceptable response changes the ETag behavior to offering an - # automatic "weak" ETag response, which is appropriate because the - # body content *may* not be a byte for byte match given compression. - # Overall, the value of compression is less than the value of concise - # interaction with the BMC. Setting to identity basically means - # "without modification or compression". By default, python-requests - # indicates responses can be compressed. - self._session.headers['Accept-Encoding'] = 'identity' if username or password: LOG.warning('Passing username and password to Connector is ' @@ -115,7 +106,8 @@ PUT, PATCH, etc... :param path: The sub-URI or absolute URL path to the resource. :param data: Optional JSON data. - :param headers: Optional dictionary of headers. + :param headers: Optional dictionary of headers. Use None value + to remove a default header. :param blocking: Whether to block for asynchronous operations. :param timeout: Max time in seconds to wait for blocking async call or for requests library to connect and read. If a custom @@ -138,12 +130,25 @@ url = path if urlparse.urlparse(path).netloc else urlparse.urljoin( self._url, path) - headers = headers or {} + headers = (headers or {}).copy() lc_headers = [k.lower() for k in headers] if data is not None and 'content-type' not in lc_headers: headers['Content-Type'] = 'application/json' if 'odata-version' not in lc_headers: headers['OData-Version'] = '4.0' + # NOTE(TheJulia): Depending on the BMC, offering compression as an + # acceptable response changes the ETag behavior to offering an + # automatic "weak" ETag response, which is appropriate because the + # body content *may* not be a byte for byte match given compression. + # Overall, the value of compression is less than the value of concise + # interaction with the BMC. Setting to identity basically means + # "without modification or compression". By default, python-requests + # indicates responses can be compressed. + if 'accept-encoding' not in lc_headers: + headers['Accept-Encoding'] = 'identity' + # Allow removing default headers + headers = {k: v for k, v in headers.items() if v is not None} + # TODO(lucasagomes): We should mask the data to remove sensitive # information LOG.debug('HTTP request: %(method)s %(url)s; headers: %(headers)s; ' @@ -264,6 +269,21 @@ return self._op( method, path, data=data, headers=headers, blocking=blocking, timeout=timeout, + server_side_retries_left=server_side_retries_left, + **extra_session_req_kwargs) + else: + raise + except exceptions.NotAcceptableError as e: + # NOTE(dtantsur): some HPE Gen 10 Plus machines do not allow + # identity encoding when fetching registries. + if (method.lower() == 'get' + and headers.get('Accept-Encoding') == 'identity'): + LOG.warning('Server has indicated a NotAcceptable for %s, ' + 'retrying without identity encoding', e) + headers = dict(headers, **{'Accept-Encoding': None}) + return self._op( + method, path, data=data, headers=headers, + blocking=blocking, timeout=timeout, server_side_retries_left=server_side_retries_left, **extra_session_req_kwargs) else: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy/exceptions.py new/sushy-5.1.0/sushy/exceptions.py --- old/sushy-5.0.0/sushy/exceptions.py 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/sushy/exceptions.py 2024-05-23 09:54:08.000000000 +0200 @@ -160,6 +160,10 @@ pass +class NotAcceptableError(HTTPError): + pass + + class MissingXAuthToken(HTTPError): message = ('No X-Auth-Token returned from remote host when ' 'attempting to establish a session. Error: %(error)s') @@ -176,6 +180,8 @@ elif response.status_code in (http_client.UNAUTHORIZED, http_client.FORBIDDEN): raise AccessError(method, url, response) + elif response.status_code == http_client.NOT_ACCEPTABLE: + raise NotAcceptableError(method, url, response) elif response.status_code >= http_client.INTERNAL_SERVER_ERROR: raise ServerSideError(method, url, response) else: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy/resources/registry/message_registry.py new/sushy-5.1.0/sushy/resources/registry/message_registry.py --- old/sushy-5.0.0/sushy/resources/registry/message_registry.py 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/sushy/resources/registry/message_registry.py 2024-05-23 09:54:08.000000000 +0200 @@ -93,7 +93,7 @@ Check only registries that support messages. - :param registries: dict of Message Registries + :param message_registries: dict of Message Registries :param message_field: settings.MessageListField to parse :returns: parsed settings.MessageListField with missing attributes filled diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy/tests/unit/test_connector.py new/sushy-5.1.0/sushy/tests/unit/test_connector.py --- old/sushy-5.0.0/sushy/tests/unit/test_connector.py 2024-02-22 16:00:44.000000000 +0100 +++ new/sushy-5.1.0/sushy/tests/unit/test_connector.py 2024-05-23 09:54:08.000000000 +0200 @@ -168,18 +168,25 @@ server_side_retries=10, server_side_retries_delay=3) self.conn._auth = mock_auth self.data = {'fake': 'data'} - self.headers = {'X-Fake': 'header'} + self.headers = {'Accept-Encoding': 'identity', 'OData-Version': '4.0'} self.session = mock.Mock(spec=requests.Session) self.conn._session = self.session self.request = self.session.request self.request.return_value.status_code = http_client.OK def test_ok_get(self): - self.conn._op('GET', path='fake/path', headers=self.headers) + self.conn._op('GET', path='fake/path') self.request.assert_called_once_with( 'GET', 'http://foo.bar:1234/fake/path', headers=self.headers, json=None, verify=True, timeout=60) + def test_ok_get_with_headers(self): + self.conn._op('GET', path='fake/path', headers={'answer': '42'}) + self.request.assert_called_once_with( + 'GET', 'http://foo.bar:1234/fake/path', + headers=dict(self.headers, answer='42'), + json=None, verify=True, timeout=60) + def test_response_callback(self): mock_response_callback = mock.MagicMock() self.conn._response_callback = mock_response_callback @@ -188,34 +195,42 @@ self.assertEqual(1, mock_response_callback.call_count) def test_ok_get_url_redirect_false(self): - self.conn._op('GET', path='fake/path', headers=self.headers, - allow_redirects=False) + self.conn._op('GET', path='fake/path', allow_redirects=False) self.request.assert_called_once_with( 'GET', 'http://foo.bar:1234/fake/path', headers=self.headers, json=None, allow_redirects=False, verify=True, timeout=60) def test_ok_post(self): + self.conn._op('POST', path='fake/path', data=self.data.copy()) + self.request.assert_called_once_with( + 'POST', 'http://foo.bar:1234/fake/path', + json=self.data, + headers=dict(self.headers, **{'Content-Type': 'application/json'}), + verify=True, timeout=60) + + def test_ok_post_with_headers(self): self.conn._op('POST', path='fake/path', data=self.data.copy(), - headers=self.headers) + headers={'answer': 42}) self.request.assert_called_once_with( 'POST', 'http://foo.bar:1234/fake/path', - json=self.data, headers=self.headers, verify=True, timeout=60) + json=self.data, + headers=dict(self.headers, **{'Content-Type': 'application/json', + 'answer': 42}), + verify=True, timeout=60) def test_ok_put(self): - self.conn._op('PUT', path='fake/path', data=self.data.copy(), - headers=self.headers) + self.conn._op('PUT', path='fake/path', data=self.data.copy()) self.request.assert_called_once_with( 'PUT', 'http://foo.bar:1234/fake/path', - json=self.data, headers=self.headers, verify=True, timeout=60) + headers=dict(self.headers, **{'Content-Type': 'application/json'}), + json=self.data, verify=True, timeout=60) def test_ok_delete(self): - expected_headers = self.headers.copy() - expected_headers['OData-Version'] = '4.0' - self.conn._op('DELETE', path='fake/path', headers=self.headers.copy()) + self.conn._op('DELETE', path='fake/path') self.request.assert_called_once_with( 'DELETE', 'http://foo.bar:1234/fake/path', - headers=expected_headers, json=None, verify=True, timeout=60) + headers=self.headers, json=None, verify=True, timeout=60) def test_ok_post_with_session(self): self.conn._session.headers = {} @@ -242,22 +257,23 @@ 'GET', 'http://foo.bar:1234' + path, headers=expected_headers, json=None, verify=True, timeout=60) - def test_odata_version_header_redfish_no_headers(self): - path = '/redfish/v1/bar' - expected_headers = {'OData-Version': '4.0'} - self.conn._op('GET', path=path) + def test_odata_version_header_redfish_existing_header(self): + path = '/redfish/v1/foo' + headers = {'OData-Version': '3.0'} + expected_headers = dict(self.headers, **headers) + self.conn._op('GET', path=path, headers=headers) self.request.assert_called_once_with( 'GET', 'http://foo.bar:1234' + path, headers=expected_headers, json=None, verify=True, timeout=60) - def test_odata_version_header_redfish_existing_header(self): + def test_remove_header_accept_encoding(self): path = '/redfish/v1/foo' - headers = {'OData-Version': '3.0'} - expected_headers = dict(headers) + headers = {'Accept-Encoding': None} + self.headers.pop('Accept-Encoding') self.conn._op('GET', path=path, headers=headers) self.request.assert_called_once_with( 'GET', 'http://foo.bar:1234' + path, - headers=expected_headers, json=None, verify=True, timeout=60) + headers=self.headers, json=None, verify=True, timeout=60) def test_timed_out_session_unable_to_create_session(self): self.conn._auth.can_refresh_session.return_value = False @@ -522,6 +538,29 @@ self.assertEqual(0, mock_sleep.call_count) self.assertEqual(1, self.request.call_count) + def test_op_retry_without_identity(self): + self.request.side_effect = [ + mock.Mock(status_code=http_client.NOT_ACCEPTABLE), + mock.Mock(status_code=http_client.OK), + ] + self.conn._op('GET', 'http://foo.bar') + + self.assertEqual(2, self.request.call_count) + headers_no_accept = self.headers.copy() + headers_no_accept.pop('Accept-Encoding') + self.request.assert_has_calls([ + mock.call('GET', 'http://foo.bar', headers=self.headers, + json=None, verify=True, timeout=60), + mock.call('GET', 'http://foo.bar', headers=headers_no_accept, + json=None, verify=True, timeout=60), + ]) + + def test_op_retry_without_identity_fails(self): + self.request.return_value.status_code = http_client.NOT_ACCEPTABLE + self.assertRaises(exceptions.NotAcceptableError, self.conn._op, + 'GET', 'http://foo.bar') + self.assertEqual(2, self.request.call_count) + def test_access_error(self): self.conn._auth = None @@ -715,8 +754,7 @@ '/redfish/v1/Systems/1', data={'Boot': {'BootSourceOverrideTarget': 'Cd', 'BootSourceOverrideEnabled': 'Once'}}, - headers={'X-Fake': 'header', - 'If-Match': '"3d7b8a7360bf2941d"'}, + headers=dict(self.headers, **{'If-Match': '"3d7b8a7360bf2941d"'}), blocking=False, timeout=60) @@ -738,8 +776,8 @@ '/redfish/v1/Systems/1', data={'Boot': {'BootSourceOverrideTarget': 'Cd', 'BootSourceOverrideEnabled': 'Once'}}, - headers={'X-Fake': 'header', - 'If-Match': 'W/"3d7b8a7360bf2941d"'}, + headers=dict(self.headers, + **{'If-Match': 'W/"3d7b8a7360bf2941d"'}), blocking=False, timeout=60) @@ -759,7 +797,7 @@ '/redfish/v1/Systems/1', data={'Boot': {'BootSourceOverrideTarget': 'Cd', 'BootSourceOverrideEnabled': 'Once'}}, - headers={'X-Fake': 'header'}, + headers=self.headers, blocking=False, timeout=60) @@ -787,8 +825,7 @@ '/redfish/v1/Systems/1', data={'Boot': {'BootSourceOverrideTarget': 'Cd', 'BootSourceOverrideEnabled': 'Once'}}, - headers={'X-Fake': 'header', - 'If-Match': '"3d7b8a7360bf2941d"'}, + headers=dict(self.headers, **{'If-Match': '"3d7b8a7360bf2941d"'}), blocking=False, timeout=60) @@ -818,7 +855,7 @@ '/redfish/v1/Systems/1', data={'Boot': {'BootSourceOverrideTarget': 'Cd', 'BootSourceOverrideEnabled': 'Once'}}, - headers={'X-Fake': 'header'}, + headers=self.headers, blocking=False, timeout=60) @@ -846,7 +883,7 @@ '/redfish/v1/Systems/1', data={'Boot': {'BootSourceOverrideTarget': 'Cd', 'BootSourceOverrideEnabled': 'Once'}}, - headers={'X-Fake': 'header'}, + headers=self.headers, blocking=False, timeout=60) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy.egg-info/PKG-INFO new/sushy-5.1.0/sushy.egg-info/PKG-INFO --- old/sushy-5.0.0/sushy.egg-info/PKG-INFO 2024-02-22 16:01:13.000000000 +0100 +++ new/sushy-5.1.0/sushy.egg-info/PKG-INFO 2024-05-23 09:55:12.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: sushy -Version: 5.0.0 +Version: 5.1.0 Summary: Sushy is a small Python library to communicate with Redfish based systems Home-page: https://docs.openstack.org/sushy/latest/ Author: OpenStack diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy.egg-info/SOURCES.txt new/sushy-5.1.0/sushy.egg-info/SOURCES.txt --- old/sushy-5.0.0/sushy.egg-info/SOURCES.txt 2024-02-22 16:01:13.000000000 +0100 +++ new/sushy-5.1.0/sushy.egg-info/SOURCES.txt 2024-05-23 09:55:13.000000000 +0200 @@ -21,6 +21,7 @@ doc/source/reference/index.rst doc/source/reference/usage.rst releasenotes/notes/.placeholder +releasenotes/notes/accept-encoding-4646ea43998f80bd.yaml releasenotes/notes/action-parameter-missing-7d234b96b5b1d81a.yaml releasenotes/notes/add-apply-time-support-to-bios-315ebad429dcab3d.yaml releasenotes/notes/add-bios-bf69ac56c4ae8f50.yaml @@ -151,6 +152,7 @@ releasenotes/notes/workaround-sushy-requests-verify-handling-6879c273b651246f.yaml releasenotes/source/2023.1.rst releasenotes/source/2023.2.rst +releasenotes/source/2024.1.rst releasenotes/source/conf.py releasenotes/source/index.rst releasenotes/source/pike.rst diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sushy-5.0.0/sushy.egg-info/pbr.json new/sushy-5.1.0/sushy.egg-info/pbr.json --- old/sushy-5.0.0/sushy.egg-info/pbr.json 2024-02-22 16:01:13.000000000 +0100 +++ new/sushy-5.1.0/sushy.egg-info/pbr.json 2024-05-23 09:55:12.000000000 +0200 @@ -1 +1 @@ -{"git_version": "8929cce", "is_release": true} \ No newline at end of file +{"git_version": "0cec13b", "is_release": true} \ No newline at end of file
participants (1)
-
Source-Sync