)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"1309ff5b59346a9537a871e966fd6a5c87a23da6","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add extension entry-points and loading"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This allows Bandit to be extend by third-party packages with both"},{"line_number":10,"context_line":"plugins and formatters. It also updates Bandit\u0027s existing in-tree"},{"line_number":11,"context_line":"formatters to be loaded by the plugin manager. When running"},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"fa32b979_4e0330b9","line":9,"updated":"2015-06-13 20:06:44.000000000","message":"Done","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3f3e22e57fb357d769b530d4cfe643bf9a6d897","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add extension entry-points and loading"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This allows Bandit to be extend by third-party packages with both"},{"line_number":10,"context_line":"plugins and formatters. It also updates Bandit\u0027s existing in-tree"},{"line_number":11,"context_line":"formatters to be loaded by the plugin manager. When running"},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3afb71cf_5502960c","line":9,"updated":"2015-06-07 16:23:12.000000000","message":"s/extend/extended","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3f3e22e57fb357d769b530d4cfe643bf9a6d897","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"    $ bandit -h"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The loaded plugins will be displayed to the user if any are installed."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: I102277dcd9481f2573028a436e910eda10011d91"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3afb71cf_c0148645","line":15,"updated":"2015-06-07 16:23:12.000000000","message":"I tried running bandit -h with your patch and didn\u0027t see a display of plugins.  Does it only print extended plugins?","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3f3e22e57fb357d769b530d4cfe643bf9a6d897","unresolved":false,"context_lines":[{"line_number":13,"context_line":"    $ bandit -h"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The loaded plugins will be displayed to the user if any are installed."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: I102277dcd9481f2573028a436e910eda10011d91"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3afb71cf_2078fa8e","line":16,"updated":"2015-06-07 16:23:12.000000000","message":"Feels like there should be a blueprint associated with this.","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"}],"README.md":[{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"1309ff5b59346a9537a871e966fd6a5c87a23da6","unresolved":false,"context_lines":[{"line_number":158,"context_line":"Extending Bandit"},{"line_number":159,"context_line":"----------------"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"Bandit allows users to write and register extensions for checks and for"},{"line_number":162,"context_line":"formatters. Bandit will load plugins from two entry-points:"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"- `bandit.formatters`"}],"source_content_type":"text/x-gfm","patch_set":6,"id":"fa32b979_0e2c4849","line":161,"updated":"2015-06-13 20:06:44.000000000","message":"Done","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3f3e22e57fb357d769b530d4cfe643bf9a6d897","unresolved":false,"context_lines":[{"line_number":158,"context_line":"Extending Bandit"},{"line_number":159,"context_line":"----------------"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"Bandit allows users to write and register extensions for checks and for"},{"line_number":162,"context_line":"formatters. Bandit will load plugins from two entry-points:"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"- `bandit.formatters`"}],"source_content_type":"text/x-gfm","patch_set":6,"id":"3afb71cf_c03b66d0","line":161,"updated":"2015-06-07 16:23:12.000000000","message":"s/for checks and for formatters/for checks and formatters","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"1309ff5b59346a9537a871e966fd6a5c87a23da6","unresolved":false,"context_lines":[{"line_number":183,"context_line":"                text\u003d\"Unsafe deserialization detected.\""},{"line_number":184,"context_line":"            )"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"To register your plugin, you have two ways:"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"1. If you\u0027re using setuptools directly, add something like the following to"},{"line_number":189,"context_line":"   your `setup` call:"}],"source_content_type":"text/x-gfm","patch_set":6,"id":"fa32b979_2e310ca3","line":186,"updated":"2015-06-13 20:06:44.000000000","message":"Done","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3f3e22e57fb357d769b530d4cfe643bf9a6d897","unresolved":false,"context_lines":[{"line_number":183,"context_line":"                text\u003d\"Unsafe deserialization detected.\""},{"line_number":184,"context_line":"            )"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"To register your plugin, you have two ways:"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"1. If you\u0027re using setuptools directly, add something like the following to"},{"line_number":189,"context_line":"   your `setup` call:"}],"source_content_type":"text/x-gfm","patch_set":6,"id":"3afb71cf_402776b6","line":186,"updated":"2015-06-07 16:23:12.000000000","message":"s/ways/options","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"1309ff5b59346a9537a871e966fd6a5c87a23da6","unresolved":false,"context_lines":[{"line_number":191,"context_line":"        # If you have an imaginary bson formatter in the bandit_bson module"},{"line_number":192,"context_line":"        # and a function called `formatter`."},{"line_number":193,"context_line":"        entry_points\u003d{\u0027bandit.formatters\u0027: [\u0027bson \u003d bandit_bson:formatter\u0027]}"},{"line_number":194,"context_line":"        # Or an check for using mako templates in bandit_mako that"},{"line_number":195,"context_line":"        entry_points\u003d{\u0027bandit.plugins\u0027: [\u0027mako \u003d bandit_mako\u0027]}"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"2. If you\u0027re using pbr, add something like the following to your `setup.cfg`"}],"source_content_type":"text/x-gfm","patch_set":6,"id":"fa32b979_ce25005d","line":194,"updated":"2015-06-13 20:06:44.000000000","message":"Done","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3f3e22e57fb357d769b530d4cfe643bf9a6d897","unresolved":false,"context_lines":[{"line_number":191,"context_line":"        # If you have an imaginary bson formatter in the bandit_bson module"},{"line_number":192,"context_line":"        # and a function called `formatter`."},{"line_number":193,"context_line":"        entry_points\u003d{\u0027bandit.formatters\u0027: [\u0027bson \u003d bandit_bson:formatter\u0027]}"},{"line_number":194,"context_line":"        # Or an check for using mako templates in bandit_mako that"},{"line_number":195,"context_line":"        entry_points\u003d{\u0027bandit.plugins\u0027: [\u0027mako \u003d bandit_mako\u0027]}"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"2. If you\u0027re using pbr, add something like the following to your `setup.cfg`"}],"source_content_type":"text/x-gfm","patch_set":6,"id":"3afb71cf_a00f4a2d","line":194,"updated":"2015-06-07 16:23:12.000000000","message":"s/an/a","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"}],"bandit/bandit.py":[{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"ed4039fcd042d469039f4bd81ca1baddcc40d138","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    if extension_mgr.plugins:"},{"line_number":84,"context_line":"        parser.epilog \u003d (\u0027The following plugin suites were discovered and\u0027"},{"line_number":85,"context_line":"                         \u0027 loaded: [\u0027 +"},{"line_number":86,"context_line":"                         \u0027, \u0027.join(extension_mgr.plugin_names) + \u0027]\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # setup work - parse arguments, and initialize BanditManager"},{"line_number":89,"context_line":"    args \u003d parser.parse_args()"}],"source_content_type":"text/x-python","patch_set":6,"id":"3afb71cf_726ae482","line":86,"updated":"2015-06-09 20:00:23.000000000","message":"+1 to Eric\u0027s comment.  I didn\u0027t see even see this text with an empty list.","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"1309ff5b59346a9537a871e966fd6a5c87a23da6","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    if extension_mgr.plugins:"},{"line_number":84,"context_line":"        parser.epilog \u003d (\u0027The following plugin suites were discovered and\u0027"},{"line_number":85,"context_line":"                         \u0027 loaded: [\u0027 +"},{"line_number":86,"context_line":"                         \u0027, \u0027.join(extension_mgr.plugin_names) + \u0027]\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # setup work - parse arguments, and initialize BanditManager"},{"line_number":89,"context_line":"    args \u003d parser.parse_args()"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa32b979_6e0074ab","line":86,"updated":"2015-06-13 20:06:44.000000000","message":"Done.","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"1461d814fb13f7ecb9dfc81c77be8ffbc19ba605","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    if extension_mgr.plugins:"},{"line_number":84,"context_line":"        parser.epilog \u003d (\u0027The following plugin suites were discovered and\u0027"},{"line_number":85,"context_line":"                         \u0027 loaded: [\u0027 +"},{"line_number":86,"context_line":"                         \u0027, \u0027.join(extension_mgr.plugin_names) + \u0027]\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # setup work - parse arguments, and initialize BanditManager"},{"line_number":89,"context_line":"    args \u003d parser.parse_args()"}],"source_content_type":"text/x-python","patch_set":6,"id":"3afb71cf_adb12149","line":86,"updated":"2015-06-09 20:11:04.000000000","message":"Yeah, I wasn\u0027t sure if we always wanted to print this if there were no plugins registered with/discovered by the extension manager.\n\nSo I think based on your and Eric\u0027s comments that we always want this printed?","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"},{"author":{"_account_id":11861,"name":"Travis McPeak","email":"tmcpeak@us.ibm.com","username":"travis-mcpeak"},"change_message_id":"022a9940c9e0a8b6399d1d42b3f546231c6ef586","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    if extension_mgr.plugins:"},{"line_number":84,"context_line":"        parser.epilog \u003d (\u0027The following plugin suites were discovered and\u0027"},{"line_number":85,"context_line":"                         \u0027 loaded: [\u0027 +"},{"line_number":86,"context_line":"                         \u0027, \u0027.join(extension_mgr.plugin_names) + \u0027]\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # setup work - parse arguments, and initialize BanditManager"},{"line_number":89,"context_line":"    args \u003d parser.parse_args()"}],"source_content_type":"text/x-python","patch_set":6,"id":"3afb71cf_5fdc9072","line":86,"in_reply_to":"3afb71cf_adb12149","updated":"2015-06-09 20:32:18.000000000","message":"Oh yeah, I see it \"if extension_mgr.plugins:\" :)\n\nYeah, let\u0027s print out regardless.","commit_id":"ee3aa0cf918462223f7507e06edfb1e2d289b734"}],"bandit/core/formatters.py":[{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"9e3c77d899c13b96623d46ee4792130c70f61155","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# -*- coding:utf-8 -*-"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Copyright 2015 Rackspace"},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa32b979_33d2ad01","line":3,"updated":"2015-06-15 15:58:45.000000000","message":"No biggie, but does this belong here given that a lot of the report_*() code is just being moved from from another existing file?","commit_id":"61359cc49ecf255ef261756808e05800fb458941"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"d61025a26e94f6b6563025e59073f3d47f4f6b60","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# -*- coding:utf-8 -*-"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Copyright 2015 Rackspace"},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa32b979_9304eac6","line":3,"updated":"2015-06-20 01:12:49.000000000","message":"You\u0027re right. I\u0027m going to omit this, and the copyright notice in the other file. I copied that one to make this one.","commit_id":"61359cc49ecf255ef261756808e05800fb458941"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"d61025a26e94f6b6563025e59073f3d47f4f6b60","unresolved":false,"context_lines":[{"line_number":144,"context_line":"    tmpstr_list.append(\"%sRun started:%s\\n\\t%s\\n\" % ("},{"line_number":145,"context_line":"        color[\u0027HEADER\u0027],"},{"line_number":146,"context_line":"        color[\u0027DEFAULT\u0027],"},{"line_number":147,"context_line":"        datetime.utcnow()"},{"line_number":148,"context_line":"    ))"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"    if result_store.verbose:"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa32b979_b309eedf","line":147,"updated":"2015-06-20 01:12:49.000000000","message":"Good catch","commit_id":"61359cc49ecf255ef261756808e05800fb458941"},{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"9e3c77d899c13b96623d46ee4792130c70f61155","unresolved":false,"context_lines":[{"line_number":144,"context_line":"    tmpstr_list.append(\"%sRun started:%s\\n\\t%s\\n\" % ("},{"line_number":145,"context_line":"        color[\u0027HEADER\u0027],"},{"line_number":146,"context_line":"        color[\u0027DEFAULT\u0027],"},{"line_number":147,"context_line":"        datetime.utcnow()"},{"line_number":148,"context_line":"    ))"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"    if result_store.verbose:"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa32b979_7326f569","line":147,"updated":"2015-06-15 15:58:45.000000000","message":"I think this needs to be datetime.datetime.now(), or the import line needs to change to \u0027from datetime import datetime\u0027?","commit_id":"61359cc49ecf255ef261756808e05800fb458941"}],"bandit/core/result_store.py":[{"author":{"_account_id":11029,"name":"Jamie Finnigan","email":"jamiefinnigan@gmail.com","username":"jamiefinnigan"},"change_message_id":"9e3c77d899c13b96623d46ee4792130c70f61155","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        self.count +\u003d 1"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def _report_xml(self, file_list, scores, excluded_files):"},{"line_number":90,"context_line":"        \u0027\u0027\u0027Prints/returns warnings in XML format (Xunit compatible)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        :param files_list: Which files were inspected"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa32b979_33270d14","side":"PARENT","line":89,"updated":"2015-06-15 15:58:45.000000000","message":"I don\u0027t see where this xml output functionality is being moved to?\n\nThey all have references in setup.cfg and he others (report_csv, report_json, report_txt) are now in formatters.py but I can\u0027t see a report_xml()...","commit_id":"fe0bc8977d74c1857732c859354f2cf0166e4fd9"}]}
