)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"4cbdc4b159f1d400bddec7b917882a83a45f488d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Alvaro Lopez Garcia \u003caloga@ifca.unican.es\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-11-12 14:26:11 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Do not name variables as builtins."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"According to HACKING.rst we should not name anything as a builtin."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAATn%2F%2FPBI%3D","line":7,"updated":"2013-11-12 16:12:07.000000000","message":"Please remove the period.  The first line of a commit message should not have one.","commit_id":"8f95c84159c46941435202d93487120167efcb45"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"4a0cc978184a5c0a2decdae3306e7c3f1729fd28","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Alvaro Lopez Garcia \u003caloga@ifca.unican.es\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-11-12 14:26:11 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Do not name variables as builtins."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"According to HACKING.rst we should not name anything as a builtin."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAATn%2F%2FLtE%3D","line":7,"in_reply_to":"AAAATn%2F%2FPBI%3D","updated":"2013-11-13 08:59:46.000000000","message":"Done","commit_id":"8f95c84159c46941435202d93487120167efcb45"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"ebde58a551025a51d3f48fa06815d39fa955e053","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Do not name variables as builtins."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"According to HACKING.rst we should not name anything as a builtin."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I0f34b252ea395b6c87e6738f334fbae9e194134b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAATn%2F%2FOfM%3D","line":9,"updated":"2013-11-12 16:06:25.000000000","message":"(NIT): Add a link to the rule mentioned? \n\nhttps://github.com/openstack/keystone/blob/master/HACKING.rst#general\n\nGuideline #6","commit_id":"8f95c84159c46941435202d93487120167efcb45"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"4a0cc978184a5c0a2decdae3306e7c3f1729fd28","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Do not name variables as builtins."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"According to HACKING.rst we should not name anything as a builtin."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I0f34b252ea395b6c87e6738f334fbae9e194134b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"AAAATn%2F%2FLtA%3D","line":9,"in_reply_to":"AAAATn%2F%2FOfM%3D","updated":"2013-11-13 08:59:46.000000000","message":"Done","commit_id":"8f95c84159c46941435202d93487120167efcb45"}],"keystone/assignment/backends/ldap.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":183,"context_line":""},{"line_number":184,"context_line":"    def delete_project(self, tenant_id):"},{"line_number":185,"context_line":"        if self.project.subtree_delete_enabled:"},{"line_number":186,"context_line":"            self.project.deleteTree(tenant_id)"},{"line_number":187,"context_line":"        else:"},{"line_number":188,"context_line":"            tenant_dn \u003d self.project._id_to_dn(tenant_id)"},{"line_number":189,"context_line":"            self.role.roles_delete_subtree_by_project(tenant_dn)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa%2FM%3D","line":186,"updated":"2013-11-06 16:18:25.000000000","message":"Do we not use this method? This couldn\u0027t have worked before.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"ac238dcbb774ab7560077d88510903dd261830cc","unresolved":false,"context_lines":[{"line_number":183,"context_line":""},{"line_number":184,"context_line":"    def delete_project(self, tenant_id):"},{"line_number":185,"context_line":"        if self.project.subtree_delete_enabled:"},{"line_number":186,"context_line":"            self.project.deleteTree(tenant_id)"},{"line_number":187,"context_line":"        else:"},{"line_number":188,"context_line":"            tenant_dn \u003d self.project._id_to_dn(tenant_id)"},{"line_number":189,"context_line":"            self.role.roles_delete_subtree_by_project(tenant_dn)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FP8M%3D","line":186,"in_reply_to":"AAAATn%2F%2Fa%2FM%3D","updated":"2013-11-12 11:14:12.000000000","message":"Yes, indeed it seems this was broken.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":245,"context_line":"            # role support which will be added under bug 1101287"},{"line_number":246,"context_line":"            query \u003d \u0027(objectClass\u003d%s)\u0027 % self.group.object_class"},{"line_number":247,"context_line":"            dn \u003d None"},{"line_number":248,"context_line":"            dn \u003d self.group._id_to_dn(group_id)"},{"line_number":249,"context_line":"            if dn:"},{"line_number":250,"context_line":"                try:"},{"line_number":251,"context_line":"                    conn \u003d self.group.get_connection()"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa%2FI%3D","line":248,"updated":"2013-11-06 16:18:25.000000000","message":"...or this one?","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"ac238dcbb774ab7560077d88510903dd261830cc","unresolved":false,"context_lines":[{"line_number":245,"context_line":"            # role support which will be added under bug 1101287"},{"line_number":246,"context_line":"            query \u003d \u0027(objectClass\u003d%s)\u0027 % self.group.object_class"},{"line_number":247,"context_line":"            dn \u003d None"},{"line_number":248,"context_line":"            dn \u003d self.group._id_to_dn(group_id)"},{"line_number":249,"context_line":"            if dn:"},{"line_number":250,"context_line":"                try:"},{"line_number":251,"context_line":"                    conn \u003d self.group.get_connection()"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FP78%3D","line":248,"in_reply_to":"AAAATn%2F%2Fa%2FI%3D","updated":"2013-11-12 11:14:12.000000000","message":"Yes, this is weird. I will check the coverage for this code.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"}],"keystone/common/ldap/core.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":17,"context_line":"import os.path"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import ldap"},{"line_number":20,"context_line":"import ldap.filter"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from keystone.common.ldap import fakeldap"},{"line_number":23,"context_line":"from keystone import exception"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa%2B8%3D","line":20,"updated":"2013-11-06 16:18:25.000000000","message":"++ Love it!","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":332,"context_line":"            conn.unbind_s()"},{"line_number":333,"context_line":"        return values"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    def _ldap_get(self, object_id, filter\u003dNone):"},{"line_number":336,"context_line":"        conn \u003d self.get_connection()"},{"line_number":337,"context_line":"        query \u003d (\u0027(\u0026(%(id_attr)s\u003d%(id)s)\u0027"},{"line_number":338,"context_line":"                 \u0027%(filter)s\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa%2Bs%3D","line":335,"updated":"2013-11-06 16:18:25.000000000","message":"Keeping filter here?","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"ac238dcbb774ab7560077d88510903dd261830cc","unresolved":false,"context_lines":[{"line_number":332,"context_line":"            conn.unbind_s()"},{"line_number":333,"context_line":"        return values"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    def _ldap_get(self, object_id, filter\u003dNone):"},{"line_number":336,"context_line":"        conn \u003d self.get_connection()"},{"line_number":337,"context_line":"        query \u003d (\u0027(\u0026(%(id_attr)s\u003d%(id)s)\u0027"},{"line_number":338,"context_line":"                 \u0027%(filter)s\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FP7M%3D","line":335,"in_reply_to":"AAAATn%2F%2Fa%2Bs%3D","updated":"2013-11-12 11:14:12.000000000","message":"Done","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":368,"context_line":"        finally:"},{"line_number":369,"context_line":"            conn.unbind_s()"},{"line_number":370,"context_line":""},{"line_number":371,"context_line":"    def get(self, object_id, filter\u003dNone):"},{"line_number":372,"context_line":"        res \u003d self._ldap_get(object_id, filter)"},{"line_number":373,"context_line":"        if res is None:"},{"line_number":374,"context_line":"            raise self._not_found(object_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa%2BQ%3D","line":371,"updated":"2013-11-06 16:18:25.000000000","message":"filter here too.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"ac238dcbb774ab7560077d88510903dd261830cc","unresolved":false,"context_lines":[{"line_number":368,"context_line":"        finally:"},{"line_number":369,"context_line":"            conn.unbind_s()"},{"line_number":370,"context_line":""},{"line_number":371,"context_line":"    def get(self, object_id, filter\u003dNone):"},{"line_number":372,"context_line":"        res \u003d self._ldap_get(object_id, filter)"},{"line_number":373,"context_line":"        if res is None:"},{"line_number":374,"context_line":"            raise self._not_found(object_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FP7I%3D","line":371,"in_reply_to":"AAAATn%2F%2Fa%2BQ%3D","updated":"2013-11-12 11:14:12.000000000","message":"Done","commit_id":"190147d13433efce253df1d741172a3f5b99723c"}],"keystone/common/sql/core.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":307,"context_line":"                return method(*args, **kwargs)"},{"line_number":308,"context_line":"            except (IntegrityError, OperationalError) as e:"},{"line_number":309,"context_line":"                raise exception.Conflict(type\u003dconflict_type,"},{"line_number":310,"context_line":"                                         details\u003dstr(e.orig))"},{"line_number":311,"context_line":"        return wrapper"},{"line_number":312,"context_line":"    return decorator"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa90%3D","line":310,"updated":"2013-11-06 16:18:25.000000000","message":"Looks like you need another space here to get it to line up.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"}],"keystone/openstack/common/db/sqlalchemy/session.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d320a335959f4ce6448774d76dcbf1acadf8b1f7","unresolved":false,"context_lines":[{"line_number":771,"context_line":"            if index \u003d\u003d -1:"},{"line_number":772,"context_line":"                continue"},{"line_number":773,"context_line":"            stack +\u003d \"File:%s:%s Method:%s() Line:%s | \" \\"},{"line_number":774,"context_line":"                     % (file[index:], line, method, function)"},{"line_number":775,"context_line":""},{"line_number":776,"context_line":"        # strip trailing \" | \" from stack"},{"line_number":777,"context_line":"        if stack:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2Fa88%3D","line":774,"updated":"2013-11-06 16:18:25.000000000","message":"Missed one, but I don\u0027t think you want to change this file here.  It should be changed in oslo first and pulled in once it merges.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"},{"author":{"_account_id":91,"name":"Alvaro","email":"aloga@ifca.unican.es","username":"aloga"},"change_message_id":"ac238dcbb774ab7560077d88510903dd261830cc","unresolved":false,"context_lines":[{"line_number":771,"context_line":"            if index \u003d\u003d -1:"},{"line_number":772,"context_line":"                continue"},{"line_number":773,"context_line":"            stack +\u003d \"File:%s:%s Method:%s() Line:%s | \" \\"},{"line_number":774,"context_line":"                     % (file[index:], line, method, function)"},{"line_number":775,"context_line":""},{"line_number":776,"context_line":"        # strip trailing \" | \" from stack"},{"line_number":777,"context_line":"        if stack:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FP7A%3D","line":774,"in_reply_to":"AAAATn%2F%2Fa88%3D","updated":"2013-11-12 11:14:12.000000000","message":"Yes, I didn\u0027t change it here.","commit_id":"190147d13433efce253df1d741172a3f5b99723c"}]}
