)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"13a3d95344ef8a64fe1587c8d0be30459fd7c70b","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When the default display command for swift-ring-error encounters a"},{"line_number":10,"context_line":"EmptyRingError trying to calculate balance it should not raise exception"},{"line_number":11,"context_line":"and display the traceback in a in command line environment."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Instead handle the exceptional condition and provide the user with"},{"line_number":14,"context_line":"useful feedback."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9f91af0f_2ac3a3ef","line":11,"range":{"start_line":11,"start_character":31,"end_line":11,"end_character":33},"updated":"2018-01-02 09:54:53.000000000","message":"typo - extra word","commit_id":"c6efeae9d25e8fbefd76ead54714c1671c6e2a23"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"13a3d95344ef8a64fe1587c8d0be30459fd7c70b","unresolved":false,"context_lines":[{"line_number":11,"context_line":"and display the traceback in a in command line environment."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Instead handle the exceptional condition and provide the user with"},{"line_number":14,"context_line":"useful feedback."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ibadaf64748728a47a8f3f861ec1af601dbfeb9e0"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9f91af0f_aa24930e","line":14,"updated":"2018-01-02 09:54:53.000000000","message":"please add\n\n  Closes-Bug: #1737068\n\n\nNote that bug [1] is a duplicate of [2]\n\n[1] https://bugs.launchpad.net/swift/+bug/1739707\n[2] https://bugs.launchpad.net/swift/+bug/1737068","commit_id":"c6efeae9d25e8fbefd76ead54714c1671c6e2a23"}],"test/unit/cli/test_ringbuilder.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"13a3d95344ef8a64fe1587c8d0be30459fd7c70b","unresolved":false,"context_lines":[{"line_number":1902,"context_line":"            with mock.patch(\"sys.stderr\", mock_stderr):"},{"line_number":1903,"context_line":"                self.assertSystemExit(EXIT_ERROR, ringbuilder.main, argv)"},{"line_number":1904,"context_line":""},{"line_number":1905,"context_line":"        ring_invalid_re \u003d re.compile(\"all devices have been deleted\")"},{"line_number":1906,"context_line":"        self.assertTrue(ring_invalid_re.findall(mock_stdout.getvalue()))"},{"line_number":1907,"context_line":""},{"line_number":1908,"context_line":"    def test_pretend_min_part_hours_passed(self):"},{"line_number":1909,"context_line":"        self.run_srb(\"create\", 8, 3, 1)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f91af0f_357b048d","line":1906,"range":{"start_line":1905,"start_character":8,"end_line":1906,"end_character":72},"updated":"2018-01-02 09:54:53.000000000","message":"nit: does this need to use re? we\u0027d get a much more useful failure message if there was a regression by using:\n\n  self.assertIn(\"all devices have been deleted\", mock_stdout.getvalue())","commit_id":"c6efeae9d25e8fbefd76ead54714c1671c6e2a23"}]}
