)]}'
{"neutron/tests/unit/agent/linux/test_async_process.py":[{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"079b006be40b3823061c2fec392f97a1d690661c","unresolved":false,"context_lines":[{"line_number":190,"context_line":""},{"line_number":191,"context_line":"        xpids \u003d []"},{"line_number":192,"context_line":"        for pid in pids or []:"},{"line_number":193,"context_line":"            with mock.patch(\u0027psutil.Process\u0027) as mock_ps_process:"},{"line_number":194,"context_line":"                xpid \u003d mock_ps_process.return_value"},{"line_number":195,"context_line":"                xpid.pid \u003d pid"},{"line_number":196,"context_line":"                xpids.append(xpid)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATX%2F%2F8i0%3D","line":193,"updated":"2013-10-23 20:22:40.000000000","message":"This is not mock.patch\u0027s intended use case.  The expectation would be that a function called in this \u0027with\u0027 block would invoke psutil.Process.\n\nA simpler way to create a new mock object is to do so directly:\n\nxpid \u003d mock.Mock()\n\nxpid.pid \u003d pid\n\nThe following approach is also valid:\n\nimport collections\n\nxpid \u003d collections.namedtuple(\u0027xpid\u0027, [\u0027pid\u0027])\n\nxpids \u003d [xpid(pid) for pid in pids or []]","commit_id":"384ac959f2f2d08e74c2570ca08782a23d2721f0"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"079b006be40b3823061c2fec392f97a1d690661c","unresolved":false,"context_lines":[{"line_number":201,"context_line":"                    instance \u003d mock_ps_process.return_value"},{"line_number":202,"context_line":"                    instance.get_children.return_value \u003d xpids"},{"line_number":203,"context_line":"                    actual \u003d self.proc._get_pid_to_kill()"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"        if expected is _marker:"},{"line_number":206,"context_line":"            expected \u003d mock_pid"},{"line_number":207,"context_line":"        self.assertEqual(expected, actual)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATX%2F%2F8iw%3D","line":204,"updated":"2013-10-23 20:22:40.000000000","message":"Unrelated formatting change.","commit_id":"384ac959f2f2d08e74c2570ca08782a23d2721f0"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"d6b47baba4abd31ff773ef3c98f829ead31f39b8","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"import collections"},{"line_number":18,"context_line":"import eventlet.event"},{"line_number":19,"context_line":"import eventlet.queue"},{"line_number":20,"context_line":"import eventlet.timeout"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F%2F%2FuU%3D","line":17,"updated":"2013-10-24 04:27:16.000000000","message":"collections is a stdlib import, and there should be a blank line separating stdlib imports and 3rd party imports (eventlet etc).  See HACKING.rst.  I\u0027m surprised this wasn\u0027t caught automatically by flake8. Feel free to file a bug on infra and fix.  :)","commit_id":"62160e54c3155b522be99978628cff1959c0f4bf"}],"requirements.txt":[{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"d6b47baba4abd31ff773ef3c98f829ead31f39b8","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Jinja2"},{"line_number":17,"context_line":"kombu\u003e\u003d2.4.8"},{"line_number":18,"context_line":"netaddr\u003e\u003d0.7.6"},{"line_number":19,"context_line":"psutil"},{"line_number":20,"context_line":"python-neutronclient\u003e\u003d2.3.0,\u003c3"},{"line_number":21,"context_line":"SQLAlchemy\u003e\u003d0.7.8,\u003c\u003d0.7.99"},{"line_number":22,"context_line":"WebOb\u003e\u003d1.2.3,\u003c1.3"}],"source_content_type":"text/plain","patch_set":8,"id":"AAAATn%2F%2F%2Ft8%3D","line":19,"updated":"2013-10-24 04:27:16.000000000","message":"As per the jenkins failure, the version of psutil will need to be correspond with what is already in openstack-requirements (see https://github.com/openstack/requirements/blob/master/global-requirements.txt#L52).","commit_id":"62160e54c3155b522be99978628cff1959c0f4bf"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"8e9238f05cf0f75cacd4137fe7324c60e22fe363","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Jinja2"},{"line_number":17,"context_line":"kombu\u003e\u003d2.4.8"},{"line_number":18,"context_line":"netaddr\u003e\u003d0.7.6"},{"line_number":19,"context_line":"psutil\u003e\u003d0.6.1,\u003c1.0"},{"line_number":20,"context_line":"python-neutronclient\u003e\u003d2.3.0,\u003c3"},{"line_number":21,"context_line":"SQLAlchemy\u003e\u003d0.7.8,\u003c\u003d0.7.99"},{"line_number":22,"context_line":"WebOb\u003e\u003d1.2.3,\u003c1.3"}],"source_content_type":"text/plain","patch_set":9,"id":"AAAATn%2F%2FzpM%3D","line":19,"updated":"2013-10-28 18:44:52.000000000","message":"wouldn\u0027t we need the same in test-requirements.txt? Also, why the specific constraint? It seems you\u0027re pinning it down to 0.7.x","commit_id":"b99b017e84b545322fc77fefc38ae263d6830dee"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"08c7f44bc2f4b782e26875005a835bb6381d25a9","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Jinja2"},{"line_number":17,"context_line":"kombu\u003e\u003d2.4.8"},{"line_number":18,"context_line":"netaddr\u003e\u003d0.7.6"},{"line_number":19,"context_line":"psutil\u003e\u003d0.6.1,\u003c1.0"},{"line_number":20,"context_line":"python-neutronclient\u003e\u003d2.3.0,\u003c3"},{"line_number":21,"context_line":"SQLAlchemy\u003e\u003d0.7.8,\u003c\u003d0.7.99"},{"line_number":22,"context_line":"WebOb\u003e\u003d1.2.3,\u003c1.3"}],"source_content_type":"text/plain","patch_set":9,"id":"AAAATn%2F%2FwTk%3D","line":19,"in_reply_to":"AAAATn%2F%2FxB0%3D","updated":"2013-10-29 14:35:35.000000000","message":"thanks for clarifying this.","commit_id":"b99b017e84b545322fc77fefc38ae263d6830dee"},{"author":{"_account_id":2035,"name":"Maru Newby","email":"marun@redhat.com","username":"maru"},"change_message_id":"38d8d18cd8c77447cc49eba07a327715b19100ef","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Jinja2"},{"line_number":17,"context_line":"kombu\u003e\u003d2.4.8"},{"line_number":18,"context_line":"netaddr\u003e\u003d0.7.6"},{"line_number":19,"context_line":"psutil\u003e\u003d0.6.1,\u003c1.0"},{"line_number":20,"context_line":"python-neutronclient\u003e\u003d2.3.0,\u003c3"},{"line_number":21,"context_line":"SQLAlchemy\u003e\u003d0.7.8,\u003c\u003d0.7.99"},{"line_number":22,"context_line":"WebOb\u003e\u003d1.2.3,\u003c1.3"}],"source_content_type":"text/plain","patch_set":9,"id":"AAAATn%2F%2FxB0%3D","line":19,"in_reply_to":"AAAATn%2F%2FzpM%3D","updated":"2013-10-29 11:23:01.000000000","message":"test-requirements.txt is in addition to requirements.txt, so it does not have to be duplicated.\n\nThe specific version is the one defined in the openstack-requirements project (https://github.com/openstack/requirements).  Attempting to use a different version will result in a gate failure and prevent this change from merging.","commit_id":"b99b017e84b545322fc77fefc38ae263d6830dee"}]}
