)]}'
{"neutron/tests/base.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":175,"context_line":"            return"},{"line_number":176,"context_line":"        self.fail(\u0027Execution of this test timed out\u0027)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    def assertOrderedEqual(self, expected, actual):"},{"line_number":179,"context_line":"        expect_val \u003d self.sort_dict_lists(expected)"},{"line_number":180,"context_line":"        actual_val \u003d self.sort_dict_lists(actual)"},{"line_number":181,"context_line":"        self.assertEqual(expect_val, actual_val)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_837e5368","line":178,"updated":"2014-08-24 02:33:21.000000000","message":"Docstring?","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":175,"context_line":"            return"},{"line_number":176,"context_line":"        self.fail(\u0027Execution of this test timed out\u0027)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    def assertOrderedEqual(self, expected, actual):"},{"line_number":179,"context_line":"        expect_val \u003d self.sort_dict_lists(expected)"},{"line_number":180,"context_line":"        actual_val \u003d self.sort_dict_lists(actual)"},{"line_number":181,"context_line":"        self.assertEqual(expect_val, actual_val)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_2ff47e59","line":178,"in_reply_to":"1abeadc6_837e5368","updated":"2014-08-24 15:52:08.000000000","message":"This change doesn\u0027t touch this.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":176,"context_line":"        self.fail(\u0027Execution of this test timed out\u0027)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    def assertOrderedEqual(self, expected, actual):"},{"line_number":179,"context_line":"        expect_val \u003d self.sort_dict_lists(expected)"},{"line_number":180,"context_line":"        actual_val \u003d self.sort_dict_lists(actual)"},{"line_number":181,"context_line":"        self.assertEqual(expect_val, actual_val)"},{"line_number":182,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_637bf77a","line":179,"updated":"2014-08-24 02:33:21.000000000","message":"May want to add some tests that the expected and actual are dict.\n\nShould have test for actual and/or expected being None.\n\nShould there be a quick check at the start for lengths being the same?","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":176,"context_line":"        self.fail(\u0027Execution of this test timed out\u0027)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    def assertOrderedEqual(self, expected, actual):"},{"line_number":179,"context_line":"        expect_val \u003d self.sort_dict_lists(expected)"},{"line_number":180,"context_line":"        actual_val \u003d self.sort_dict_lists(actual)"},{"line_number":181,"context_line":"        self.assertEqual(expect_val, actual_val)"},{"line_number":182,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_4fe7faab","line":179,"in_reply_to":"1abeadc6_637bf77a","updated":"2014-08-24 15:52:08.000000000","message":"ditto","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"}],"neutron/tests/unit/test_db_plugin.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":1814,"context_line":"                                          network[\u0027network\u0027][\u0027id\u0027])"},{"line_number":1815,"context_line":"            req.environ[\u0027neutron.context\u0027] \u003d context.Context(\u0027u\u0027, net_owner)"},{"line_number":1816,"context_line":"            res \u003d req.get_response(self.api)"},{"line_number":1817,"context_line":"            self.assertEqual(res.status_int, webob.exc.HTTPForbidden.code)"},{"line_number":1818,"context_line":""},{"line_number":1819,"context_line":"    def test_update_network_with_subnet_set_shared(self):"},{"line_number":1820,"context_line":"        with self.network(shared\u003dFalse) as network:"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_c3c12b81","line":1817,"updated":"2014-08-24 02:33:21.000000000","message":"should have expected, actual for assert","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":1814,"context_line":"                                          network[\u0027network\u0027][\u0027id\u0027])"},{"line_number":1815,"context_line":"            req.environ[\u0027neutron.context\u0027] \u003d context.Context(\u0027u\u0027, net_owner)"},{"line_number":1816,"context_line":"            res \u003d req.get_response(self.api)"},{"line_number":1817,"context_line":"            self.assertEqual(res.status_int, webob.exc.HTTPForbidden.code)"},{"line_number":1818,"context_line":""},{"line_number":1819,"context_line":"    def test_update_network_with_subnet_set_shared(self):"},{"line_number":1820,"context_line":"        with self.network(shared\u003dFalse) as network:"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_6feaf674","line":1817,"in_reply_to":"1abeadc6_c3c12b81","updated":"2014-08-24 15:52:08.000000000","message":"This change doesn\u0027t touch this line.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":3041,"context_line":"                gateway_ip\u003dgateway_ip, cidr\u003dcidr, ip_version\u003d6,"},{"line_number":3042,"context_line":"                ipv6_ra_mode\u003dconstants.DHCPV6_STATEFUL,"},{"line_number":3043,"context_line":"                ipv6_address_mode\u003dconstants.DHCPV6_STATEFUL)"},{"line_number":3044,"context_line":"        self.assertEqual(ctx_manager.exception.code,"},{"line_number":3045,"context_line":"                         webob.exc.HTTPClientError.code)"},{"line_number":3046,"context_line":""},{"line_number":3047,"context_line":"    def test_create_subnet_ipv6_out_of_cidr_lla(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_233adf98","line":3044,"updated":"2014-08-24 02:33:21.000000000","message":"expected, actual","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":3041,"context_line":"                gateway_ip\u003dgateway_ip, cidr\u003dcidr, ip_version\u003d6,"},{"line_number":3042,"context_line":"                ipv6_ra_mode\u003dconstants.DHCPV6_STATEFUL,"},{"line_number":3043,"context_line":"                ipv6_address_mode\u003dconstants.DHCPV6_STATEFUL)"},{"line_number":3044,"context_line":"        self.assertEqual(ctx_manager.exception.code,"},{"line_number":3045,"context_line":"                         webob.exc.HTTPClientError.code)"},{"line_number":3046,"context_line":""},{"line_number":3047,"context_line":"    def test_create_subnet_ipv6_out_of_cidr_lla(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_8f04b24a","line":3044,"in_reply_to":"1abeadc6_233adf98","updated":"2014-08-24 15:52:08.000000000","message":"ditto.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"}],"neutron/tests/unit/test_extension_pnet.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":178,"context_line":"        tenant_id \u003d \u0027no_admin\u0027"},{"line_number":179,"context_line":"        ctx \u003d context.Context(\u0027\u0027, tenant_id, is_admin\u003dFalse)"},{"line_number":180,"context_line":"        res, _1, _2 \u003d self._put_network_with_provider_attrs(ctx, True)"},{"line_number":181,"context_line":"        self.assertEqual(res.status_int, web_exc.HTTPForbidden.code)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_8343b311","line":181,"updated":"2014-08-24 02:33:21.000000000","message":"expected, actual","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":178,"context_line":"        tenant_id \u003d \u0027no_admin\u0027"},{"line_number":179,"context_line":"        ctx \u003d context.Context(\u0027\u0027, tenant_id, is_admin\u003dFalse)"},{"line_number":180,"context_line":"        res, _1, _2 \u003d self._put_network_with_provider_attrs(ctx, True)"},{"line_number":181,"context_line":"        self.assertEqual(res.status_int, web_exc.HTTPForbidden.code)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_cffa2a42","line":181,"in_reply_to":"1abeadc6_8343b311","updated":"2014-08-24 15:52:08.000000000","message":"This change doesn\u0027t touch this line.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"}],"neutron/tests/unit/test_l3_plugin.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":1334,"context_line":"        self, expected_status\u003dl3_constants.FLOATINGIP_STATUS_ACTIVE):"},{"line_number":1335,"context_line":"        with self.floatingip_with_assoc() as fip:"},{"line_number":1336,"context_line":"            body \u003d self._show(\u0027floatingips\u0027, fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":1337,"context_line":"            self.assertEqual(body[\u0027floatingip\u0027][\u0027id\u0027],"},{"line_number":1338,"context_line":"                             fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":1339,"context_line":"            self.assertEqual(body[\u0027floatingip\u0027][\u0027port_id\u0027],"},{"line_number":1340,"context_line":"                             fip[\u0027floatingip\u0027][\u0027port_id\u0027])"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_034fa334","line":1337,"updated":"2014-08-24 02:33:21.000000000","message":"for these two... expected, actual ordering.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":1334,"context_line":"        self, expected_status\u003dl3_constants.FLOATINGIP_STATUS_ACTIVE):"},{"line_number":1335,"context_line":"        with self.floatingip_with_assoc() as fip:"},{"line_number":1336,"context_line":"            body \u003d self._show(\u0027floatingips\u0027, fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":1337,"context_line":"            self.assertEqual(body[\u0027floatingip\u0027][\u0027id\u0027],"},{"line_number":1338,"context_line":"                             fip[\u0027floatingip\u0027][\u0027id\u0027])"},{"line_number":1339,"context_line":"            self.assertEqual(body[\u0027floatingip\u0027][\u0027port_id\u0027],"},{"line_number":1340,"context_line":"                             fip[\u0027floatingip\u0027][\u0027port_id\u0027])"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_eff52651","line":1337,"in_reply_to":"1abeadc6_034fa334","updated":"2014-08-24 15:52:08.000000000","message":"This change doesn\u0027t touch this line.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"}],"neutron/tests/unit/test_l3_schedulers.py":[{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        rid \u003d router[\u0027router\u0027][\u0027id\u0027]"},{"line_number":208,"context_line":"        scheduler.bind_router(ctx, rid, agent)"},{"line_number":209,"context_line":"        results \u003d (session.query(db).filter_by(router_id\u003drid).all())"},{"line_number":210,"context_line":"        self.assertTrue(len(results) \u003e 0)"},{"line_number":211,"context_line":"        self.assertIn(agent.id, [bind.l3_agent_id for bind in results])"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"    def test_bind_new_router(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_c3f68bd6","line":210,"updated":"2014-08-24 02:33:21.000000000","message":"Could the query filter by the l3_agent_id, get first(), and then assert that  it is not None?","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        rid \u003d router[\u0027router\u0027][\u0027id\u0027]"},{"line_number":208,"context_line":"        scheduler.bind_router(ctx, rid, agent)"},{"line_number":209,"context_line":"        results \u003d (session.query(db).filter_by(router_id\u003drid).all())"},{"line_number":210,"context_line":"        self.assertTrue(len(results) \u003e 0)"},{"line_number":211,"context_line":"        self.assertIn(agent.id, [bind.l3_agent_id for bind in results])"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"    def test_bind_new_router(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_2f9b9e18","line":210,"in_reply_to":"1abeadc6_c3f68bd6","updated":"2014-08-24 15:52:08.000000000","message":"This change doesn\u0027t touch this line.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":424,"context_line":"                       \u0027.get_ports\u0027, return_value\u003d[dvr_port])):"},{"line_number":425,"context_line":"            router_id \u003d self.dut.get_dvr_routers_by_vmportid(self.adminContext,"},{"line_number":426,"context_line":"                                                             dvr_port[\u0027id\u0027])"},{"line_number":427,"context_line":"            self.assertEqual(router_id.pop(), r1[\u0027id\u0027])"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    def test_get_subnet_ids_on_router(self):"},{"line_number":430,"context_line":"        dvr_port \u003d {"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_03fde3b0","line":427,"updated":"2014-08-24 02:33:21.000000000","message":"expected, actual","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":448,"context_line":"                       \u0027.get_ports\u0027, return_value\u003d[dvr_port])):"},{"line_number":449,"context_line":"            sub_ids \u003d self.dut.get_subnet_ids_on_router(self.adminContext,"},{"line_number":450,"context_line":"                                                        r1[\u0027id\u0027])"},{"line_number":451,"context_line":"            self.assertEqual(sub_ids.pop(),"},{"line_number":452,"context_line":"                            dvr_port.get(\u0027fixed_ips\u0027).pop(0).get(\u0027subnet_id\u0027))"},{"line_number":453,"context_line":""},{"line_number":454,"context_line":"    def test_check_vm_exists_on_subnet(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_232f3f40","line":451,"updated":"2014-08-24 02:33:21.000000000","message":"ditto","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"}],"neutron/tests/unit/testlib_plugin.py":[{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"e8a119dabda3480f0d8aa7195598fc66ee0c88ef","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        nm.clear_instance()"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"        if check_plugin_deallocation:"},{"line_number":51,"context_line":"            gc.collect()"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"            #TODO(marun) Ensure that mocks are deallocated?"},{"line_number":54,"context_line":"            if plugin() and not isinstance(plugin(), mock.Base):"}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_f9ba5ab8","line":51,"updated":"2014-07-29 00:08:07.000000000","message":"some imports needs to be moved into this module too.","commit_id":"d8dfbbad9b118ff67beb5d0b7edf0737ac228ace"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"b19d5da58ca679b8db3d65a1f0784b4bc564aaa9","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        nm.clear_instance()"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"        if check_plugin_deallocation:"},{"line_number":51,"context_line":"            gc.collect()"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"            #TODO(marun) Ensure that mocks are deallocated?"},{"line_number":54,"context_line":"            if plugin() and not isinstance(plugin(), mock.Base):"}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_8e300beb","line":51,"in_reply_to":"baada198_f9ba5ab8","updated":"2014-07-29 21:09:22.000000000","message":"Done","commit_id":"d8dfbbad9b118ff67beb5d0b7edf0737ac228ace"},{"author":{"_account_id":6524,"name":"Henry Gessau","email":"HenryG@gessau.net","username":"gessau"},"change_message_id":"dfc5affd6ca297791e182be5df55fe2d4f624673","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2014 OpenStack Foundation."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":6,"id":"baada198_c09c87c2","line":1,"updated":"2014-07-30 00:33:52.000000000","message":"Remove this if a new patch set is needed.","commit_id":"56ca4c24a8744389eb219e3629c6d6265805c415"},{"author":{"_account_id":6659,"name":"Paul Michali","email":"pc@michali.net","username":"pcm"},"change_message_id":"0623f46e0eace42a2d83eb7ade6ede19cdbb87de","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2014 OpenStack Foundation."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_43327ba7","line":1,"updated":"2014-08-24 02:33:21.000000000","message":"remove.","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"187ceb7f49fd316c6da7ceb156bdf19d4826cd21","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2014 OpenStack Foundation."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":8,"id":"1abeadc6_4f9e1a08","line":1,"in_reply_to":"1abeadc6_43327ba7","updated":"2014-08-24 15:52:08.000000000","message":"Done","commit_id":"f0a97618c96332a26312c6b6b7564998b798f4eb"},{"author":{"_account_id":12737,"name":"Jacek Swiderski","email":"jacek.swiderski@codilime.com","username":"Altran"},"change_message_id":"bc2ff40103f0d0ca49330c265864b568781969ba","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import gc"},{"line_number":17,"context_line":"import mock"},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":"import weakref"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1abeadc6_4b2a80e8","line":17,"updated":"2014-08-25 09:31:23.000000000","message":"nit: mock is not part of stdlib (at least in python 2) \n http://docs.openstack.org/developer/hacking/#import-order-template","commit_id":"613d789a36e43f26f141539b6b794f341a3419a9"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"478d36cb30feab48d0385fbee554e48a696ffc99","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import gc"},{"line_number":17,"context_line":"import mock"},{"line_number":18,"context_line":"import os"},{"line_number":19,"context_line":"import weakref"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"1abeadc6_6e5d85ec","line":17,"in_reply_to":"1abeadc6_4b2a80e8","updated":"2014-08-25 12:44:59.000000000","message":"Done","commit_id":"613d789a36e43f26f141539b6b794f341a3419a9"},{"author":{"_account_id":1923,"name":"Mohammad Banikazemi","email":"mbanikazemi@gmail.com","username":"mb-s"},"change_message_id":"edb65a20743b94c0691db624be874b34a4ed688c","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        if not nm.has_instance():"},{"line_number":36,"context_line":"            return"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        #TODO(marun) Fix plugins that do not properly initialize notifiers"},{"line_number":39,"context_line":"        agentschedulers_db.AgentSchedulerDbMixin.agent_notifiers \u003d {}"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        # Perform a check for deallocation only if explicitly"}],"source_content_type":"text/x-python","patch_set":9,"id":"1abeadc6_f61b3ec8","line":38,"updated":"2014-08-24 20:48:04.000000000","message":"Nit: Missing space after #\n\nhttp://legacy.python.org/dev/peps/pep-0008/#block-comments","commit_id":"613d789a36e43f26f141539b6b794f341a3419a9"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"4259196941ad9b0140a4e24620b0f77b6300f722","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        if not nm.has_instance():"},{"line_number":36,"context_line":"            return"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        #TODO(marun) Fix plugins that do not properly initialize notifiers"},{"line_number":39,"context_line":"        agentschedulers_db.AgentSchedulerDbMixin.agent_notifiers \u003d {}"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        # Perform a check for deallocation only if explicitly"}],"source_content_type":"text/x-python","patch_set":9,"id":"1abeadc6_597b437b","line":38,"in_reply_to":"1abeadc6_f61b3ec8","updated":"2014-08-24 21:59:20.000000000","message":"Duly noted, though searching our codebase turns up 35 other instances of this usage (3 of them mine) vs 164 that correctly use \u0027# TODO\u0027.  I personally don\u0027t want to spend time nitting strictly mechanical issues - I\u0027ll wait until someone updates the hacking check to enforce it:\n\nhttps://github.com/openstack-dev/hacking/blob/master/hacking/checks/comments.py#L20\n\nFeel free to fix it so if you\u0027re so inclined!","commit_id":"613d789a36e43f26f141539b6b794f341a3419a9"}]}
