)]}'
{"tools/update-rs-db.py":[{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        return False"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"def updateResult(apiLink, target, guideline, token):"},{"line_number":54,"context_line":"    success \u003d True"},{"line_number":55,"context_line":"    with open(\u0027verification_results.csv\u0027, \u0027w+\u0027) as logfile:"},{"line_number":56,"context_line":"        response \u003d requests.post(apiLink + \u0027/meta/shared\u0027, headers\u003d{"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_4c649c22","line":53,"updated":"2017-06-13 22:37:20.000000000","message":"Make sure we add \u0027logfile\u0027, or perhaps, \u0027results_log\u0027 (since logfile is used a separate variable below) as a parameter here.","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"def updateResult(apiLink, target, guideline, token):"},{"line_number":54,"context_line":"    success \u003d True"},{"line_number":55,"context_line":"    with open(\u0027verification_results.csv\u0027, \u0027w+\u0027) as logfile:"},{"line_number":56,"context_line":"        response \u003d requests.post(apiLink + \u0027/meta/shared\u0027, headers\u003d{"},{"line_number":57,"context_line":"            \u0027Authorization\u0027: \u0027Bearer \u0027 + token}, data\u003d\u0027true\u0027)"},{"line_number":58,"context_line":"        if response.status_code !\u003d 201:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_1f67e827","line":55,"range":{"start_line":55,"start_character":43,"end_line":55,"end_character":45},"updated":"2017-06-13 22:37:20.000000000","message":"\u0027w+\u0027 should rather be append, i.e. \u0027a\u0027 as \u0027w+\u0027 will truncate the file each time.","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"def updateResult(apiLink, target, guideline, token):"},{"line_number":54,"context_line":"    success \u003d True"},{"line_number":55,"context_line":"    with open(\u0027verification_results.csv\u0027, \u0027w+\u0027) as logfile:"},{"line_number":56,"context_line":"        response \u003d requests.post(apiLink + \u0027/meta/shared\u0027, headers\u003d{"},{"line_number":57,"context_line":"            \u0027Authorization\u0027: \u0027Bearer \u0027 + token}, data\u003d\u0027true\u0027)"},{"line_number":58,"context_line":"        if response.status_code !\u003d 201:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_6c7cf8b4","line":55,"range":{"start_line":55,"start_character":14,"end_line":55,"end_character":40},"updated":"2017-06-13 22:37:20.000000000","message":"change this to results_log for if the user passes in a different file.","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            json\u003d{\u0027verification_status\u0027: 1})"},{"line_number":90,"context_line":"        if response.status_code !\u003d 201:"},{"line_number":91,"context_line":"            success \u003d False"},{"line_number":92,"context_line":"        if success:"},{"line_number":93,"context_line":"            print(\"Test result verified.\")"},{"line_number":94,"context_line":"        logfile.write(int(success) + \u0027\\n\u0027)"},{"line_number":95,"context_line":"    return success"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_3f074485","line":92,"range":{"start_line":92,"start_character":8,"end_line":92,"end_character":19},"updated":"2017-06-13 22:37:20.000000000","message":"Change this \u0027if success:\u0027 to \u0027else:\u0027","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            logfile.write(target + \",1,\")"},{"line_number":85,"context_line":"        if success:"},{"line_number":86,"context_line":"            print(\"test result updated. Verifying.\")"},{"line_number":87,"context_line":"        response \u003d requests.put(apiLink, headers\u003d{"},{"line_number":88,"context_line":"            \u0027Authorization\u0027: \u0027Bearer \u0027 + token},"},{"line_number":89,"context_line":"            json\u003d{\u0027verification_status\u0027: 1})"},{"line_number":90,"context_line":"        if response.status_code !\u003d 201:"},{"line_number":91,"context_line":"            success \u003d False"},{"line_number":92,"context_line":"        if success:"},{"line_number":93,"context_line":"            print(\"Test result verified.\")"},{"line_number":94,"context_line":"        logfile.write(int(success) + \u0027\\n\u0027)"},{"line_number":95,"context_line":"    return success"},{"line_number":96,"context_line":"    logfile.close()"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_7fc6dc4a","line":93,"range":{"start_line":87,"start_character":8,"end_line":93,"end_character":42},"updated":"2017-06-13 22:37:20.000000000","message":"Indent all this one layer to put this under the \u0027if success\u0027 block.","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":93,"context_line":"            print(\"Test result verified.\")"},{"line_number":94,"context_line":"        logfile.write(int(success) + \u0027\\n\u0027)"},{"line_number":95,"context_line":"    return success"},{"line_number":96,"context_line":"    logfile.close()"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"def main():"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_3feaa40e","line":96,"range":{"start_line":96,"start_character":4,"end_line":96,"end_character":19},"updated":"2017-06-13 22:37:20.000000000","message":"This line should come before the return statement, however, we don\u0027t need it as once python exits from the \u0027with\u0027 block, the file is automatically closed.","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":111,"context_line":"                        action\u003d\"store\", required\u003dTrue, help\u003d\"API auth token\")"},{"line_number":112,"context_line":"    result \u003d parser.parse_args()"},{"line_number":113,"context_line":"    infile \u003d result.file"},{"line_number":114,"context_line":"    logfile \u003d result.log"},{"line_number":115,"context_line":"    endpoint \u003d result.endpoint"},{"line_number":116,"context_line":"    token \u003d result.token"},{"line_number":117,"context_line":"    with open(infile) as f:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_09b336ec","line":114,"range":{"start_line":114,"start_character":14,"end_line":114,"end_character":24},"updated":"2017-06-13 22:37:20.000000000","message":"Make sure we actually add an argument to parser for \u0027log\u0027","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"82362ff406bd37c4f8c3a7c64a1e280aa49f5137","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                        print("},{"line_number":135,"context_line":"                            \"Result link is valid. Updating result with ID \" +"},{"line_number":136,"context_line":"                            testId)"},{"line_number":137,"context_line":"                        if logfile:"},{"line_number":138,"context_line":"                            success \u003d updateResult(apiLink, target, guideline,"},{"line_number":139,"context_line":"                                                   token, logfile)"},{"line_number":140,"context_line":"                        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_6cf9984b","line":137,"range":{"start_line":137,"start_character":24,"end_line":137,"end_character":35},"updated":"2017-06-13 22:37:20.000000000","message":"Don\u0027t need this if else, as the statement is the same in each block.","commit_id":"80eb70883715e338acb7e0188e6d19814a60272d"},{"author":{"_account_id":17716,"name":"Luz Cazares","email":"luz.cazares@intel.com","username":"luzcazares"},"change_message_id":"8d6c57795152b4e9df9934d9fa4023c4d8bc3d2a","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        logfile.write(datetime.datetime.now())"},{"line_number":59,"context_line":"        response \u003d requests.post(apiLink + \u0027/meta/shared\u0027, headers\u003d{"},{"line_number":60,"context_line":"            \u0027Authorization\u0027: \u0027Bearer \u0027 + token}, data\u003d\u0027true\u0027)"},{"line_number":61,"context_line":"        if response.status_code !\u003d 201:"},{"line_number":62,"context_line":"            print(\"Update shared status response_status_code\u003d\" +"},{"line_number":63,"context_line":"                  str(response.status_code))"},{"line_number":64,"context_line":"            logfile.write(apiLink + \",0,\")"},{"line_number":65,"context_line":"            success \u003d False"},{"line_number":66,"context_line":"        else:"},{"line_number":67,"context_line":"            logfile.write(apiLink + \",1,\")"},{"line_number":68,"context_line":"        if \".json\" not in guideline:"},{"line_number":69,"context_line":"            guideline \u003d str(guideline) + \".json\""},{"line_number":70,"context_line":"        response \u003d requests.post(apiLink + \u0027/meta/guideline\u0027, headers\u003d{"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_859c85c0","line":67,"range":{"start_line":61,"start_character":8,"end_line":67,"end_character":42},"updated":"2017-06-15 16:46:17.000000000","message":"Can you change the if to be positive to keep the current flow (i.e return immediately when code is not 201 - avoid further processing and api calls).\nExample:\n\n    if response.status_code \u003d\u003d 201:\n        logfile.write(apiLink + \",1,\")\n    else:\n        print(\"Update shared status response_status_code\u003d\" +\n                  str(response.status_code))\n        logfile.write(apiLink + \",0,\")\n        return False\n\nApply the same to the rest of the method.","commit_id":"83dfec456e024a4bb182e90b8cd55e4583f60d06"},{"author":{"_account_id":17716,"name":"Luz Cazares","email":"luz.cazares@intel.com","username":"luzcazares"},"change_message_id":"8d6c57795152b4e9df9934d9fa4023c4d8bc3d2a","unresolved":false,"context_lines":[{"line_number":139,"context_line":"                        print("},{"line_number":140,"context_line":"                            \"Result link is valid. Updating result with ID \" +"},{"line_number":141,"context_line":"                            testId)"},{"line_number":142,"context_line":"                        if logfile:"},{"line_number":143,"context_line":"                            success \u003d updateResult(apiLink, target, guideline,"},{"line_number":144,"context_line":"                                                   token, logfile)"},{"line_number":145,"context_line":"                        else:"},{"line_number":146,"context_line":"                            success \u003d updateResult(apiLink, target, guideline,"},{"line_number":147,"context_line":"                                                   token, logfile)"},{"line_number":148,"context_line":"                        if not success:"},{"line_number":149,"context_line":"                            print(\"update of the results with the ID \" +"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_45daed4a","line":146,"range":{"start_line":142,"start_character":24,"end_line":146,"end_character":28},"updated":"2017-06-15 16:46:17.000000000","message":"This if statement is not required. The logfile will always have a value (the defined default one or the one provided via parameter)","commit_id":"83dfec456e024a4bb182e90b8cd55e4583f60d06"},{"author":{"_account_id":17716,"name":"Luz Cazares","email":"luz.cazares@intel.com","username":"luzcazares"},"change_message_id":"51e2a864e6e777058f072003671ecfcefd9069d8","unresolved":false,"context_lines":[{"line_number":139,"context_line":"                        print("},{"line_number":140,"context_line":"                            \"Result link is valid. Updating result with ID \" +"},{"line_number":141,"context_line":"                            testId)"},{"line_number":142,"context_line":"                        if logfile:"},{"line_number":143,"context_line":"                            success \u003d updateResult(apiLink, target, guideline,"},{"line_number":144,"context_line":"                                                   token, logfile)"},{"line_number":145,"context_line":"                        else:"},{"line_number":146,"context_line":"                            success \u003d updateResult(apiLink, target, guideline,"},{"line_number":147,"context_line":"                                                   token, logfile)"},{"line_number":148,"context_line":"                        if not success:"},{"line_number":149,"context_line":"                            print(\"update of the results with the ID \" +"},{"line_number":150,"context_line":"                                  testId + \" failed. please recheck your \" +"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f231b9d_209af160","line":147,"range":{"start_line":142,"start_character":24,"end_line":147,"end_character":66},"updated":"2017-06-19 15:34:32.000000000","message":"both calls are equal (success \u003d updateResult...).\nPlease remove the if-else clause. Keep the updateResult call with the new parameter logfile","commit_id":"da95454d69cd2fa4eb3e1d1df4fe160b0c94cc0d"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":55,"context_line":"def updateResult(apiLink, target, guideline, token, results_log):"},{"line_number":56,"context_line":"    success \u003d True"},{"line_number":57,"context_line":"    with open(results_log, \u0027a\u0027) as logfile:"},{"line_number":58,"context_line":"        logfile.write(datetime.datetime.now())"},{"line_number":59,"context_line":"        response \u003d requests.post(apiLink + \u0027/meta/shared\u0027, headers\u003d{"},{"line_number":60,"context_line":"            \u0027Authorization\u0027: \u0027Bearer \u0027 + token}, data\u003d\u0027true\u0027)"},{"line_number":61,"context_line":"        if response.status_code !\u003d 201:"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f201791_72567109","line":58,"updated":"2017-06-20 18:42:26.000000000","message":"Make sure we surround datetime.datetime.now() with a str(). And make sure we print a comma after the date.","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":94,"context_line":"                success \u003d False"},{"line_number":95,"context_line":"            else:"},{"line_number":96,"context_line":"                print(\"Test result verified.\")"},{"line_number":97,"context_line":"        logfile.write(int(success) + \u0027\\n\u0027)"},{"line_number":98,"context_line":"    return success"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"5f201791_f72033b3","line":97,"range":{"start_line":97,"start_character":22,"end_line":97,"end_character":34},"updated":"2017-06-20 18:42:26.000000000","message":"make this a string with str()","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":112,"context_line":"    parser.add_argument(\"--token\", \"-t\", metavar\u003d\"t\", type\u003dstr,"},{"line_number":113,"context_line":"                        action\u003d\"store\", required\u003dTrue, help\u003d\"API auth token\")"},{"line_number":114,"context_line":"    parser.add_argument(\"--logfile\", \"-l\", metavar\u003d\"l\", type\u003dstr,"},{"line_number":115,"context_line":"                        action\u003d\"store\", default\u003d\"verification_results.csv\""},{"line_number":116,"context_line":"                        help\u003d\"name of logfile to output data into\")"},{"line_number":117,"context_line":"    result \u003d parser.parse_args()"},{"line_number":118,"context_line":"    infile \u003d result.file"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f201791_97dc5f19","line":115,"range":{"start_line":115,"start_character":40,"end_line":115,"end_character":74},"updated":"2017-06-20 18:42:26.000000000","message":"comma after this","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":140,"context_line":"                            \"Result link is valid. Updating result with ID \" +"},{"line_number":141,"context_line":"                            testId)"},{"line_number":142,"context_line":"                        success \u003d updateResult(apiLink, target, guideline,"},{"line_number":143,"context_line":"                                                   token, logfile)"},{"line_number":144,"context_line":"                        if not success:"},{"line_number":145,"context_line":"                            print(\"update of the results with the ID \" +"},{"line_number":146,"context_line":"                                  testId + \" failed. please recheck your \" +"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f201791_17f96f7f","line":143,"range":{"start_line":143,"start_character":51,"end_line":143,"end_character":65},"updated":"2017-06-20 18:42:26.000000000","message":"Line this up with the start of the parameter line above this.","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"}],"tools/update-rs-db.rst":[{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":56,"context_line":"then use the same RESTful api and test ID to update the verification_status"},{"line_number":57,"context_line":"field associated with that test result."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The status of each of these steps will be output to \"verification_status.csv\"."},{"line_number":60,"context_line":"the order of fields of this file are as follows:"},{"line_number":61,"context_line":"- API link"},{"line_number":62,"context_line":"- API link update success status"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5f201791_726f91c5","line":59,"range":{"start_line":59,"start_character":52,"end_line":59,"end_character":77},"updated":"2017-06-20 18:42:26.000000000","message":"add \"by default\" after this. Then a sentence saying, \"A \u00271\u0027 will denote that the resource was successfully updated while a \u00270\u0027 will denote that the resource was not successfully updated.\"","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":57,"context_line":"field associated with that test result."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The status of each of these steps will be output to \"verification_status.csv\"."},{"line_number":60,"context_line":"the order of fields of this file are as follows:"},{"line_number":61,"context_line":"- API link"},{"line_number":62,"context_line":"- API link update success status"},{"line_number":63,"context_line":"- Guideline"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5f201791_d25f850c","line":60,"range":{"start_line":60,"start_character":0,"end_line":60,"end_character":1},"updated":"2017-06-20 18:42:26.000000000","message":"s/the/The/","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The status of each of these steps will be output to \"verification_status.csv\"."},{"line_number":60,"context_line":"the order of fields of this file are as follows:"},{"line_number":61,"context_line":"- API link"},{"line_number":62,"context_line":"- API link update success status"},{"line_number":63,"context_line":"- Guideline"},{"line_number":64,"context_line":"- Guideline update success status"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5f201791_727d516d","line":61,"range":{"start_line":61,"start_character":0,"end_line":61,"end_character":10},"updated":"2017-06-20 18:42:26.000000000","message":"Add a new list item for \"Date modified\"","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73c8f152a09b928bc9cf0ebcc023786e7890f2ee","unresolved":false,"context_lines":[{"line_number":59,"context_line":"The status of each of these steps will be output to \"verification_status.csv\"."},{"line_number":60,"context_line":"the order of fields of this file are as follows:"},{"line_number":61,"context_line":"- API link"},{"line_number":62,"context_line":"- API link update success status"},{"line_number":63,"context_line":"- Guideline"},{"line_number":64,"context_line":"- Guideline update success status"},{"line_number":65,"context_line":"- Target"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5f201791_f2904198","line":62,"range":{"start_line":62,"start_character":2,"end_line":62,"end_character":32},"updated":"2017-06-20 18:42:26.000000000","message":"I think \"Shared update success status\" would be clearer.","commit_id":"92f6ae36096a61e957b9b23729dcfb6066355a96"},{"author":{"_account_id":9626,"name":"Paul Van Eck","email":"pvaneck@us.ibm.com","username":"pvaneck"},"change_message_id":"73cf257fb4b8c33bb5d5d6e8e3543fe323d2db2b","unresolved":false,"context_lines":[{"line_number":56,"context_line":"then use the same RESTful api and test ID to update the verification_status"},{"line_number":57,"context_line":"field associated with that test result."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The status of each of these steps will be output to \"verification_status.csv\"."},{"line_number":60,"context_line":"by default. A \u00271\u0027 will denote that the resource was successfully updated while"},{"line_number":61,"context_line":"a \u00270\u0027 will denote that the resource was not successfully updated. The order of"},{"line_number":62,"context_line":"fields of this file are as follows:"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5f201791_8d88cc71","line":59,"range":{"start_line":59,"start_character":77,"end_line":59,"end_character":78},"updated":"2017-06-20 19:23:46.000000000","message":"Nit, just remove this period","commit_id":"22feb3247db72d764e9ec5d7225c4cc72afb57cc"}]}
