)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"47454b2b4a2c7ec3a4ad5da9fedcce846b2d33cb","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add policy check on global-requirements.txt entries"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We want to ensure that every entry in global-requirements has"},{"line_number":10,"context_line":"at least a minimum version specified, and if there is an exclude,"},{"line_number":11,"context_line":"the exclude is not outside the lower bounds."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ie12d99d3317bd4c81de9a47a43fa99345b2b9664"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5f2577a7_dfdac1e7","line":10,"range":{"start_line":10,"start_character":11,"end_line":10,"end_character":37},"updated":"2017-09-11 22:25:27.000000000","message":"Hmm interesting.  That\u0027s clearly not the case now,  I get that\u0027s it\u0027s hard to generate minimums without this data.","commit_id":"821fc2f189e852046b3c5b0504b5de6c8adc88eb"}],"openstack_requirements/tests/test_requirement.py":[{"author":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"change_message_id":"5b63b903d32e28d0f9d2d73b89031b776416398b","unresolved":false,"context_lines":[{"line_number":208,"context_line":""},{"line_number":209,"context_line":"    def test_requirements_policy_fail(self):"},{"line_number":210,"context_line":"        content \u003d textwrap.dedent(\"\"\"\\"},{"line_number":211,"context_line":"            cffi\u003e\u003d1.1.1,!\u003d1.1.0"},{"line_number":212,"context_line":"            \"\"\")"},{"line_number":213,"context_line":"        reqs \u003d requirement.parse(content)"},{"line_number":214,"context_line":"        policy_check \u003d [x for x in requirement.check_reqs_bounds_policy(reqs)]"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f2577a7_1f84b3b0","line":211,"updated":"2017-09-12 18:27:25.000000000","message":"No, I think it\u0027s a good test, maybe we need more failure case and success tests (with comments stating why each is being done).","commit_id":"f570c6dff94dc145a3dbc7527a0b377063f9fc80"},{"author":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"change_message_id":"9d1a6676e077c07c3a1a8d12ca1670255316661c","unresolved":false,"context_lines":[{"line_number":208,"context_line":""},{"line_number":209,"context_line":"    def test_requirements_policy_fail(self):"},{"line_number":210,"context_line":"        content \u003d textwrap.dedent(\"\"\"\\"},{"line_number":211,"context_line":"            cffi\u003e\u003d1.1.1,!\u003d1.1.0"},{"line_number":212,"context_line":"            \"\"\")"},{"line_number":213,"context_line":"        reqs \u003d requirement.parse(content)"},{"line_number":214,"context_line":"        policy_check \u003d [x for x in requirement.check_reqs_bounds_policy(reqs)]"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f2577a7_99c1e3e7","line":211,"updated":"2017-09-12 17:09:15.000000000","message":"how is this invalid? it may be redundant but shouldn\u0027t be invalid\n\nshould it be cffi\u003e\u003d1.1.1,\u003e\u003d1.1.0,!\u003d1.1.2","commit_id":"f570c6dff94dc145a3dbc7527a0b377063f9fc80"},{"author":{"_account_id":6593,"name":"Dirk Mueller","email":"dirk@dmllr.de","username":"dmllr"},"change_message_id":"2106025905255efc44dd746e98e3e6e08583f4c0","unresolved":false,"context_lines":[{"line_number":208,"context_line":""},{"line_number":209,"context_line":"    def test_requirements_policy_fail(self):"},{"line_number":210,"context_line":"        content \u003d textwrap.dedent(\"\"\"\\"},{"line_number":211,"context_line":"            cffi\u003e\u003d1.1.1,!\u003d1.1.0"},{"line_number":212,"context_line":"            \"\"\")"},{"line_number":213,"context_line":"        reqs \u003d requirement.parse(content)"},{"line_number":214,"context_line":"        policy_check \u003d [x for x in requirement.check_reqs_bounds_policy(reqs)]"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f2577a7_3f564f5e","line":211,"in_reply_to":"5f2577a7_99c1e3e7","updated":"2017-09-12 18:24:24.000000000","message":"yeah, it is about checking for redundant declarations. do you disagree about having that check?","commit_id":"f570c6dff94dc145a3dbc7527a0b377063f9fc80"}]}
