)]}'
{".gitignore":[{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":1,"context_line":"env"},{"line_number":2,"context_line":"results.json"},{"line_number":3,"context_line":"results.txt"},{"line_number":4,"context_line":"*.pyc"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"da86d52c_3f43f63f","line":1,"updated":"2015-02-19 22:05:05.000000000","message":"If we\u0027re doing this, I\u0027d consider doing env* and venv* to deal with the two common virtualenv naming schemes I\u0027ve seen people using.  Lots of potential snowflakes on this one though.","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"e27578d64724085b7d588015621e4e380a99fe8b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"env"},{"line_number":2,"context_line":"results.json"},{"line_number":3,"context_line":"results.txt"},{"line_number":4,"context_line":"*.pyc"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"ba7be1f8_28a64bc2","line":1,"in_reply_to":"da86d52c_3f43f63f","updated":"2015-02-19 22:35:27.000000000","message":"Makes sense, done.","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":14692,"name":"Lucas Fisher","email":"lucas.fisher@gmail.com","username":"lucas.fisher"},"change_message_id":"8bb04a4523a5396cd0625b2be957b0222007e46a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"env*"},{"line_number":2,"context_line":"venv*"},{"line_number":3,"context_line":"results.json"},{"line_number":4,"context_line":"results.txt"},{"line_number":5,"context_line":"*.pyc"},{"line_number":6,"context_line":".DS_Store"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba7be1f8_513b26eb","line":3,"updated":"2015-02-19 23:52:53.000000000","message":"Do we really need to put these in here. I\u0027m not a fan of default output file names. Default output should be STDOUT.","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"2b71247f185c7fe1b10214a37c3ace674404ee0e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"env*"},{"line_number":2,"context_line":"venv*"},{"line_number":3,"context_line":"results.json"},{"line_number":4,"context_line":"results.txt"},{"line_number":5,"context_line":"*.pyc"},{"line_number":6,"context_line":".DS_Store"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba7be1f8_825c6e27","line":3,"in_reply_to":"ba7be1f8_513b26eb","updated":"2015-02-20 02:03:29.000000000","message":"Done","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"}],"README.rst":[{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"21c98f99cc5485f78cb9f34376af0223369272da","unresolved":false,"context_lines":[{"line_number":80,"context_line":"      -o OUTPUT_FILE, --output OUTPUT_FILE"},{"line_number":81,"context_line":"                            write report to filename OUTPUT_FILE"},{"line_number":82,"context_line":"      --output-format FORMAT_TYPE"},{"line_number":83,"context_line":"                            FORMAT_TYPE is either \u0027json\u0027 or \u0027txt\u0027"},{"line_number":84,"context_line":"      -d, --debug           turn on debug mode"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_b74e3494","line":83,"updated":"2015-02-19 19:36:24.000000000","message":"Should we mention that it defaults to txt?","commit_id":"b61df3eec02e9a7cfdeba4043d61746e04a8e994"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"c85bdc45c19b852d64eef75def829183e0271319","unresolved":false,"context_lines":[{"line_number":80,"context_line":"      -o OUTPUT_FILE, --output OUTPUT_FILE"},{"line_number":81,"context_line":"                            write report to filename OUTPUT_FILE"},{"line_number":82,"context_line":"      --output-format FORMAT_TYPE"},{"line_number":83,"context_line":"                            FORMAT_TYPE is either \u0027json\u0027 or \u0027txt\u0027"},{"line_number":84,"context_line":"      -d, --debug           turn on debug mode"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_329fb251","line":83,"in_reply_to":"da86d52c_b74e3494","updated":"2015-02-19 19:50:32.000000000","message":"Makes sense, will do","commit_id":"b61df3eec02e9a7cfdeba4043d61746e04a8e994"},{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":79,"context_line":"      -l, --level           results level filter"},{"line_number":80,"context_line":"      -o OUTPUT_FILE, --output OUTPUT_FILE"},{"line_number":81,"context_line":"                            write report to filename OUTPUT_FILE"},{"line_number":82,"context_line":"      --output-format FORMAT_TYPE"},{"line_number":83,"context_line":"                            FORMAT_TYPE is either \u0027json\u0027 or \u0027txt\u0027, default is"},{"line_number":84,"context_line":"                            \u0027txt\u0027"},{"line_number":85,"context_line":"      -d, --debug           turn on debug mode"}],"source_content_type":"text/x-rst","patch_set":6,"id":"da86d52c_7f080e91","line":82,"updated":"2015-02-19 22:05:05.000000000","message":"Like we discussed:\n-f OUTPUT_FORMAT, --format OUTPUT_FORMAT\n\nInstead of editing this manually, in the past I\u0027ve just copied and pasted from running bandit --help to make sure it\u0027s accurate.","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"e27578d64724085b7d588015621e4e380a99fe8b","unresolved":false,"context_lines":[{"line_number":79,"context_line":"      -l, --level           results level filter"},{"line_number":80,"context_line":"      -o OUTPUT_FILE, --output OUTPUT_FILE"},{"line_number":81,"context_line":"                            write report to filename OUTPUT_FILE"},{"line_number":82,"context_line":"      --output-format FORMAT_TYPE"},{"line_number":83,"context_line":"                            FORMAT_TYPE is either \u0027json\u0027 or \u0027txt\u0027, default is"},{"line_number":84,"context_line":"                            \u0027txt\u0027"},{"line_number":85,"context_line":"      -d, --debug           turn on debug mode"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba7be1f8_c89e8f63","line":82,"in_reply_to":"da86d52c_7f080e91","updated":"2015-02-19 22:35:27.000000000","message":"Done","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"}],"bandit/bandit.py":[{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"21c98f99cc5485f78cb9f34376af0223369272da","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \u0027--output-format\u0027, dest\u003d\u0027output_type\u0027, action\u003d\u0027store\u0027,"},{"line_number":62,"context_line":"        default\u003dNone, help\u003d\u0027write report to filename in JSON format\u0027,"},{"line_number":63,"context_line":"        type\u003dvalidate_format"},{"line_number":64,"context_line":"    )"},{"line_number":65,"context_line":"    parser.add_argument("},{"line_number":66,"context_line":"        \u0027-o\u0027, \u0027--output\u0027, dest\u003d\u0027output_file\u0027, action\u003d\u0027store\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_f73b4ce7","line":63,"updated":"2015-02-19 19:36:24.000000000","message":"Isn\u0027t there a choices argument, e.g.,\n\n\n    parser.add_argument(...\n        choices\u003d[\u0027txt\u0027, \u0027json\u0027]\n    )","commit_id":"b61df3eec02e9a7cfdeba4043d61746e04a8e994"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"c85bdc45c19b852d64eef75def829183e0271319","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \u0027--output-format\u0027, dest\u003d\u0027output_type\u0027, action\u003d\u0027store\u0027,"},{"line_number":62,"context_line":"        default\u003dNone, help\u003d\u0027write report to filename in JSON format\u0027,"},{"line_number":63,"context_line":"        type\u003dvalidate_format"},{"line_number":64,"context_line":"    )"},{"line_number":65,"context_line":"    parser.add_argument("},{"line_number":66,"context_line":"        \u0027-o\u0027, \u0027--output\u0027, dest\u003d\u0027output_file\u0027, action\u003d\u0027store\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_92893e28","line":63,"in_reply_to":"da86d52c_f73b4ce7","updated":"2015-02-19 19:50:32.000000000","message":"Ah, nice! That\u0027s is cleaner.","commit_id":"b61df3eec02e9a7cfdeba4043d61746e04a8e994"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"d1915a8f788fedfe89affbee94ee411cffb9516a","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \u0027--output-format\u0027, dest\u003d\u0027output_type\u0027, action\u003d\u0027store\u0027,"},{"line_number":62,"context_line":"        default\u003dNone, help\u003d\u0027write report to filename in JSON format\u0027,"},{"line_number":63,"context_line":"        type\u003dvalidate_format"},{"line_number":64,"context_line":"    )"},{"line_number":65,"context_line":"    parser.add_argument("},{"line_number":66,"context_line":"        \u0027-o\u0027, \u0027--output\u0027, dest\u003d\u0027output_file\u0027, action\u003d\u0027store\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_77fe7c07","line":63,"updated":"2015-02-19 19:37:08.000000000","message":"Checkout my comments on PS3","commit_id":"930d579d42908c06ae7606365494fa55038bbc8f"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"ae5dc20f57ebe08bb76e216b26ed26d12aa4defd","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \u0027--output-format\u0027, dest\u003d\u0027output_type\u0027, action\u003d\u0027store\u0027,"},{"line_number":62,"context_line":"        default\u003dNone, help\u003d\u0027write report to filename in JSON format\u0027,"},{"line_number":63,"context_line":"        type\u003dvalidate_format"},{"line_number":64,"context_line":"    )"},{"line_number":65,"context_line":"    parser.add_argument("},{"line_number":66,"context_line":"        \u0027-o\u0027, \u0027--output\u0027, dest\u003d\u0027output_file\u0027, action\u003d\u0027store\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_12d2aeff","line":63,"in_reply_to":"da86d52c_77fe7c07","updated":"2015-02-19 19:50:43.000000000","message":"Nice, choices is cleaner than type, so I\u0027ve changed that and updated the README. Thanks for the helpful feedback!","commit_id":"930d579d42908c06ae7606365494fa55038bbc8f"},{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        default\u003d1, help\u003d\u0027results level filter\u0027"},{"line_number":59,"context_line":"    )"},{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \u0027--output-format\u0027, dest\u003d\u0027output_type\u0027, action\u003d\u0027store\u0027,"},{"line_number":62,"context_line":"        default\u003dNone, help\u003d\u0027write report to filename in JSON format\u0027,"},{"line_number":63,"context_line":"        choices\u003d[\u0027txt\u0027, \u0027json\u0027]"},{"line_number":64,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_df265a15","line":61,"updated":"2015-02-19 22:05:05.000000000","message":"Something like: \u0027-f\u0027, \u0027--format\u0027, dest\u003d\u0027output_format\u0027 [...] default\u003d\u0027txt\u0027 help\u003d\u0027specify output format\u0027","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"e27578d64724085b7d588015621e4e380a99fe8b","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        default\u003d1, help\u003d\u0027results level filter\u0027"},{"line_number":59,"context_line":"    )"},{"line_number":60,"context_line":"    parser.add_argument("},{"line_number":61,"context_line":"        \u0027--output-format\u0027, dest\u003d\u0027output_type\u0027, action\u003d\u0027store\u0027,"},{"line_number":62,"context_line":"        default\u003dNone, help\u003d\u0027write report to filename in JSON format\u0027,"},{"line_number":63,"context_line":"        choices\u003d[\u0027txt\u0027, \u0027json\u0027]"},{"line_number":64,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_485a9f84","line":61,"in_reply_to":"da86d52c_df265a15","updated":"2015-02-19 22:35:27.000000000","message":"Done","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"}],"bandit/core/manager.py":[{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        \u0027\u0027\u0027"},{"line_number":93,"context_line":"        return self.b_rs.count"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def output_results(self, lines, level, output_filename, output_filetype):"},{"line_number":96,"context_line":"        \u0027\u0027\u0027Outputs results from the result store"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        :param lines: How many surrounding lines to show per result"}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_7f648e48","line":95,"updated":"2015-02-19 22:05:05.000000000","message":"Maybe call this output_format instead of output_filetype, seeing \u0027filetype\u0027 is only relevant if we\u0027re writing to file, and we decided we\u0027ll eventually let JSON go to STDOUT.","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"e27578d64724085b7d588015621e4e380a99fe8b","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        \u0027\u0027\u0027"},{"line_number":93,"context_line":"        return self.b_rs.count"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def output_results(self, lines, level, output_filename, output_filetype):"},{"line_number":96,"context_line":"        \u0027\u0027\u0027Outputs results from the result store"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"        :param lines: How many surrounding lines to show per result"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_88dad7e7","line":95,"in_reply_to":"da86d52c_7f648e48","updated":"2015-02-19 22:35:27.000000000","message":"Done","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":14692,"name":"Lucas Fisher","email":"lucas.fisher@gmail.com","username":"lucas.fisher"},"change_message_id":"8bb04a4523a5396cd0625b2be957b0222007e46a","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        :param lines: How many surrounding lines to show per result"},{"line_number":99,"context_line":"        :param level: Which levels to show (info, warning, error)"},{"line_number":100,"context_line":"        :param output_filename: File to store results"},{"line_number":101,"context_line":"        :param output_format: JSON or TXT"},{"line_number":102,"context_line":"        :return: -"},{"line_number":103,"context_line":"        \u0027\u0027\u0027"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_d1755633","line":101,"updated":"2015-02-19 23:52:53.000000000","message":"Output format options doesn\u0027t match what is specified in argparse.","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"2b71247f185c7fe1b10214a37c3ace674404ee0e","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        :param lines: How many surrounding lines to show per result"},{"line_number":99,"context_line":"        :param level: Which levels to show (info, warning, error)"},{"line_number":100,"context_line":"        :param output_filename: File to store results"},{"line_number":101,"context_line":"        :param output_format: JSON or TXT"},{"line_number":102,"context_line":"        :return: -"},{"line_number":103,"context_line":"        \u0027\u0027\u0027"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_c264a6e7","line":101,"in_reply_to":"ba7be1f8_d1755633","updated":"2015-02-20 02:03:29.000000000","message":"Done","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"}],"bandit/core/result_store.py":[{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                                                issue_text))"},{"line_number":85,"context_line":"            else:"},{"line_number":86,"context_line":"                self.resstore[filename] \u003d [(lineno, test, issue_type,"},{"line_number":87,"context_line":"                                            issue_text)]"},{"line_number":88,"context_line":"        self.count +\u003d 1"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def report_json(self, output_filename\u003dNone, stats\u003dNone, lines\u003d1):"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_4809bf2b","line":87,"updated":"2015-02-19 22:05:05.000000000","message":"Consensus seems to be that leaving the trailing comma after the single item that the list is being instantiated with, like in the original line, is somewhat Pythonic.","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"e27578d64724085b7d588015621e4e380a99fe8b","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                                                issue_text))"},{"line_number":85,"context_line":"            else:"},{"line_number":86,"context_line":"                self.resstore[filename] \u003d [(lineno, test, issue_type,"},{"line_number":87,"context_line":"                                            issue_text)]"},{"line_number":88,"context_line":"        self.count +\u003d 1"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def report_json(self, output_filename\u003dNone, stats\u003dNone, lines\u003d1):"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_489fff03","line":87,"in_reply_to":"ba7be1f8_4809bf2b","updated":"2015-02-19 22:35:27.000000000","message":"Done","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                                            issue_text)]"},{"line_number":88,"context_line":"        self.count +\u003d 1"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def report_json(self, output_filename\u003dNone, stats\u003dNone, lines\u003d1):"},{"line_number":91,"context_line":"        \u0027\u0027\u0027Prints/returns warnings in JSON format"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        :param output_filename: File to output the results (optional)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_c84a0f55","line":90,"updated":"2015-02-19 22:05:05.000000000","message":"This overall feels like a lot of code to get some JSON out.  I must\u0027ve made some poor design decisions to get us to this point - looks good for now, will add \u0027refactor general output methods\u0027 to the TODO.","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"f4304e361fbbfa9afc314c08d741b40318207098","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        :param lines: # of lines around the issue line to display (optional)"},{"line_number":172,"context_line":"        :param level: What level of severity to display (optional)"},{"line_number":173,"context_line":"        :param output_filename: File to output the results (optional)"},{"line_number":174,"context_line":"        :param output_filetype: File type to output"},{"line_number":175,"context_line":"        :return: -"},{"line_number":176,"context_line":"        \u0027\u0027\u0027"},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_1fe2b29f","line":174,"updated":"2015-02-19 22:05:05.000000000","message":"output_format instead of output_filetype?","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"e27578d64724085b7d588015621e4e380a99fe8b","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        :param lines: # of lines around the issue line to display (optional)"},{"line_number":172,"context_line":"        :param level: What level of severity to display (optional)"},{"line_number":173,"context_line":"        :param output_filename: File to output the results (optional)"},{"line_number":174,"context_line":"        :param output_filetype: File type to output"},{"line_number":175,"context_line":"        :return: -"},{"line_number":176,"context_line":"        \u0027\u0027\u0027"},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_486d3f04","line":174,"in_reply_to":"da86d52c_1fe2b29f","updated":"2015-02-19 22:35:27.000000000","message":"Done","commit_id":"c2d548d29d0b655d2e47908d3e268294ebe12e27"},{"author":{"_account_id":14692,"name":"Lucas Fisher","email":"lucas.fisher@gmail.com","username":"lucas.fisher"},"change_message_id":"8bb04a4523a5396cd0625b2be957b0222007e46a","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                                            issue_text), ]"},{"line_number":88,"context_line":"        self.count +\u003d 1"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def report_json(self, output_filename\u003d\u0027results.json\u0027, stats\u003dNone, lines\u003d1):"},{"line_number":91,"context_line":"        \u0027\u0027\u0027Prints/returns warnings in JSON format"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        :param output_filename: File to output the results (optional)"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_f1025a0a","line":90,"updated":"2015-02-19 23:52:53.000000000","message":"Lets not have default output file names. Changes to the filesystem should be explicitly specified by the user.  This deep in the code we probably don\u0027t need a default and the caller must specify.","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"2b71247f185c7fe1b10214a37c3ace674404ee0e","unresolved":false,"context_lines":[{"line_number":87,"context_line":"                                            issue_text), ]"},{"line_number":88,"context_line":"        self.count +\u003d 1"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def report_json(self, output_filename\u003d\u0027results.json\u0027, stats\u003dNone, lines\u003d1):"},{"line_number":91,"context_line":"        \u0027\u0027\u0027Prints/returns warnings in JSON format"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        :param output_filename: File to output the results (optional)"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_02b6be3d","line":90,"in_reply_to":"ba7be1f8_f1025a0a","updated":"2015-02-20 02:03:29.000000000","message":"Done","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":14692,"name":"Lucas Fisher","email":"lucas.fisher@gmail.com","username":"lucas.fisher"},"change_message_id":"8bb04a4523a5396cd0625b2be957b0222007e46a","unresolved":false,"context_lines":[{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        return json_output"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    def report(self, scope, scores, lines\u003d0, level\u003d1, output_filename\u003dNone,"},{"line_number":166,"context_line":"               output_format\u003dNone):"},{"line_number":167,"context_line":"        \u0027\u0027\u0027Prints the contents of the result store"},{"line_number":168,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_715f4a73","line":165,"updated":"2015-02-19 23:52:53.000000000","message":"Refactor this code. Turn report() into a generic function that calls report_json() or report_txt() based on output_format. It makes the code much cleaner. Try to keep the function signatures for report_json and report_txt as similar as feasible.\n\nInstaed of returning a string have each report_* that each take a file object and write to the file object as it goes. Put all the logic determining what file to send the output to in report().  You can pass STDOUT as a file object also.","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"2b71247f185c7fe1b10214a37c3ace674404ee0e","unresolved":false,"context_lines":[{"line_number":162,"context_line":""},{"line_number":163,"context_line":"        return json_output"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    def report(self, scope, scores, lines\u003d0, level\u003d1, output_filename\u003dNone,"},{"line_number":166,"context_line":"               output_format\u003dNone):"},{"line_number":167,"context_line":"        \u0027\u0027\u0027Prints the contents of the result store"},{"line_number":168,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_fd722b48","line":165,"in_reply_to":"ba7be1f8_715f4a73","updated":"2015-02-20 02:03:29.000000000","message":"I do something similar, but instead of passing around file handlers I just use print. I did this because \u0027txt\u0027 format differs depending on if it is going to STDOUT or if its going to a file.","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":14692,"name":"Lucas Fisher","email":"lucas.fisher@gmail.com","username":"lucas.fisher"},"change_message_id":"8bb04a4523a5396cd0625b2be957b0222007e46a","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        :param lines: # of lines around the issue line to display (optional)"},{"line_number":172,"context_line":"        :param level: What level of severity to display (optional)"},{"line_number":173,"context_line":"        :param output_filename: File to output the results (optional)"},{"line_number":174,"context_line":"        :param output_format: File type to output"},{"line_number":175,"context_line":"        :return: -"},{"line_number":176,"context_line":"        \u0027\u0027\u0027"},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_b1d702bf","line":174,"updated":"2015-02-19 23:52:53.000000000","message":"Specify \u0027txt\u0027 and \u0027json\u0027 as options.","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"2b71247f185c7fe1b10214a37c3ace674404ee0e","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        :param lines: # of lines around the issue line to display (optional)"},{"line_number":172,"context_line":"        :param level: What level of severity to display (optional)"},{"line_number":173,"context_line":"        :param output_filename: File to output the results (optional)"},{"line_number":174,"context_line":"        :param output_format: File type to output"},{"line_number":175,"context_line":"        :return: -"},{"line_number":176,"context_line":"        \u0027\u0027\u0027"},{"line_number":177,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"ba7be1f8_a2717279","line":174,"in_reply_to":"ba7be1f8_b1d702bf","updated":"2015-02-20 02:03:29.000000000","message":"Done","commit_id":"36ea66115c2d55fa82cf7d20d8366fed7626bb32"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"f56e7ab94a493dd9d1eb471417051bef26d7d1c4","unresolved":false,"context_lines":[{"line_number":175,"context_line":"        color[\u0027DEFAULT\u0027] \u003d self.config.get_setting(\u0027color_DEFAULT\u0027)"},{"line_number":176,"context_line":"        color[\u0027INFO\u0027] \u003d self.config.get_setting(\u0027color_INFO\u0027)"},{"line_number":177,"context_line":"        color[\u0027WARN\u0027] \u003d self.config.get_setting(\u0027color_WARN\u0027)"},{"line_number":178,"context_line":"        color[\u0027ERROR\u0027] \u003d self.config.get_setting(\u0027color_ERROR\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"        # print header"},{"line_number":181,"context_line":"        tmpstr +\u003d \"Run started:\\n\\t%s\\n\" % datetime.utcnow()"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_e78360ca","line":178,"updated":"2015-02-20 16:37:20.000000000","message":"none of this used within report_txt, remove.","commit_id":"6d5354eb1a1b9002b50c43a1dfc31a331f04c17c"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"6279e78b9ad1f191bf33aa0da21556f6b67fb244","unresolved":false,"context_lines":[{"line_number":259,"context_line":"        color \u003d dict()"},{"line_number":260,"context_line":"        color[\u0027HEADER\u0027] \u003d self.config.get_setting(\u0027color_HEADER\u0027)"},{"line_number":261,"context_line":"        color[\u0027DEFAULT\u0027] \u003d self.config.get_setting(\u0027color_DEFAULT\u0027)"},{"line_number":262,"context_line":"        color[\u0027INFO\u0027] \u003d self.config.get_setting(\u0027color_INFO\u0027)"},{"line_number":263,"context_line":"        color[\u0027WARN\u0027] \u003d self.config.get_setting(\u0027color_WARN\u0027)"},{"line_number":264,"context_line":"        color[\u0027ERROR\u0027] \u003d self.config.get_setting(\u0027color_ERROR\u0027)"},{"line_number":265,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_c6402159","line":262,"updated":"2015-02-20 15:57:48.000000000","message":"Why not do something like:\n\n    get_setting \u003d self.config.get_setting\n    color \u003d {\n        \u0027HEADER\u0027: get_setting(\u0027color_HEADER\u0027),\n        \u0027DEFAULT\u0027: get_setting(\u0027color_DEFAULT\u0027),\n        # etc.\n    }","commit_id":"6d5354eb1a1b9002b50c43a1dfc31a331f04c17c"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"6279e78b9ad1f191bf33aa0da21556f6b67fb244","unresolved":false,"context_lines":[{"line_number":265,"context_line":""},{"line_number":266,"context_line":"        # print header"},{"line_number":267,"context_line":"        tmpstr +\u003d \"%sRun started:%s\\n\\t%s\\n\" % ("},{"line_number":268,"context_line":"            color[\u0027HEADER\u0027],"},{"line_number":269,"context_line":"            color[\u0027DEFAULT\u0027],"},{"line_number":270,"context_line":"            datetime.utcnow()"},{"line_number":271,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_a66ded06","line":268,"updated":"2015-02-20 15:57:48.000000000","message":"For pretty output like this where we\u0027re using a dictionary, why not do something more like\n\n    tmpstr +\u003d \u0027%(HEADER)sRun started:%(DEFAULT)s\\n\\t%s\\n\u0027 % (str(datetime.utcnow(), color)\n\nSomething like that should work. Here and below.\n\nAlso, building a string with +\u003d will result in awful performance of the tool. Can you please revisit how you\u0027re constructing the output","commit_id":"6d5354eb1a1b9002b50c43a1dfc31a331f04c17c"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"ccc6e29e87a99a9ff6c71797ab00c7e1edb659fe","unresolved":false,"context_lines":[{"line_number":265,"context_line":""},{"line_number":266,"context_line":"        # print header"},{"line_number":267,"context_line":"        tmpstr +\u003d \"%sRun started:%s\\n\\t%s\\n\" % ("},{"line_number":268,"context_line":"            color[\u0027HEADER\u0027],"},{"line_number":269,"context_line":"            color[\u0027DEFAULT\u0027],"},{"line_number":270,"context_line":"            datetime.utcnow()"},{"line_number":271,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_c4681af8","line":268,"in_reply_to":"ba7be1f8_a66ded06","updated":"2015-02-20 16:19:32.000000000","message":"So I simply rearranged this code by request of a reviewer so that the def report() method was a little more sane.\n\nI\u0027m not super interested in refactoring all of this, but you bring up a good point about +\u003d performance for string building.\n\nI\u0027ll look at things a little more and see about adjusting.","commit_id":"6d5354eb1a1b9002b50c43a1dfc31a331f04c17c"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"e94789244e8b4eb7d1873ecf4291e4578258af5d","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        filename, lineno \u003d context[\u0027filename\u0027], context[\u0027lineno\u0027]"},{"line_number":69,"context_line":"        (issue_type, issue_text) \u003d issue"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # XXX: tuple usage is fragile because ordering changes on agg_type;"},{"line_number":72,"context_line":"        # ordering is important for reporting as seen in report_json()"},{"line_number":73,"context_line":"        if self.agg_type \u003d\u003d \u0027vuln\u0027:"},{"line_number":74,"context_line":"            if test in self.resstore:"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_386d9533","line":71,"updated":"2015-02-20 17:49:32.000000000","message":"Please put a name here for todo","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"3735bb0e594be44aec237ef3afa8785d18fd1a28","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        filename, lineno \u003d context[\u0027filename\u0027], context[\u0027lineno\u0027]"},{"line_number":69,"context_line":"        (issue_type, issue_text) \u003d issue"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # XXX: tuple usage is fragile because ordering changes on agg_type;"},{"line_number":72,"context_line":"        # ordering is important for reporting as seen in report_json()"},{"line_number":73,"context_line":"        if self.agg_type \u003d\u003d \u0027vuln\u0027:"},{"line_number":74,"context_line":"            if test in self.resstore:"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_73f1eecc","line":71,"in_reply_to":"ba7be1f8_386d9533","updated":"2015-02-20 18:03:55.000000000","message":"Done","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"e94789244e8b4eb7d1873ecf4291e4578258af5d","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        for (fname, reason) in self.skipped:"},{"line_number":100,"context_line":"            machine_output[\u0027errors\u0027].append({\u0027filename\u0027: fname,"},{"line_number":101,"context_line":"                                            \u0027reason\u0027: reason})"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        for filer, score in stats.iteritems():"},{"line_number":104,"context_line":"            machine_output[\u0027stats\u0027].append({\u0027filename\u0027: filer,"},{"line_number":105,"context_line":"                                            \u0027score\u0027: score})"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_f8d13dce","line":102,"updated":"2015-02-20 17:49:32.000000000","message":"We\u0027ll eventually want to add a listing of excluded files here (it\u0027s a new feature)","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"3735bb0e594be44aec237ef3afa8785d18fd1a28","unresolved":false,"context_lines":[{"line_number":99,"context_line":"        for (fname, reason) in self.skipped:"},{"line_number":100,"context_line":"            machine_output[\u0027errors\u0027].append({\u0027filename\u0027: fname,"},{"line_number":101,"context_line":"                                            \u0027reason\u0027: reason})"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"        for filer, score in stats.iteritems():"},{"line_number":104,"context_line":"            machine_output[\u0027stats\u0027].append({\u0027filename\u0027: filer,"},{"line_number":105,"context_line":"                                            \u0027score\u0027: score})"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_93c5825d","line":102,"in_reply_to":"ba7be1f8_f8d13dce","updated":"2015-02-20 18:03:55.000000000","message":"Cool, guess we can look into that once that gets merged.","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"e94789244e8b4eb7d1873ecf4291e4578258af5d","unresolved":false,"context_lines":[{"line_number":104,"context_line":"            machine_output[\u0027stats\u0027].append({\u0027filename\u0027: filer,"},{"line_number":105,"context_line":"                                            \u0027score\u0027: score})"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        # array indicies are determined by order of tuples defined in add()"},{"line_number":108,"context_line":"        if self.agg_type \u003d\u003d \u0027file\u0027:"},{"line_number":109,"context_line":"            for item in self.resstore.items():"},{"line_number":110,"context_line":"                filename \u003d item[0]"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_f8e85d7e","line":107,"updated":"2015-02-20 17:49:32.000000000","message":"typo: indeces","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"3735bb0e594be44aec237ef3afa8785d18fd1a28","unresolved":false,"context_lines":[{"line_number":104,"context_line":"            machine_output[\u0027stats\u0027].append({\u0027filename\u0027: filer,"},{"line_number":105,"context_line":"                                            \u0027score\u0027: score})"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        # array indicies are determined by order of tuples defined in add()"},{"line_number":108,"context_line":"        if self.agg_type \u003d\u003d \u0027file\u0027:"},{"line_number":109,"context_line":"            for item in self.resstore.items():"},{"line_number":110,"context_line":"                filename \u003d item[0]"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_53794a2e","line":107,"in_reply_to":"ba7be1f8_f8e85d7e","updated":"2015-02-20 18:03:55.000000000","message":"Done","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"e94789244e8b4eb7d1873ecf4291e4578258af5d","unresolved":false,"context_lines":[{"line_number":109,"context_line":"            for item in self.resstore.items():"},{"line_number":110,"context_line":"                filename \u003d item[0]"},{"line_number":111,"context_line":"                filelist \u003d item[1]"},{"line_number":112,"context_line":"                for x in filelist:"},{"line_number":113,"context_line":"                    line_num \u003d str(x[0])"},{"line_number":114,"context_line":"                    error_label \u003d str(x[1]).strip()"},{"line_number":115,"context_line":"                    error_type \u003d str(x[2]).strip()"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_98a7614f","line":112,"updated":"2015-02-20 17:49:32.000000000","message":"how about adding a comment here which shows an example of an item in filelist?  This might make the code more readable and help to avoid painful debugging in the future.","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"3735bb0e594be44aec237ef3afa8785d18fd1a28","unresolved":false,"context_lines":[{"line_number":109,"context_line":"            for item in self.resstore.items():"},{"line_number":110,"context_line":"                filename \u003d item[0]"},{"line_number":111,"context_line":"                filelist \u003d item[1]"},{"line_number":112,"context_line":"                for x in filelist:"},{"line_number":113,"context_line":"                    line_num \u003d str(x[0])"},{"line_number":114,"context_line":"                    error_label \u003d str(x[1]).strip()"},{"line_number":115,"context_line":"                    error_type \u003d str(x[2]).strip()"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_b3dd2617","line":112,"in_reply_to":"ba7be1f8_98a7614f","updated":"2015-02-20 18:03:55.000000000","message":"Done","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"e94789244e8b4eb7d1873ecf4291e4578258af5d","unresolved":false,"context_lines":[{"line_number":124,"context_line":"                                   \"code\": code,"},{"line_number":125,"context_line":"                                   \"reason\": reason})"},{"line_number":126,"context_line":"                    collector.append(holder)"},{"line_number":127,"context_line":"        else:"},{"line_number":128,"context_line":"            for item in self.resstore.items():"},{"line_number":129,"context_line":"                vuln_label \u003d item[0]"},{"line_number":130,"context_line":"                filelist \u003d item[1]"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_382595c2","line":127,"updated":"2015-02-20 17:49:32.000000000","message":"please add some comments to explain overall strategy here","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":15173,"name":"Rob Fletcher","email":"rfletch.vol@gmail.com","username":"fletcher"},"change_message_id":"3735bb0e594be44aec237ef3afa8785d18fd1a28","unresolved":false,"context_lines":[{"line_number":124,"context_line":"                                   \"code\": code,"},{"line_number":125,"context_line":"                                   \"reason\": reason})"},{"line_number":126,"context_line":"                    collector.append(holder)"},{"line_number":127,"context_line":"        else:"},{"line_number":128,"context_line":"            for item in self.resstore.items():"},{"line_number":129,"context_line":"                vuln_label \u003d item[0]"},{"line_number":130,"context_line":"                filelist \u003d item[1]"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_33d136fc","line":127,"in_reply_to":"ba7be1f8_382595c2","updated":"2015-02-20 18:03:55.000000000","message":"I hoped the comment at the top of the block would help clear that up (# array indeces are determined by order of tuples defined in add()), but I\u0027ll add somemore.\n\nOnce this merged, I plan to cleanup how we add things to resstore, so that will hopefully make this code much cleaner too.","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"e94789244e8b4eb7d1873ecf4291e4578258af5d","unresolved":false,"context_lines":[{"line_number":229,"context_line":"                                ))"},{"line_number":230,"context_line":"        return \"\".join(tmpstr_list)"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"    def report_tty(self, scope, scores, lines\u003d0, level\u003d1):"},{"line_number":233,"context_line":"        \u0027\u0027\u0027Prints the contents of the result store"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        :param scope: Which files were inspected"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_f3095e2d","line":232,"updated":"2015-02-20 17:49:32.000000000","message":"cool, I like splitting this out","commit_id":"c676eded7f7f4ce1188250063df0e3b49a8d396e"}]}
