)]}'
{"openstack/identity/v3/_proxy.py":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1226,"context_line":"        `~openstack.identity.v3.application_credential.ApplicationCredential`"},{"line_number":1227,"context_line":"        \"\"\""},{"line_number":1228,"context_line":"        return self._list(_application_credential.ApplicationCredential,"},{"line_number":1229,"context_line":"                          **query)"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    def get_application_credentials(self, application_credential):"},{"line_number":1232,"context_line":"        \"\"\"Get a single application credential"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_d6cb7e50","line":1229,"updated":"2019-07-09 22:19:54.000000000","message":"This doesn\u0027t seem to be doing the right thing, because the application credentials API is not typical and includes a /users component. This is what I get when I try it:\n\n \u003e\u003e\u003e [x for x in conn.identity.application_credentials()]\nTraceback (most recent call last):\n  File \"\u003cstdin\u003e\", line 1, in \u003cmodule\u003e\n  File \"/usr/local/lib/python2.7/dist-packages/openstack/resource.py\", line 1515, in list\n    exceptions.raise_from_response(response)\n  File \"/usr/local/lib/python2.7/dist-packages/openstack/exceptions.py\", line 229, in raise_from_response\n    http_status\u003dhttp_status, request_id\u003drequest_id\nopenstack.exceptions.ResourceNotFound: ResourceNotFound: 404: Client Error for url: http://192.168.122.10/identity/v3/application_credentials, 404 Not Found: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.: Not Found","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"9d5a60827ed9fb5025edc132cba66ae20abd1a1c","unresolved":false,"context_lines":[{"line_number":1226,"context_line":"        `~openstack.identity.v3.application_credential.ApplicationCredential`"},{"line_number":1227,"context_line":"        \"\"\""},{"line_number":1228,"context_line":"        return self._list(_application_credential.ApplicationCredential,"},{"line_number":1229,"context_line":"                          **query)"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    def get_application_credentials(self, application_credential):"},{"line_number":1232,"context_line":"        \"\"\"Get a single application credential"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_7b8fee2d","line":1229,"in_reply_to":"7faddb67_86e87116","updated":"2019-07-30 01:41:33.000000000","message":"With Monty\u0027s suggestion, create works for me, but you also need to set name since that\u0027s a required attribute of the API.","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1226,"context_line":"        `~openstack.identity.v3.application_credential.ApplicationCredential`"},{"line_number":1227,"context_line":"        \"\"\""},{"line_number":1228,"context_line":"        return self._list(_application_credential.ApplicationCredential,"},{"line_number":1229,"context_line":"                          **query)"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    def get_application_credentials(self, application_credential):"},{"line_number":1232,"context_line":"        \"\"\"Get a single application credential"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_86e87116","line":1229,"in_reply_to":"7faddb67_d6cb7e50","updated":"2019-07-26 13:58:42.000000000","message":"I added the user_id attribute.The list is working fine for application_credentials but other\u0027s giving error[1].\n\n[1]https://www.paste.org/99742","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1228,"context_line":"        return self._list(_application_credential.ApplicationCredential,"},{"line_number":1229,"context_line":"                          **query)"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    def get_application_credentials(self, application_credential):"},{"line_number":1232,"context_line":"        \"\"\"Get a single application credential"},{"line_number":1233,"context_line":""},{"line_number":1234,"context_line":"        :param application_credential: The value can be the ID of a application"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_f6cb1a47","line":1231,"range":{"start_line":1231,"start_character":34,"end_line":1231,"end_character":35},"updated":"2019-07-09 22:19:54.000000000","message":"I think this should be singular","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1228,"context_line":"        return self._list(_application_credential.ApplicationCredential,"},{"line_number":1229,"context_line":"                          **query)"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    def get_application_credentials(self, application_credential):"},{"line_number":1232,"context_line":"        \"\"\"Get a single application credential"},{"line_number":1233,"context_line":""},{"line_number":1234,"context_line":"        :param application_credential: The value can be the ID of a application"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_0669e1bc","line":1231,"range":{"start_line":1231,"start_character":34,"end_line":1231,"end_character":35},"in_reply_to":"7faddb67_f6cb1a47","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1244,"context_line":"        return self._get(_application_credential.ApplicationCredential,"},{"line_number":1245,"context_line":"                         application_credential)"},{"line_number":1246,"context_line":""},{"line_number":1247,"context_line":"    def create_application_credentials(self, **attrs):"},{"line_number":1248,"context_line":"        \"\"\"Create a new application credentials from attributes"},{"line_number":1249,"context_line":""},{"line_number":1250,"context_line":"        :param dict attrs: Keyword arguments which will be used to create"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_d6d05efa","line":1247,"range":{"start_line":1247,"start_character":37,"end_line":1247,"end_character":38},"updated":"2019-07-09 22:19:54.000000000","message":"I think this should be singular","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1244,"context_line":"        return self._get(_application_credential.ApplicationCredential,"},{"line_number":1245,"context_line":"                         application_credential)"},{"line_number":1246,"context_line":""},{"line_number":1247,"context_line":"    def create_application_credentials(self, **attrs):"},{"line_number":1248,"context_line":"        \"\"\"Create a new application credentials from attributes"},{"line_number":1249,"context_line":""},{"line_number":1250,"context_line":"        :param dict attrs: Keyword arguments which will be used to create"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_c662e9d8","line":1247,"range":{"start_line":1247,"start_character":37,"end_line":1247,"end_character":38},"in_reply_to":"7faddb67_d6d05efa","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1250,"context_line":"        :param dict attrs: Keyword arguments which will be used to create"},{"line_number":1251,"context_line":"        a :class:"},{"line_number":1252,"context_line":"        `~openstack.identity.v3.application_credential.ApplicationCredential`,"},{"line_number":1253,"context_line":"        comprised of the properties on the Limit class."},{"line_number":1254,"context_line":""},{"line_number":1255,"context_line":"        :returns: The results of application credential creation."},{"line_number":1256,"context_line":"        :rtype: :class:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_f61c7a14","line":1253,"range":{"start_line":1253,"start_character":43,"end_line":1253,"end_character":48},"updated":"2019-07-09 22:19:54.000000000","message":"copypaste error","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1250,"context_line":"        :param dict attrs: Keyword arguments which will be used to create"},{"line_number":1251,"context_line":"        a :class:"},{"line_number":1252,"context_line":"        `~openstack.identity.v3.application_credential.ApplicationCredential`,"},{"line_number":1253,"context_line":"        comprised of the properties on the Limit class."},{"line_number":1254,"context_line":""},{"line_number":1255,"context_line":"        :returns: The results of application credential creation."},{"line_number":1256,"context_line":"        :rtype: :class:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_e65da515","line":1253,"range":{"start_line":1253,"start_character":43,"end_line":1253,"end_character":48},"in_reply_to":"7faddb67_f61c7a14","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1276,"context_line":"        return self._find(_application_credential.ApplicationCredential,"},{"line_number":1277,"context_line":"                          name_or_id, ignore_missing\u003dTrue, **attrs)"},{"line_number":1278,"context_line":""},{"line_number":1279,"context_line":"    def delete_application_credentials(self, application_credential,"},{"line_number":1280,"context_line":"                                       ignore_missing\u003dTrue):"},{"line_number":1281,"context_line":"        \"\"\"Delete a application credential"},{"line_number":1282,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_96dae614","line":1279,"range":{"start_line":1279,"start_character":37,"end_line":1279,"end_character":38},"updated":"2019-07-09 22:19:54.000000000","message":"I think this should be singular","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1276,"context_line":"        return self._find(_application_credential.ApplicationCredential,"},{"line_number":1277,"context_line":"                          name_or_id, ignore_missing\u003dTrue, **attrs)"},{"line_number":1278,"context_line":""},{"line_number":1279,"context_line":"    def delete_application_credentials(self, application_credential,"},{"line_number":1280,"context_line":"                                       ignore_missing\u003dTrue):"},{"line_number":1281,"context_line":"        \"\"\"Delete a application credential"},{"line_number":1282,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_869ab1c2","line":1279,"range":{"start_line":1279,"start_character":37,"end_line":1279,"end_character":38},"in_reply_to":"7faddb67_96dae614","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":"        :param application credential: The value can be either the ID of a"},{"line_number":1284,"context_line":"            application credential or a"},{"line_number":1285,"context_line":"            :class:`~openstack.identity.v3.limit.Limit` instance."},{"line_number":1286,"context_line":"        :param bool ignore_missing: When set to ``False``"},{"line_number":1287,"context_line":"            :class:`~openstack.exceptions.ResourceNotFound` will be raised when"},{"line_number":1288,"context_line":"            the application credential does not exist. When set to ``True``, no"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_362bf230","line":1285,"range":{"start_line":1285,"start_character":20,"end_line":1285,"end_character":54},"updated":"2019-07-09 22:19:54.000000000","message":"copypaste error","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":"        :param application credential: The value can be either the ID of a"},{"line_number":1284,"context_line":"            application credential or a"},{"line_number":1285,"context_line":"            :class:`~openstack.identity.v3.limit.Limit` instance."},{"line_number":1286,"context_line":"        :param bool ignore_missing: When set to ``False``"},{"line_number":1287,"context_line":"            :class:`~openstack.exceptions.ResourceNotFound` will be raised when"},{"line_number":1288,"context_line":"            the application credential does not exist. When set to ``True``, no"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_a69d6dbc","line":1285,"range":{"start_line":1285,"start_character":20,"end_line":1285,"end_character":54},"in_reply_to":"7faddb67_362bf230","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"9d5a60827ed9fb5025edc132cba66ae20abd1a1c","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"        application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1225,"context_line":"                    :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_fbebde0e","line":1225,"updated":"2019-07-30 01:41:33.000000000","message":"This docstring is out of order, needs to appear in the same order as the function prototype, as do the others below","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"cd4db9c212098d5f0ef11060591d24e3ff39acd4","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"        application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1225,"context_line":"                    :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_b9856b09","line":1225,"in_reply_to":"7faddb67_fbebde0e","updated":"2019-07-30 10:31:39.000000000","message":"Done","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"9d5a60827ed9fb5025edc132cba66ae20abd1a1c","unresolved":false,"context_lines":[{"line_number":1249,"context_line":"            resource can be found."},{"line_number":1250,"context_line":"        \"\"\""},{"line_number":1251,"context_line":"        user \u003d self._get_resource(_user.User, user)"},{"line_number":1252,"context_line":"        _application_credential.ApplicationCredential.get(user.id)"},{"line_number":1253,"context_line":"        return self._get(_application_credential.ApplicationCredential,"},{"line_number":1254,"context_line":"                         application_credential, user_id\u003duser.id)"},{"line_number":1255,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_1bc91a77","line":1252,"range":{"start_line":1252,"start_character":8,"end_line":1252,"end_character":66},"updated":"2019-07-30 01:41:33.000000000","message":"This causes an error for me, it\u0027s not needed.","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"cd4db9c212098d5f0ef11060591d24e3ff39acd4","unresolved":false,"context_lines":[{"line_number":1249,"context_line":"            resource can be found."},{"line_number":1250,"context_line":"        \"\"\""},{"line_number":1251,"context_line":"        user \u003d self._get_resource(_user.User, user)"},{"line_number":1252,"context_line":"        _application_credential.ApplicationCredential.get(user.id)"},{"line_number":1253,"context_line":"        return self._get(_application_credential.ApplicationCredential,"},{"line_number":1254,"context_line":"                         application_credential, user_id\u003duser.id)"},{"line_number":1255,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_797b7327","line":1252,"range":{"start_line":1252,"start_character":8,"end_line":1252,"end_character":66},"in_reply_to":"7faddb67_1bc91a77","updated":"2019-07-30 10:31:39.000000000","message":"Done","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"9d5a60827ed9fb5025edc132cba66ae20abd1a1c","unresolved":false,"context_lines":[{"line_number":1316,"context_line":"        self._delete(_application_credential.ApplicationCredential,"},{"line_number":1317,"context_line":"                     user_id\u003duser.id,"},{"line_number":1318,"context_line":"                     application_credential\u003dapplication_credential,"},{"line_number":1319,"context_line":"                     ignore_missing\u003dignore_missing)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_bbb806e5","line":1319,"updated":"2019-07-30 01:41:33.000000000","message":"This doesn\u0027t work, it needs to be\n\n app_cred \u003d self._get_resource(\n     _application_credential.ApplicationCredential,\n     application_credential)\n self._delete(_application_credential.ApplicationCredential,\n              app_cred.id,\n              user_id\u003duser.id,\n              gnore_missing\u003dignore_missing)","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"79255fbb0219c8fcf8c2db16f4fbb104a4c47c8d","unresolved":false,"context_lines":[{"line_number":1316,"context_line":"        self._delete(_application_credential.ApplicationCredential,"},{"line_number":1317,"context_line":"                     user_id\u003duser.id,"},{"line_number":1318,"context_line":"                     application_credential\u003dapplication_credential,"},{"line_number":1319,"context_line":"                     ignore_missing\u003dignore_missing)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_b1cd7786","line":1319,"in_reply_to":"7faddb67_39717b45","updated":"2019-07-30 19:57:50.000000000","message":"Latest revision with application_credential as a non-keyworded argument works for me.","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"cd4db9c212098d5f0ef11060591d24e3ff39acd4","unresolved":false,"context_lines":[{"line_number":1316,"context_line":"        self._delete(_application_credential.ApplicationCredential,"},{"line_number":1317,"context_line":"                     user_id\u003duser.id,"},{"line_number":1318,"context_line":"                     application_credential\u003dapplication_credential,"},{"line_number":1319,"context_line":"                     ignore_missing\u003dignore_missing)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_39717b45","line":1319,"in_reply_to":"7faddb67_bbb806e5","updated":"2019-07-30 10:31:39.000000000","message":"It worked fine for me. \n\nconn.identity.delete_application_credential(application_credential\u003d\u00270102f62534d048abb62c88d2512cb5f1\u0027,user\u003d\u002774f1411dcda246579d969eb94ed7f56d\u0027). Could you please confirm once again.","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"79255fbb0219c8fcf8c2db16f4fbb104a4c47c8d","unresolved":false,"context_lines":[{"line_number":1218,"context_line":"    def application_credentials(self, user, **query):"},{"line_number":1219,"context_line":"        \"\"\"Retrieve a generator of application credentials"},{"line_number":1220,"context_line":""},{"line_number":1221,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_51744336","line":1221,"range":{"start_line":1221,"start_character":29,"end_line":1221,"end_character":37},"updated":"2019-07-30 19:57:50.000000000","message":"Not sure what the standard is in sdk, but since \u0027name\u0027 is not optional maybe it should be its own keyword argument?","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"2213f390a8ca3e72b0a4ef0faa00af609b56c675","unresolved":false,"context_lines":[{"line_number":1218,"context_line":"    def application_credentials(self, user, **query):"},{"line_number":1219,"context_line":"        \"\"\"Retrieve a generator of application credentials"},{"line_number":1220,"context_line":""},{"line_number":1221,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_75b59931","line":1221,"range":{"start_line":1221,"start_character":29,"end_line":1221,"end_character":37},"in_reply_to":"7faddb67_44b9d1c9","updated":"2019-07-31 16:24:32.000000000","message":"Sorry, I meant for create, but you already have name required there, so ignore this :)","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b0ec4dc12a1e516db7e448c0687ba77de2560c77","unresolved":false,"context_lines":[{"line_number":1218,"context_line":"    def application_credentials(self, user, **query):"},{"line_number":1219,"context_line":"        \"\"\"Retrieve a generator of application credentials"},{"line_number":1220,"context_line":""},{"line_number":1221,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_44b9d1c9","line":1221,"range":{"start_line":1221,"start_character":29,"end_line":1221,"end_character":37},"in_reply_to":"7faddb67_51744336","updated":"2019-07-31 14:48:19.000000000","message":"I am still not sure what to change here since from api-ref [1] no name is passed in here.\n\n[1] https://docs.openstack.org/api-ref/identity/v3/?expanded\u003dlist-application-credentials-detail#list-application-credentials","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"79255fbb0219c8fcf8c2db16f4fbb104a4c47c8d","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1225,"context_line":"             :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_f1ac4fa0","line":1225,"updated":"2019-07-30 19:57:50.000000000","message":"Still out of order","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b0ec4dc12a1e516db7e448c0687ba77de2560c77","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1225,"context_line":"             :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_64be4db5","line":1225,"in_reply_to":"7faddb67_f1ac4fa0","updated":"2019-07-31 14:48:19.000000000","message":"Done","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"79255fbb0219c8fcf8c2db16f4fbb104a4c47c8d","unresolved":false,"context_lines":[{"line_number":1240,"context_line":"             `~openstack.identity.v3.application_credential."},{"line_number":1241,"context_line":"             ApplicationCredential` instance."},{"line_number":1242,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1243,"context_line":"             :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1244,"context_line":""},{"line_number":1245,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1246,"context_line":"             ApplicationCredential`"}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_f19a0f60","line":1243,"updated":"2019-07-30 19:57:50.000000000","message":"Out of order","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b0ec4dc12a1e516db7e448c0687ba77de2560c77","unresolved":false,"context_lines":[{"line_number":1240,"context_line":"             `~openstack.identity.v3.application_credential."},{"line_number":1241,"context_line":"             ApplicationCredential` instance."},{"line_number":1242,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1243,"context_line":"             :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1244,"context_line":""},{"line_number":1245,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1246,"context_line":"             ApplicationCredential`"}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_04af597d","line":1243,"in_reply_to":"7faddb67_f19a0f60","updated":"2019-07-31 14:48:19.000000000","message":"Done","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"79255fbb0219c8fcf8c2db16f4fbb104a4c47c8d","unresolved":false,"context_lines":[{"line_number":1261,"context_line":"             ApplicationCredential class."},{"line_number":1262,"context_line":""},{"line_number":1263,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1264,"context_line":"             :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1265,"context_line":""},{"line_number":1266,"context_line":"        :returns: The results of application credential creation."},{"line_number":1267,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_71a61fae","line":1264,"updated":"2019-07-30 19:57:50.000000000","message":"Out of order","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b0ec4dc12a1e516db7e448c0687ba77de2560c77","unresolved":false,"context_lines":[{"line_number":1261,"context_line":"             ApplicationCredential class."},{"line_number":1262,"context_line":""},{"line_number":1263,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1264,"context_line":"             :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1265,"context_line":""},{"line_number":1266,"context_line":"        :returns: The results of application credential creation."},{"line_number":1267,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_e4c9dd58","line":1264,"in_reply_to":"7faddb67_71a61fae","updated":"2019-07-31 14:48:19.000000000","message":"Done","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"94500c03c1743678a72d62606325f1f3199a6a52","unresolved":false,"context_lines":[{"line_number":1218,"context_line":"    def application_credentials(self, user, **query):"},{"line_number":1219,"context_line":"        \"\"\"Retrieve a generator of application credentials"},{"line_number":1220,"context_line":""},{"line_number":1221,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_7d3d698c","line":1221,"range":{"start_line":1221,"start_character":15,"end_line":1221,"end_character":21},"updated":"2019-08-01 21:46:25.000000000","message":"The parameter is actually named query, not kwargs","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"4f268cef910ad0d0f47a000c65edf2c772ae7448","unresolved":false,"context_lines":[{"line_number":1218,"context_line":"    def application_credentials(self, user, **query):"},{"line_number":1219,"context_line":"        \"\"\"Retrieve a generator of application credentials"},{"line_number":1220,"context_line":""},{"line_number":1221,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_026146d3","line":1221,"range":{"start_line":1221,"start_character":15,"end_line":1221,"end_character":21},"in_reply_to":"7faddb67_332dc194","updated":"2019-08-05 17:41:32.000000000","message":"Sorry, misread","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b15f7f63798bdc93f9bc9479e87b8261988143ab","unresolved":false,"context_lines":[{"line_number":1218,"context_line":"    def application_credentials(self, user, **query):"},{"line_number":1219,"context_line":"        \"\"\"Retrieve a generator of application credentials"},{"line_number":1220,"context_line":""},{"line_number":1221,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_332dc194","line":1221,"range":{"start_line":1221,"start_character":15,"end_line":1221,"end_character":21},"in_reply_to":"7faddb67_7d3d698c","updated":"2019-08-05 10:23:00.000000000","message":"I followed the same string same as in the whole file.","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"94500c03c1743678a72d62606325f1f3199a6a52","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1225,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_9da6250f","line":1225,"updated":"2019-08-01 21:46:25.000000000","message":"Still out of order. By out of order I mean this param documentation should appear before the kwargs documentation because that\u0027s the order they appear in the function prototype.","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b15f7f63798bdc93f9bc9479e87b8261988143ab","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"            application credential the resources being returned."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1225,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_53339df6","line":1225,"in_reply_to":"7faddb67_9da6250f","updated":"2019-08-05 10:23:00.000000000","message":"Done","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"94500c03c1743678a72d62606325f1f3199a6a52","unresolved":false,"context_lines":[{"line_number":1240,"context_line":"             `~openstack.identity.v3.application_credential."},{"line_number":1241,"context_line":"             ApplicationCredential` instance."},{"line_number":1242,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1243,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1244,"context_line":""},{"line_number":1245,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1246,"context_line":"             ApplicationCredential`"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_9d42a50e","line":1243,"updated":"2019-08-01 21:46:25.000000000","message":"Still out of order","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b15f7f63798bdc93f9bc9479e87b8261988143ab","unresolved":false,"context_lines":[{"line_number":1240,"context_line":"             `~openstack.identity.v3.application_credential."},{"line_number":1241,"context_line":"             ApplicationCredential` instance."},{"line_number":1242,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1243,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1244,"context_line":""},{"line_number":1245,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1246,"context_line":"             ApplicationCredential`"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_732ed98c","line":1243,"in_reply_to":"7faddb67_9d42a50e","updated":"2019-08-05 10:23:00.000000000","message":"Done","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"94500c03c1743678a72d62606325f1f3199a6a52","unresolved":false,"context_lines":[{"line_number":1261,"context_line":"             ApplicationCredential class."},{"line_number":1262,"context_line":""},{"line_number":1263,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1264,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1265,"context_line":""},{"line_number":1266,"context_line":"        :returns: The results of application credential creation."},{"line_number":1267,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_5d48ad2b","line":1264,"updated":"2019-08-01 21:46:25.000000000","message":"Still out of order. Also missing a docstring for the name parameter.","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b15f7f63798bdc93f9bc9479e87b8261988143ab","unresolved":false,"context_lines":[{"line_number":1261,"context_line":"             ApplicationCredential class."},{"line_number":1262,"context_line":""},{"line_number":1263,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1264,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1265,"context_line":""},{"line_number":1266,"context_line":"        :returns: The results of application credential creation."},{"line_number":1267,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_3352a114","line":1264,"in_reply_to":"7faddb67_5d48ad2b","updated":"2019-08-05 10:23:00.000000000","message":"Done","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1221,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1222,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1225,"context_line":"            application credential the resources being returned."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_8e6b86ef","line":1224,"range":{"start_line":1224,"start_character":22,"end_line":1224,"end_character":27},"updated":"2019-10-25 14:10:44.000000000","message":"Moving forward I would like to see these link to the api-ref that describes what params are acceptable, like [1]. I recognize there\u0027s almost no precedent for that yet, but if you respin...\n\n[Later] I went looking for which API this would be, and I think it\u0027s [2] - is that right? In which case... I don\u0027t see any queryparams? And I don\u0027t see a _query_mapping for ApplicationCredential. Perhaps this is for forward compat?\n\n[1] https://opendev.org/openstack/openstacksdk/src/branch/master/openstack/baremetal/v1/_proxy.py#L308-L310\n[2] https://docs.openstack.org/api-ref/identity/v3/index.html?expanded\u003dlist-application-credentials-detail#application-credentials","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"988d15cfda8a1c8c33f93852460841d3b0698880","unresolved":false,"context_lines":[{"line_number":1221,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1222,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1225,"context_line":"            application credential the resources being returned."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_481a5fc6","line":1224,"range":{"start_line":1224,"start_character":22,"end_line":1224,"end_character":27},"in_reply_to":"3fa7e38b_8e6b86ef","updated":"2019-10-25 17:05:02.000000000","message":"The api-ref is missing the \u0027name\u0027 filter, we should fix that\n\nhttps://opendev.org/openstack/keystone/src/commit/30f676a1dd5343c1d982f39c3d431527843d90a0/keystone/api/users.py#L567","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1222,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1223,"context_line":""},{"line_number":1224,"context_line":"        :param kwargs query: Optional query parameters to be sent to"},{"line_number":1225,"context_line":"            application credential the resources being returned."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_8e8146c6","line":1225,"range":{"start_line":1225,"start_character":35,"end_line":1225,"end_character":63},"updated":"2019-10-25 14:10:44.000000000","message":"?","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1225,"context_line":"            application credential the resources being returned."},{"line_number":1226,"context_line":""},{"line_number":1227,"context_line":"        :returns: A generator of application credentials instances."},{"line_number":1228,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."},{"line_number":1229,"context_line":"             ApplicationCredential`"},{"line_number":1230,"context_line":"        \"\"\""},{"line_number":1231,"context_line":"        user \u003d self._get_resource(_user.User, user)"},{"line_number":1232,"context_line":"        return self._list(_application_credential.ApplicationCredential,"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_2e705208","line":1229,"range":{"start_line":1228,"start_character":16,"end_line":1229,"end_character":35},"updated":"2019-10-25 14:10:44.000000000","message":"The return type is a generator of these; do we still denote it this way? (That\u0027s fine by me - the rest of the docstring makes it clear - just curious.)","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1242,"context_line":"             application credential or a :class:"},{"line_number":1243,"context_line":"             `~openstack.identity.v3.application_credential."},{"line_number":1244,"context_line":"             ApplicationCredential` instance."},{"line_number":1245,"context_line":""},{"line_number":1246,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1247,"context_line":"             ApplicationCredential`"},{"line_number":1248,"context_line":"        :raises: :class:`~openstack.exceptions.ResourceNotFound` when no"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_54551c4f","line":1245,"updated":"2019-10-25 14:10:44.000000000","message":":raises: ResourceNotFound presumably?\n\nDo we generally support ignore_missing for single-resource GETters?","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1244,"context_line":"             ApplicationCredential` instance."},{"line_number":1245,"context_line":""},{"line_number":1246,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1247,"context_line":"             ApplicationCredential`"},{"line_number":1248,"context_line":"        :raises: :class:`~openstack.exceptions.ResourceNotFound` when no"},{"line_number":1249,"context_line":"             resource can be found."},{"line_number":1250,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_ce189e85","line":1247,"updated":"2019-10-25 14:10:44.000000000","message":"could have :rtype: here for consistency","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1260,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1261,"context_line":"        :param name: The name of the application credential which is"},{"line_number":1262,"context_line":"                    unique to the user."},{"line_number":1263,"context_line":"        :param dict attrs: Keyword arguments which will be used to create"},{"line_number":1264,"context_line":"             a :class:`~openstack.identity.v3.application_credential."},{"line_number":1265,"context_line":"             ApplicationCredential`, comprised of the properties on the"},{"line_number":1266,"context_line":"             ApplicationCredential class."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_f4d76822","line":1263,"range":{"start_line":1263,"start_character":20,"end_line":1263,"end_character":25},"updated":"2019-10-25 14:10:44.000000000","message":"As above, a link to the api-ref would be nice. Presumably this is [1].\n\n[1] https://docs.openstack.org/api-ref/identity/v3/index.html?expanded\u003dcreate-application-credential-detail#create-application-credential","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1265,"context_line":"             ApplicationCredential`, comprised of the properties on the"},{"line_number":1266,"context_line":"             ApplicationCredential class."},{"line_number":1267,"context_line":""},{"line_number":1268,"context_line":""},{"line_number":1269,"context_line":"        :returns: The results of application credential creation."},{"line_number":1270,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."},{"line_number":1271,"context_line":"             ApplicationCredential`"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_f4a528b6","line":1268,"updated":"2019-10-25 14:10:44.000000000","message":"Do we bother with :raises: for 400s such as \"no such user\" or \"duplicate name\" or other bogus **attrs/combinations thereof?","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"988d15cfda8a1c8c33f93852460841d3b0698880","unresolved":false,"context_lines":[{"line_number":1265,"context_line":"             ApplicationCredential`, comprised of the properties on the"},{"line_number":1266,"context_line":"             ApplicationCredential class."},{"line_number":1267,"context_line":""},{"line_number":1268,"context_line":""},{"line_number":1269,"context_line":"        :returns: The results of application credential creation."},{"line_number":1270,"context_line":"        :rtype: :class:`~openstack.identity.v3.application_credential."},{"line_number":1271,"context_line":"             ApplicationCredential`"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_a8e513a6","line":1268,"in_reply_to":"3fa7e38b_f4a528b6","updated":"2019-10-25 17:05:02.000000000","message":"I see other methods raising :class:`~openstack.exceptions.ResourceNotFound` but otherwise I don\u0027t see any precedent for naming specific 4XX errors in the docstring","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1277,"context_line":"                            user_id\u003duser.id, **attrs)"},{"line_number":1278,"context_line":""},{"line_number":1279,"context_line":"    def find_application_credential(self, user, name_or_id,"},{"line_number":1280,"context_line":"                                    ignore_missing\u003dTrue, **args):"},{"line_number":1281,"context_line":"        \"\"\"Find a single application credential"},{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":"        :param user: Either the ID of a user or a"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_b409f02b","line":1280,"range":{"start_line":1280,"start_character":59,"end_line":1280,"end_character":63},"updated":"2019-10-25 14:10:44.000000000","message":"doc this?\n\nIs the search just by ``name_or_id``, or does **args allow you to search by other criteria?","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1282,"context_line":""},{"line_number":1283,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1284,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."},{"line_number":1285,"context_line":"        :param name_or_id: The name or ID of a application credential."},{"line_number":1286,"context_line":"        :param bool ignore_missing: When set to ``False``"},{"line_number":1287,"context_line":"             :class:`~openstack.exceptions.ResourceNotFound` will be"},{"line_number":1288,"context_line":"             raised when the resource does not exist."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_2e013207","line":1285,"range":{"start_line":1285,"start_character":45,"end_line":1285,"end_character":46},"updated":"2019-10-25 14:10:44.000000000","message":"an","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1288,"context_line":"             raised when the resource does not exist."},{"line_number":1289,"context_line":"             When set to ``True``, None will be returned when"},{"line_number":1290,"context_line":"             attempting to find a nonexistent resource."},{"line_number":1291,"context_line":""},{"line_number":1292,"context_line":"        :returns: One :class:`~openstack.identity.v3.application_credential."},{"line_number":1293,"context_line":"             ApplicationCredential` or None"},{"line_number":1294,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_d4758c99","line":1291,"updated":"2019-10-25 14:10:44.000000000","message":":raises: ResourceNotFound if 404 and ignore_missing is False\n\n:raises: DuplicateResource if more than one result matches (unless this is impossible due to a name uniqueness constraint) ([Later] Looks like the name has to be unique per user?)","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1299,"context_line":""},{"line_number":1300,"context_line":"    def delete_application_credential(self, user, application_credential,"},{"line_number":1301,"context_line":"                                      ignore_missing\u003dTrue):"},{"line_number":1302,"context_line":"        \"\"\"Delete a application credential"},{"line_number":1303,"context_line":""},{"line_number":1304,"context_line":"        :param user: Either the ID of a user or a"},{"line_number":1305,"context_line":"                   :class:`~openstack.identity.v3.user.User` instance."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_d4feec03","line":1302,"range":{"start_line":1302,"start_character":18,"end_line":1302,"end_character":19},"updated":"2019-10-25 14:10:44.000000000","message":"an","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":1311,"context_line":"             when the application credential does not exist. When set to"},{"line_number":1312,"context_line":"             ``True``, no exception will be thrown when attempting to delete"},{"line_number":1313,"context_line":"             a nonexistent application credential."},{"line_number":1314,"context_line":""},{"line_number":1315,"context_line":"        :returns: ``None``"},{"line_number":1316,"context_line":"        \"\"\""},{"line_number":1317,"context_line":"        user \u003d self._get_resource(_user.User, user)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_f47a0886","line":1314,"updated":"2019-10-25 14:10:44.000000000","message":":raises: ResourceNotFound...","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"}],"openstack/identity/v3/application_credential.py":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    allow_commit \u003d True"},{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":"    commit_method \u003d \u0027PATCH\u0027"},{"line_number":28,"context_line":"    commit_jsonpatch \u003d True"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    _query_mapping \u003d resource.QueryParameters(\u0027user\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_76d64a2a","line":27,"updated":"2019-07-09 22:19:54.000000000","message":"What is this for? application credentials can\u0027t be updated and the API doesn\u0027t support PATCH","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    allow_commit \u003d True"},{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":"    commit_method \u003d \u0027PATCH\u0027"},{"line_number":28,"context_line":"    commit_jsonpatch \u003d True"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    _query_mapping \u003d resource.QueryParameters(\u0027user\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_06aec1e6","line":27,"in_reply_to":"7faddb67_76d64a2a","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"f4445ab740591a49f80b9cb349f52291841bc739","unresolved":false,"context_lines":[{"line_number":16,"context_line":"class ApplicationCredential(resource.Resource):"},{"line_number":17,"context_line":"    resource_key \u003d \u0027application_credential\u0027"},{"line_number":18,"context_line":"    resources_key \u003d \u0027application_credentials\u0027"},{"line_number":19,"context_line":"    base_path \u003d \u0027/users/%(user_id)s/application_credentials\u0027"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    # capabilities"},{"line_number":22,"context_line":"    allow_create \u003d True"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_7e4a8aac","line":19,"range":{"start_line":19,"start_character":26,"end_line":19,"end_character":33},"updated":"2019-07-29 11:51:23.000000000","message":"There is no user_id to reference ...","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"cd4db9c212098d5f0ef11060591d24e3ff39acd4","unresolved":false,"context_lines":[{"line_number":16,"context_line":"class ApplicationCredential(resource.Resource):"},{"line_number":17,"context_line":"    resource_key \u003d \u0027application_credential\u0027"},{"line_number":18,"context_line":"    resources_key \u003d \u0027application_credentials\u0027"},{"line_number":19,"context_line":"    base_path \u003d \u0027/users/%(user_id)s/application_credentials\u0027"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    # capabilities"},{"line_number":22,"context_line":"    allow_create \u003d True"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_59a3179f","line":19,"range":{"start_line":19,"start_character":26,"end_line":19,"end_character":33},"in_reply_to":"7faddb67_7e4a8aac","updated":"2019-07-30 10:31:39.000000000","message":"Done","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"f4445ab740591a49f80b9cb349f52291841bc739","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    allow_commit \u003d True"},{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    #: User object using application credential. *Type: string*"},{"line_number":30,"context_line":"    user \u003d resource.Body(\u0027user\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_9edae6e6","line":27,"updated":"2019-07-29 11:51:23.000000000","message":"Add:\n\n  user_id \u003d resource.URI(\u0027user_id\u0027)","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"cd4db9c212098d5f0ef11060591d24e3ff39acd4","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    allow_commit \u003d True"},{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    #: User object using application credential. *Type: string*"},{"line_number":30,"context_line":"    user \u003d resource.Body(\u0027user\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_79a05391","line":27,"in_reply_to":"7faddb67_9edae6e6","updated":"2019-07-30 10:31:39.000000000","message":"Done. Thanks Monty.","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"79255fbb0219c8fcf8c2db16f4fbb104a4c47c8d","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    user_id \u003d resource.URI(\u0027user_id\u0027)"},{"line_number":30,"context_line":"    #: User object using application credential. *Type: string*"},{"line_number":31,"context_line":"    user \u003d resource.Body(\u0027user\u0027)"},{"line_number":32,"context_line":"    #: The links for the application credential resource."}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_d1fcb373","line":29,"updated":"2019-07-30 19:57:50.000000000","message":"Should probably have a comment the way the other properties do","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b0ec4dc12a1e516db7e448c0687ba77de2560c77","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    user_id \u003d resource.URI(\u0027user_id\u0027)"},{"line_number":30,"context_line":"    #: User object using application credential. *Type: string*"},{"line_number":31,"context_line":"    user \u003d resource.Body(\u0027user\u0027)"},{"line_number":32,"context_line":"    #: The links for the application credential resource."}],"source_content_type":"text/x-python","patch_set":6,"id":"7faddb67_a4bf65a8","line":29,"in_reply_to":"7faddb67_d1fcb373","updated":"2019-07-31 14:48:19.000000000","message":"Done","commit_id":"39db13383425219784633ca96c6ee54a34c4a93d"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    #: User ID using application credential. *Type: string*"},{"line_number":30,"context_line":"    user_id \u003d resource.URI(\u0027user_id\u0027)"},{"line_number":31,"context_line":"    #: User object using application credential. *Type: string*"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_f43be898","line":28,"updated":"2019-10-25 14:10:44.000000000","message":"I\u0027m having a hard time reconciling these fields with what\u0027s listed in the API reference [1]. Am I looking at the right thing?\n\nFor example, I don\u0027t see \u0027user\u0027 or \u0027secret\u0027 in the api-ref; and I don\u0027t see \u0027access_rules\u0027 here.\n\n[1] https://docs.openstack.org/api-ref/identity/v3/index.html?expanded\u003dlist-application-credentials-detail,show-application-credential-details-detail#application-credentials","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b4436f1bdf7af0ffcfaf2e10bcc3fef1006d0c56","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    #: User ID using application credential. *Type: string*"},{"line_number":30,"context_line":"    user_id \u003d resource.URI(\u0027user_id\u0027)"},{"line_number":31,"context_line":"    #: User object using application credential. *Type: string*"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_0e946f36","line":28,"in_reply_to":"3fa7e38b_28a7e352","updated":"2019-10-25 18:49:15.000000000","message":"Roger that.","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"988d15cfda8a1c8c33f93852460841d3b0698880","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    allow_delete \u003d True"},{"line_number":26,"context_line":"    allow_list \u003d True"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    # Properties"},{"line_number":29,"context_line":"    #: User ID using application credential. *Type: string*"},{"line_number":30,"context_line":"    user_id \u003d resource.URI(\u0027user_id\u0027)"},{"line_number":31,"context_line":"    #: User object using application credential. *Type: string*"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_28a7e352","line":28,"in_reply_to":"3fa7e38b_f43be898","updated":"2019-10-25 17:05:02.000000000","message":"user_id is part of the request, it\u0027s not part of any response body because it\u0027s assumed if you knew the ID well enough to make the request then you still know the ID when you get the response. A user is an inseparable part of an application credential.\n\nsecret is mentioned as part of create:\n\nhttps://docs.openstack.org/api-ref/identity/v3/index.html?expanded\u003dcreate-application-credential-detail#create-application-credential\n\nIt will never appear as a response to a GET, but it can be specified during create and will be displayed once as a response to create.\n\nThis patch was created before access rules existed (it\u0027s been ready for review since August). I would request that we go ahead with this now and add access rules in a followup.","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    #: User object using application credential. *Type: string*"},{"line_number":32,"context_line":"    user \u003d resource.Body(\u0027user\u0027)"},{"line_number":33,"context_line":"    #: The links for the application credential resource."},{"line_number":34,"context_line":"    links \u003d resource.Body(\u0027links\u0027)"},{"line_number":35,"context_line":"    #: name of the user. *Type: string*"},{"line_number":36,"context_line":"    name \u003d resource.Body(\u0027name\u0027)"},{"line_number":37,"context_line":"    #: secret that application credential will be created with, if any."}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_5473dc80","line":34,"range":{"start_line":34,"start_character":26,"end_line":34,"end_character":33},"updated":"2019-10-25 14:10:44.000000000","message":"type\u003ddict?","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    #: expire time of application credential. *Type: string*"},{"line_number":43,"context_line":"    expires_at \u003d resource.Body(\u0027expires_at\u0027)"},{"line_number":44,"context_line":"    #: roles of the user. *Type: list*"},{"line_number":45,"context_line":"    roles \u003d resource.Body(\u0027roles\u0027)"},{"line_number":46,"context_line":"    #: restricts the application credential. *Type: boolean*"},{"line_number":47,"context_line":"    unrestricted \u003d resource.Body(\u0027unrestricted\u0027, type\u003dbool)"},{"line_number":48,"context_line":"    #: ID of project. *Type: string*"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_74705873","line":45,"range":{"start_line":45,"start_character":26,"end_line":45,"end_character":33},"updated":"2019-10-25 14:10:44.000000000","message":"type\u003dlist?","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"}],"openstack/tests/functional/identity/v3/test_application_credential.py":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"94500c03c1743678a72d62606325f1f3199a6a52","unresolved":false,"context_lines":[{"line_number":31,"context_line":"                        self.user_id, self.app_creds_id)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def test_get_application_credential(self):"},{"line_number":34,"context_line":"        self.test_create_application_credentials()"},{"line_number":35,"context_line":"        app_cred \u003d self.conn.identity.get_application_credential("},{"line_number":36,"context_line":"            user\u003dself.user_id, application_credential\u003dself.app_creds_id"},{"line_number":37,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_7da7a9bd","line":34,"range":{"start_line":34,"start_character":8,"end_line":34,"end_character":50},"updated":"2019-08-01 21:46:25.000000000","message":"maybe make a _create_application_credential private method and have both tests call that rather than having one test call another test, then you don\u0027t need to persist self.app_creds_id as an object attribute","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b15f7f63798bdc93f9bc9479e87b8261988143ab","unresolved":false,"context_lines":[{"line_number":31,"context_line":"                        self.user_id, self.app_creds_id)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def test_get_application_credential(self):"},{"line_number":34,"context_line":"        self.test_create_application_credentials()"},{"line_number":35,"context_line":"        app_cred \u003d self.conn.identity.get_application_credential("},{"line_number":36,"context_line":"            user\u003dself.user_id, application_credential\u003dself.app_creds_id"},{"line_number":37,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_1378c58d","line":34,"range":{"start_line":34,"start_character":8,"end_line":34,"end_character":50},"in_reply_to":"7faddb67_7da7a9bd","updated":"2019-08-05 10:23:00.000000000","message":"Done","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"94500c03c1743678a72d62606325f1f3199a6a52","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        self.assertEqual(app_cred[\u0027user_id\u0027], self.user_id)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def test_application_credentials(self):"},{"line_number":42,"context_line":"        app_creds \u003d self.conn.identity.application_credentials("},{"line_number":43,"context_line":"            user\u003dself.user_id"},{"line_number":44,"context_line":"        )"},{"line_number":45,"context_line":"        for app_cred in app_creds:"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_5d92ed58","line":42,"updated":"2019-08-01 21:46:25.000000000","message":"Should maybe create an app cred here first rather than relying on another test to run first","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b15f7f63798bdc93f9bc9479e87b8261988143ab","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        self.assertEqual(app_cred[\u0027user_id\u0027], self.user_id)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def test_application_credentials(self):"},{"line_number":42,"context_line":"        app_creds \u003d self.conn.identity.application_credentials("},{"line_number":43,"context_line":"            user\u003dself.user_id"},{"line_number":44,"context_line":"        )"},{"line_number":45,"context_line":"        for app_cred in app_creds:"}],"source_content_type":"text/x-python","patch_set":7,"id":"7faddb67_337b818c","line":42,"in_reply_to":"7faddb67_5d92ed58","updated":"2019-08-05 10:23:00.000000000","message":"Done","commit_id":"870ef23368db33f4efcb3be0ae6b76f239403b85"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":20,"context_line":"        super(TestApplicationCredentials, self).setUp()"},{"line_number":21,"context_line":"        self.user_id \u003d self.operator_cloud.current_user_id"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def _create_application_credentials(self):"},{"line_number":24,"context_line":"        app_creds \u003d self.conn.identity.create_application_credential("},{"line_number":25,"context_line":"            user\u003dself.user_id, name\u003d\u0027app_cred\u0027"},{"line_number":26,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_f48e882c","line":23,"range":{"start_line":23,"start_character":38,"end_line":23,"end_character":39},"updated":"2019-10-25 14:10:44.000000000","message":"nit: I would make this singular","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":21,"context_line":"        self.user_id \u003d self.operator_cloud.current_user_id"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def _create_application_credentials(self):"},{"line_number":24,"context_line":"        app_creds \u003d self.conn.identity.create_application_credential("},{"line_number":25,"context_line":"            user\u003dself.user_id, name\u003d\u0027app_cred\u0027"},{"line_number":26,"context_line":"        )"},{"line_number":27,"context_line":"        self.addCleanup(self.conn.identity.delete_application_credential,"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_947f1416","line":24,"range":{"start_line":24,"start_character":16,"end_line":24,"end_character":17},"updated":"2019-10-25 14:10:44.000000000","message":"and this","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":28,"context_line":"                        self.user_id, app_creds[\u0027id\u0027])"},{"line_number":29,"context_line":"        return app_creds"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    def test_create_application_credentials(self):"},{"line_number":32,"context_line":"        app_creds \u003d self._create_application_credentials()"},{"line_number":33,"context_line":"        self.assertEqual(app_creds[\u0027user_id\u0027], self.user_id)"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_b484900c","line":31,"range":{"start_line":31,"start_character":42,"end_line":31,"end_character":43},"updated":"2019-10-25 14:10:44.000000000","message":"ditto","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    def test_create_application_credentials(self):"},{"line_number":32,"context_line":"        app_creds \u003d self._create_application_credentials()"},{"line_number":33,"context_line":"        self.assertEqual(app_creds[\u0027user_id\u0027], self.user_id)"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    def test_get_application_credential(self):"},{"line_number":36,"context_line":"        app_creds \u003d self._create_application_credentials()"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_34be60ae","line":33,"updated":"2019-10-25 14:10:44.000000000","message":"Some error scenarios would be nice, though I\u0027m not sure how deep your fixture goes...","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":43,"context_line":"    def test_application_credentials(self):"},{"line_number":44,"context_line":"        self._create_application_credentials()"},{"line_number":45,"context_line":"        app_creds \u003d self.conn.identity.application_credentials("},{"line_number":46,"context_line":"            user\u003dself.user_id"},{"line_number":47,"context_line":"        )"},{"line_number":48,"context_line":"        for app_cred in app_creds:"},{"line_number":49,"context_line":"            self.assertEqual(app_cred[\u0027user_id\u0027], self.user_id)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_9494f437","line":46,"range":{"start_line":46,"start_character":22,"end_line":46,"end_character":29},"updated":"2019-10-25 14:10:44.000000000","message":"wouldn\u0027t hurt to add a test with a User object here","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        app_creds \u003d self.conn.identity.application_credentials("},{"line_number":46,"context_line":"            user\u003dself.user_id"},{"line_number":47,"context_line":"        )"},{"line_number":48,"context_line":"        for app_cred in app_creds:"},{"line_number":49,"context_line":"            self.assertEqual(app_cred[\u0027user_id\u0027], self.user_id)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    def test_find_application_credential(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_b499f06d","line":48,"range":{"start_line":48,"start_character":24,"end_line":48,"end_character":33},"updated":"2019-10-25 14:10:44.000000000","message":"should assert that there\u0027s only one","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    def test_find_application_credential(self):"},{"line_number":52,"context_line":"        app_creds \u003d self._create_application_credentials()"},{"line_number":53,"context_line":"        app_cred \u003d self.conn.identity.find_application_credential("},{"line_number":54,"context_line":"            user\u003dself.user_id, name_or_id\u003dapp_creds[\u0027id\u0027]"},{"line_number":55,"context_line":"        )"},{"line_number":56,"context_line":"        self.assertEqual(app_cred[\u0027id\u0027], app_creds[\u0027id\u0027])"},{"line_number":57,"context_line":"        self.assertEqual(app_cred[\u0027user_id\u0027], self.user_id)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_f4bc48bc","line":54,"range":{"start_line":54,"start_character":42,"end_line":54,"end_character":57},"updated":"2019-10-25 14:10:44.000000000","message":"add a test for find-by-name","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b5d7e9ad55fdcf7deadbd9623e31c31b7dfcb331","unresolved":false,"context_lines":[{"line_number":65,"context_line":"                          self.conn.identity.get_application_credential,"},{"line_number":66,"context_line":"                          user\u003dself.user_id,"},{"line_number":67,"context_line":"                          application_credential\u003dapp_creds[\u0027id\u0027]"},{"line_number":68,"context_line":"                          )"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_14efa4b1","line":68,"updated":"2019-10-25 14:10:44.000000000","message":"some tests with ignore_missing\u003dFalse would be nice","commit_id":"7c10ff6041f2f61309b0843062b841b90e2cc8d3"}],"openstack/tests/unit/identity/v3/test_application_credential.py":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        self.assertDictEqual("},{"line_number":46,"context_line":"            {"},{"line_number":47,"context_line":"                \u0027user\u0027: \u0027user\u0027,"},{"line_number":48,"context_line":"                \u0027limit\u0027: \u0027limit\u0027,"},{"line_number":49,"context_line":"                \u0027marker\u0027: \u0027marker\u0027,"},{"line_number":50,"context_line":"            },"},{"line_number":51,"context_line":"            sot._query_mapping._mapping)"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_96ac268d","line":49,"range":{"start_line":48,"start_character":16,"end_line":49,"end_character":35},"updated":"2019-07-09 22:19:54.000000000","message":"We don\u0027t support limit or marker parameters in the query","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        self.assertDictEqual("},{"line_number":46,"context_line":"            {"},{"line_number":47,"context_line":"                \u0027user\u0027: \u0027user\u0027,"},{"line_number":48,"context_line":"                \u0027limit\u0027: \u0027limit\u0027,"},{"line_number":49,"context_line":"                \u0027marker\u0027: \u0027marker\u0027,"},{"line_number":50,"context_line":"            },"},{"line_number":51,"context_line":"            sot._query_mapping._mapping)"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_46a4b908","line":49,"range":{"start_line":48,"start_character":16,"end_line":49,"end_character":35},"in_reply_to":"7faddb67_96ac268d","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"}],"releasenotes/notes/add-application-credentials-abab9106dea10c11.yaml":[{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"054348e7715069ecf9dfc8bcabbcaba5b7397b12","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added the CRUD support for application credentials."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_76096a93","line":4,"updated":"2019-07-09 22:19:54.000000000","message":"Maybe include a link to the docs: https://docs.openstack.org/keystone/latest/user/application_credentials.html","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"b044b7c7e32afb21b2e81f7174c76a647f72e05a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Added the CRUD support for application credentials."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_66a7750d","line":4,"in_reply_to":"7faddb67_76096a93","updated":"2019-07-26 13:58:42.000000000","message":"Done","commit_id":"16af7c3980fcef78b5c6b42e6d2b3d4b7cfa3669"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"9d5a60827ed9fb5025edc132cba66ae20abd1a1c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    [`\u003chttps://docs.openstack.org/keystone/latest/user/application_credentials.html\u003e`_]"},{"line_number":5,"context_line":"    Added the CRUD support for application credentials."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7faddb67_1b359ada","line":4,"updated":"2019-07-30 01:41:33.000000000","message":"This doesn\u0027t read very pretty, I would just create the link inline, like\n\n Added CRUD support for `application credentials\n \u003chttps://docs.openstack.org/keystone/latest/user/application_credentials.html\u003e`_.","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"},{"author":{"_account_id":27621,"name":"Vishakha Agarwal","email":"agarwalvishakha18@gmail.com","username":"Vishakha"},"change_message_id":"cd4db9c212098d5f0ef11060591d24e3ff39acd4","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    [`\u003chttps://docs.openstack.org/keystone/latest/user/application_credentials.html\u003e`_]"},{"line_number":5,"context_line":"    Added the CRUD support for application credentials."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7faddb67_59cc7769","line":4,"in_reply_to":"7faddb67_1b359ada","updated":"2019-07-30 10:31:39.000000000","message":"Done","commit_id":"cb73e01799a093a504263cd4cf5a151c5b807df3"}]}
