)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"6e9b18897d03b84a122d4716e20008d76a9e92bc","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Consistently support kwargs across all v3 CRUD Manager ops"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Co-Authored-By: Saju Madhavan \u003csajuptpm@gmail.com\u003e"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Closes-Bug: 1047867"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implements: extensible-crud-manager-operations"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAUH%2F%2FhG4%3D","line":10,"updated":"2014-01-13 01:18:14.000000000","message":"drop this whitespace","commit_id":"71e1e55a4a8e4cae62f46e5d4caa64eed53191b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"6e9b18897d03b84a122d4716e20008d76a9e92bc","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Co-Authored-By: Saju Madhavan \u003csajuptpm@gmail.com\u003e"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Closes-Bug: 1047867"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implements: extensible-crud-manager-operations"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I64e11bcf3797eb84e4695605daea9749259d78ec"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAUH%2F%2FhG0%3D","line":12,"updated":"2014-01-13 01:18:14.000000000","message":"drop this whitespace","commit_id":"71e1e55a4a8e4cae62f46e5d4caa64eed53191b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"b102923cf07bc1533e04f8c12ec4375d8e7208bc","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Closes-Bug: 1047867"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implements: extensible-crud-manager-operations"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I64e11bcf3797eb84e4695605daea9749259d78ec"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAUH%2F%2FhIQ%3D","line":13,"updated":"2014-01-13 01:17:29.000000000","message":"link the blueprint (you need to use the word blueprint)","commit_id":"71e1e55a4a8e4cae62f46e5d4caa64eed53191b8"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"6e9b18897d03b84a122d4716e20008d76a9e92bc","unresolved":false,"context_lines":[{"line_number":11,"context_line":"Closes-Bug: 1047867"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Implements: extensible-crud-manager-operations"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I64e11bcf3797eb84e4695605daea9749259d78ec"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAUH%2F%2FhGw%3D","line":14,"updated":"2014-01-13 01:18:14.000000000","message":"drop this whitespace","commit_id":"71e1e55a4a8e4cae62f46e5d4caa64eed53191b8"}],"keystoneclient/v3/contrib/trusts.py":[{"author":{"_account_id":4328,"name":"Steven Hardy","email":"steven.hardy@suse.com","username":"shardy"},"change_message_id":"f878b27a1f4e7988a74a24f6c19e0022bdd02e6e","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        # been passed positionally."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        return super(TrustManager, self).list(trustee_user\u003dtrustee_user,"},{"line_number":82,"context_line":"                                              trustor_user\u003dtrustor_user,"},{"line_number":83,"context_line":"                                              **kwargs)"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def get(self, trust):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B01E%3D","line":82,"updated":"2014-01-21 17:41:22.000000000","message":"The kwargs keys here are wrong, removing the \"_id\" means the filter no longer works and e.g passing list(trustor_user\u003d\u003cuser id\u003e) returns an empty list where it used to return content.\n\nSo this is a backwards incompatible change.\n\nThe tests don\u0027t catch this error, ref https://review.openstack.org/#/c/65728/","commit_id":"442a89fae398982fbdfb9322f1e9be4085ed6ff3"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"0ef8197b805d8c316cc71bc77c566446870c3dcc","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        # been passed positionally."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        return super(TrustManager, self).list(trustee_user\u003dtrustee_user,"},{"line_number":82,"context_line":"                                              trustor_user\u003dtrustor_user,"},{"line_number":83,"context_line":"                                              **kwargs)"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def get(self, trust):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B0fE%3D","line":82,"in_reply_to":"AAAAUH%2F%2B01E%3D","updated":"2014-01-21 19:19:28.000000000","message":"ah, damn. \n\nYes, i was thinking that the _filter_kwargs would convert a trustee_user\u003dobject parameter into trustee_user_id\u003dobject.id parameter. I forgot the situation where you would pass id directly to the function. \n\nIdeally we would have just use **kwargs initially here and people would have passed trustee_user_id from the start - but you are right and that is a backwards incompatible change. \n\nOk, can we change this back and just additionally pass kwargs through?","commit_id":"442a89fae398982fbdfb9322f1e9be4085ed6ff3"}],"keystoneclient/v3/credentials.py":[{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"461949fde72e807780c851a0fa3d645f7bbefc36","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class Credential(base.Resource):"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    \"\"\"Represents an Identity credential."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    Attributes:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2F078%3D","line":21,"updated":"2014-01-08 00:35:45.000000000","message":"don\u0027t change unrelated whitespace","commit_id":"46f3ef00dbe744c72e001e453d2d52a06677594c"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"461949fde72e807780c851a0fa3d645f7bbefc36","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"class CredentialManager(base.CrudManager):"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    \"\"\"Manager class for manipulating Identity credentials.\"\"\""},{"line_number":34,"context_line":"    resource_class \u003d Credential"},{"line_number":35,"context_line":"    collection_key \u003d \u0027credentials\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2F07w%3D","line":32,"updated":"2014-01-08 00:35:45.000000000","message":"whitespace","commit_id":"46f3ef00dbe744c72e001e453d2d52a06677594c"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"91eb48875c05907a780b987e45b1e4a4ae936e98","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        If ``**kwargs`` are provided, then filter credentials with"},{"line_number":66,"context_line":"        attributes matching ``**kwargs``."},{"line_number":67,"context_line":"        \"\"\""},{"line_number":68,"context_line":"        return super(CredentialManager, self).list(**kwargs)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def update(self, credential, user, type\u003dNone, blob\u003dNone, data\u003dNone,"},{"line_number":71,"context_line":"               project\u003dNone, **kwargs):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2FJYA%3D","line":68,"updated":"2014-01-17 00:57:47.000000000","message":"this function is redundant, it may make sense to leave it as there are others that do a similar thing.","commit_id":"442a89fae398982fbdfb9322f1e9be4085ed6ff3"}],"keystoneclient/v3/domains.py":[{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"461949fde72e807780c851a0fa3d645f7bbefc36","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class Domain(base.Resource):"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    \"\"\"Represents an Identity domain."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    Attributes:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAUH%2F%2F07s%3D","line":21,"updated":"2014-01-08 00:35:45.000000000","message":"ws","commit_id":"46f3ef00dbe744c72e001e453d2d52a06677594c"},{"author":{"_account_id":9276,"name":"David Charles Kennedy","email":"david.c.kennedy@hpe.com","username":"darfed"},"change_message_id":"930320f029d7e79f1b5d117a294e408474bc6e8f","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    def list(self, **kwargs):"},{"line_number":48,"context_line":"        \"\"\"List domains."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"        If ``**kwargs`` are provided, then filter domains with"},{"line_number":51,"context_line":"        attributes matching ``**kwargs``."},{"line_number":52,"context_line":"        \"\"\""},{"line_number":53,"context_line":"        return super(DomainManager, self).list(**kwargs)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FnGg%3D","line":50,"updated":"2014-01-10 14:19:27.000000000","message":"I\u0027m not sure this claim should be made.  In the client no claim can be made reagrding what is to be done with the kwargs.  I think this comment could at most be \u0027**kwargs allows filter criteria to be passed where supported by the server\u0027","commit_id":"207c4ffb0d5a1322dee17aaa73f79fac28a0f7e0"}],"keystoneclient/v3/policies.py":[{"author":{"_account_id":9276,"name":"David Charles Kennedy","email":"david.c.kennedy@hpe.com","username":"darfed"},"change_message_id":"930320f029d7e79f1b5d117a294e408474bc6e8f","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def list(self, **kwargs):"},{"line_number":61,"context_line":"        \"\"\"List policies."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"        If ``**kwargs`` are provided, then filter policies with"},{"line_number":64,"context_line":"        attributes matching ``**kwargs``."},{"line_number":65,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FnFw%3D","line":62,"updated":"2014-01-10 14:19:27.000000000","message":"See my comment in domains - can we change this comment to \u0027**kwargs allows filter criteria to be passed where supported by the server\u0027?","commit_id":"207c4ffb0d5a1322dee17aaa73f79fac28a0f7e0"}]}
