)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"5bcf5b7be4d6f8c295beaed3b0b806a93529600f","unresolved":false,"context_lines":[{"line_number":16,"context_line":"- clarify what the sp id is"},{"line_number":17,"context_line":"- include docstrings where appropriate"},{"line_number":18,"context_line":"- don\u0027t define a new constant for 302"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"bp k2k-auth-plugin"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Change-Id: Ic86d6a62af53005790f637a3b572b6a19350182b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"da20952f_2a57d926","line":19,"updated":"2015-09-01 10:41:27.000000000","message":"- use python-requests constant to identify HTTP status code","commit_id":"cd34246865e285998a5d90d2d52a78582d60203b"}],"keystoneauth1/auth/identity/v3/k2k.py":[{"author":{"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},"change_message_id":"8729aecde0e981fd2e9e450a860634973b22ee11","unresolved":false,"context_lines":[{"line_number":140,"context_line":"        if not resp.text:"},{"line_number":141,"context_line":"            raise exceptions.InvalidResponse(resp)"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"        return unicode(resp.text)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    def _send_service_provider_ecp_authn_response(self, session, sp_url,"},{"line_number":146,"context_line":"                                                  sp_auth_url):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_3016b74c","line":143,"updated":"2015-08-06 00:52:26.000000000","message":"six.text_type maybe?","commit_id":"836eb6b86381f73707a61bfefc5d90b6833e2613"},{"author":{"_account_id":9981,"name":"Doug Fish","email":"drfish@us.ibm.com","username":"doug-fish"},"change_message_id":"33120487e09de48035201a482c99e3979f6b92f7","unresolved":false,"context_lines":[{"line_number":140,"context_line":"        if not resp.text:"},{"line_number":141,"context_line":"            raise exceptions.InvalidResponse(resp)"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"        return unicode(resp.text)"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    def _send_service_provider_ecp_authn_response(self, session, sp_url,"},{"line_number":146,"context_line":"                                                  sp_auth_url):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_5ed9f620","line":143,"in_reply_to":"1a4dcd0f_3016b74c","updated":"2015-08-06 14:08:43.000000000","message":"yeah, good point.","commit_id":"836eb6b86381f73707a61bfefc5d90b6833e2613"}],"keystoneauth1/identity/v3/k2k.py":[{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"bf74b292c3557fe391355ad62c348b6edb2b9cbe","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        # the call directed to the Location URL. In this case, this is an"},{"line_number":165,"context_line":"        # indication that SAML2 session is now active and protected resource"},{"line_number":166,"context_line":"        # can be accessed."},{"line_number":167,"context_line":"        if response.status_code \u003d\u003d http_client.FOUND:"},{"line_number":168,"context_line":"            response \u003d session.get("},{"line_number":169,"context_line":"                sp_auth_url,"},{"line_number":170,"context_line":"                headers\u003d{\u0027Content-Type\u0027: \u0027application/vnd.paos+xml\u0027},"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a4dcd0f_0eb964ec","line":167,"updated":"2015-08-16 01:14:16.000000000","message":"keystoneauth already depends on requests. Instead of using six.moves.http_client.FOUND, why not requests.status_codes.codes[\u0027found\u0027]?","commit_id":"88dce608a0c249fa14db4eeba13b9b8a11a3336e"},{"author":{"_account_id":9981,"name":"Doug Fish","email":"drfish@us.ibm.com","username":"doug-fish"},"change_message_id":"0ac6d70b0c0e6696bece59ca9b641a3ba06ddde8","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        # the call directed to the Location URL. In this case, this is an"},{"line_number":165,"context_line":"        # indication that SAML2 session is now active and protected resource"},{"line_number":166,"context_line":"        # can be accessed."},{"line_number":167,"context_line":"        if response.status_code \u003d\u003d http_client.FOUND:"},{"line_number":168,"context_line":"            response \u003d session.get("},{"line_number":169,"context_line":"                sp_auth_url,"},{"line_number":170,"context_line":"                headers\u003d{\u0027Content-Type\u0027: \u0027application/vnd.paos+xml\u0027},"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa1b9901_288fc924","line":167,"in_reply_to":"1a4dcd0f_0eb964ec","updated":"2015-08-17 15:46:40.000000000","message":"yeah agreed. seems more consistent with the intent specified at keystoneauth1/session.py#L77","commit_id":"88dce608a0c249fa14db4eeba13b9b8a11a3336e"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"3adeee56b4c591eb138b5f19ff0ce2939f4a790a","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    \"\"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    rescoping_plugin \u003d token.Token"},{"line_number":48,"context_line":"    \"\"\"Auth plugin class to use when scoping a new token \"\"\""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def __init__(self, base_plugin, service_provider, **kwargs):"},{"line_number":51,"context_line":"        super(Keystone2Keystone, self).__init__(auth_url\u003dNone, **kwargs)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_59866dba","line":48,"updated":"2015-08-24 08:42:49.000000000","message":"why docstring under the statement?","commit_id":"f48fc1a2ea71644726890db1162d12ded2710689"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"49f64f057b4842bfdb01c3512d35d18c1b4ececd","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    \"\"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    rescoping_plugin \u003d token.Token"},{"line_number":48,"context_line":"    \"\"\"Auth plugin class to use when scoping a new token \"\"\""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def __init__(self, base_plugin, service_provider, **kwargs):"},{"line_number":51,"context_line":"        super(Keystone2Keystone, self).__init__(auth_url\u003dNone, **kwargs)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_726f6afc","line":48,"in_reply_to":"fa1b9901_59866dba","updated":"2015-08-25 20:53:55.000000000","message":"This looks erroneous. Lets resolve this before we approve this patch.","commit_id":"f48fc1a2ea71644726890db1162d12ded2710689"},{"author":{"_account_id":9981,"name":"Doug Fish","email":"drfish@us.ibm.com","username":"doug-fish"},"change_message_id":"633f06207ad5a904fa920cbad65ca65738cc3240","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    \"\"\""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    rescoping_plugin \u003d token.Token"},{"line_number":48,"context_line":"    \"\"\"Auth plugin class to use when scoping a new token \"\"\""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def __init__(self, base_plugin, service_provider, **kwargs):"},{"line_number":51,"context_line":"        super(Keystone2Keystone, self).__init__(auth_url\u003dNone, **kwargs)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da20952f_c880c48d","line":48,"in_reply_to":"fa1b9901_726f6afc","updated":"2015-08-31 20:26:06.000000000","message":"I agree this is wrong. I was responding to an earlier comment that these should be documented by a docstring. However, our docstrings are described by https://www.python.org/dev/peps/pep-0257/ which defines a docstring as \"... a string literal that occurs as the first statement in a module, function, class, or method definition.\"  Note that \"attribute\" is not in the definition. Docstrings don\u0027t belong here.","commit_id":"f48fc1a2ea71644726890db1162d12ded2710689"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"5bcf5b7be4d6f8c295beaed3b0b806a93529600f","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    # Path where the ECP wrapped SAML assertion should be presented to"},{"line_number":43,"context_line":"    # the Keystone Service Provider."},{"line_number":44,"context_line":"    REQUEST_ECP_URL \u003d \u0027/auth/OS-FEDERATION/saml2/ecp\u0027"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    # Auth plugin class to use when scoping a new token"},{"line_number":47,"context_line":"    rescoping_plugin \u003d token.Token"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"da20952f_eabec163","line":45,"updated":"2015-09-01 10:41:27.000000000","message":"looks much better now.","commit_id":"cd34246865e285998a5d90d2d52a78582d60203b"}]}
