)]}'
{"oslo_config/cfgfilter.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":129,"context_line":"import itertools"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"from oslo_config import cfg"},{"line_number":132,"context_line":"from oslo_config.cfg import Error"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"class CliOptRegisteredError(Error):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_6c176845","line":132,"updated":"2015-05-23 00:42:33.000000000","message":"This violates one of our hacking guidelines AIUI just use cfg.Error below.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"class CliOptRegisteredError(Error):"},{"line_number":136,"context_line":"    \"\"\"Raised when registering cli opt not existed in original ConfigOpts.\"\"\""},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def __str__(self):"},{"line_number":139,"context_line":"        ret \u003d \"The opt has not been registered in original ConfigOpts, \" \\"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_4c294c89","line":136,"updated":"2015-05-23 00:42:33.000000000","message":"You can drop the word \u0027existed\u0027 from \u0027not existed in\u0027.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"class CliOptRegisteredError(Error):"},{"line_number":136,"context_line":"    \"\"\"Raised when registering cli opt not existed in original ConfigOpts.\"\"\""},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def __str__(self):"},{"line_number":139,"context_line":"        ret \u003d \"The opt has not been registered in original ConfigOpts, \" \\"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_3f075483","line":136,"in_reply_to":"7a016987_4c294c89","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def __str__(self):"},{"line_number":139,"context_line":"        ret \u003d \"The opt has not been registered in original ConfigOpts, \" \\"},{"line_number":140,"context_line":"              \"so it cannot be registered now.\""},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"        if self.msg:"},{"line_number":143,"context_line":"            ret +\u003d \": \" + self.msg"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_0c1fd45b","line":140,"updated":"2015-05-23 00:42:33.000000000","message":"Perhaps \"Cannot register an option that was not present in the original ConfigOpts.\"","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def __str__(self):"},{"line_number":139,"context_line":"        ret \u003d \"The opt has not been registered in original ConfigOpts, \" \\"},{"line_number":140,"context_line":"              \"so it cannot be registered now.\""},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"        if self.msg:"},{"line_number":143,"context_line":"            ret +\u003d \": \" + self.msg"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_5fd570e2","line":140,"in_reply_to":"7a016987_0c1fd45b","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":250,"context_line":"            ret \u003d self._conf.register_opt(opt,"},{"line_number":251,"context_line":"                                          group,"},{"line_number":252,"context_line":"                                          cli\u003dTrue,"},{"line_number":253,"context_line":"                                          clear_cache\u003dFalse)"},{"line_number":254,"context_line":"            self._import_opt(opt.dest, group)"},{"line_number":255,"context_line":"            return ret"},{"line_number":256,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_cc3d3cc5","line":253,"updated":"2015-05-23 00:42:33.000000000","message":"This would be more compact (and readable) as:\n\n ret \u003d self._conf.register_opt(\n     opt, group, cli\u003dTrue, clear_cache\u003dFalse)","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":250,"context_line":"            ret \u003d self._conf.register_opt(opt,"},{"line_number":251,"context_line":"                                          group,"},{"line_number":252,"context_line":"                                          cli\u003dTrue,"},{"line_number":253,"context_line":"                                          clear_cache\u003dFalse)"},{"line_number":254,"context_line":"            self._import_opt(opt.dest, group)"},{"line_number":255,"context_line":"            return ret"},{"line_number":256,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_7fda6c18","line":253,"in_reply_to":"7a016987_cc3d3cc5","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"}],"oslo_config/tests/test_cfgfilter.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from oslo_config import cfg"},{"line_number":19,"context_line":"from oslo_config import cfgfilter"},{"line_number":20,"context_line":"from oslo_config.cfgfilter import CliOptRegisteredError"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class BaseTestCase(test_base.BaseTestCase):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_6c2e488d","line":20,"updated":"2015-05-23 00:42:33.000000000","message":"Again, please don\u0027t do this - just say cfgfile.CliOptRegisteredError.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":129,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":130,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""},{"line_number":131,"context_line":"                                \"Opt \u0027foo\u0027 cannot be registered.\")):"},{"line_number":132,"context_line":"            self.fconf.register_cli_opt(cfg.StrOpt(\u0027foo\u0027))"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    def test_register_known_cli_opts(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_4c502c0b","line":131,"updated":"2015-05-23 00:42:33.000000000","message":"Just a thought - I wouldn\u0027t cross-check the string here, unless thats actually important.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":129,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":130,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""},{"line_number":131,"context_line":"                                \"Opt \u0027foo\u0027 cannot be registered.\")):"},{"line_number":132,"context_line":"            self.fconf.register_cli_opt(cfg.StrOpt(\u0027foo\u0027))"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    def test_register_known_cli_opts(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_bfd464eb","line":131,"in_reply_to":"7a016987_4c502c0b","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":145,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":146,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""},{"line_number":147,"context_line":"                                \"Opt \u0027bar\u0027 cannot be registered.\")):"},{"line_number":148,"context_line":"            self.fconf.register_cli_opts(["},{"line_number":149,"context_line":"                cfg.StrOpt(\u0027foo\u0027),"},{"line_number":150,"context_line":"                cfg.StrOpt(\u0027bar\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_0c56b405","line":147,"updated":"2015-05-23 00:42:33.000000000","message":"Ditto. (and for the rest).","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":145,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":146,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""},{"line_number":147,"context_line":"                                \"Opt \u0027bar\u0027 cannot be registered.\")):"},{"line_number":148,"context_line":"            self.fconf.register_cli_opts(["},{"line_number":149,"context_line":"                cfg.StrOpt(\u0027foo\u0027),"},{"line_number":150,"context_line":"                cfg.StrOpt(\u0027bar\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_9fcf6855","line":147,"in_reply_to":"7a016987_0c56b405","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"}],"tests/test_cfgfilter.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":124,"context_line":"        self.assertIn(\u0027foo\u0027, self.fconf)"},{"line_number":125,"context_line":"        self.assertIn(\u0027foo\u0027, self.conf)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    def test_register_unknown_cli_opt(self):"},{"line_number":128,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":129,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":130,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_8c6184d5","line":127,"updated":"2015-05-23 00:42:33.000000000","message":"This test should not be added (its an artifact of the namespace transition).","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":124,"context_line":"        self.assertIn(\u0027foo\u0027, self.fconf)"},{"line_number":125,"context_line":"        self.assertIn(\u0027foo\u0027, self.conf)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    def test_register_unknown_cli_opt(self):"},{"line_number":128,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":129,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":130,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_dfe840b5","line":127,"in_reply_to":"7a016987_8c6184d5","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":139,"context_line":"        self.assertIn(\u0027foo\u0027, self.conf)"},{"line_number":140,"context_line":"        self.assertIn(\u0027bar\u0027, self.conf)"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    def test_register_unknown_cli_opts(self):"},{"line_number":143,"context_line":"        self.conf.register_cli_opt(cfg.StrOpt(\u0027foo\u0027))"},{"line_number":144,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":145,"context_line":"                               (\"The opt has not been registered in original \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_6c5c0819","line":142,"updated":"2015-05-23 00:42:33.000000000","message":"Ditto.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":139,"context_line":"        self.assertIn(\u0027foo\u0027, self.conf)"},{"line_number":140,"context_line":"        self.assertIn(\u0027bar\u0027, self.conf)"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    def test_register_unknown_cli_opts(self):"},{"line_number":143,"context_line":"        self.conf.register_cli_opt(cfg.StrOpt(\u0027foo\u0027))"},{"line_number":144,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":145,"context_line":"                               (\"The opt has not been registered in original \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_ffe53cdb","line":142,"in_reply_to":"7a016987_6c5c0819","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        self.assertIn(\u0027blaa\u0027, self.fconf)"},{"line_number":165,"context_line":"        self.assertIn(\u0027blaa\u0027, self.conf)"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"    def test_register_unknown_cli_opt_grouped(self):"},{"line_number":168,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":169,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":170,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_2ca170f8","line":167,"updated":"2015-05-23 00:42:33.000000000","message":"Ditto.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        self.assertIn(\u0027blaa\u0027, self.fconf)"},{"line_number":165,"context_line":"        self.assertIn(\u0027blaa\u0027, self.conf)"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"    def test_register_unknown_cli_opt_grouped(self):"},{"line_number":168,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":169,"context_line":"                               (\"The opt has not been registered in original \""},{"line_number":170,"context_line":"                                \"ConfigOpts, so it cannot be registered now.: \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_3fe074cc","line":167,"in_reply_to":"7a016987_2ca170f8","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"d8a8a6ce3d6511b8f239a36e2790e032f446786b","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        self.assertIn(\u0027blaa\u0027, self.fconf)"},{"line_number":182,"context_line":"        self.assertIn(\u0027blaa\u0027, self.conf)"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"    def test_register_unknown_opts_grouped(self):"},{"line_number":185,"context_line":"        self.conf.register_cli_opts([cfg.StrOpt(\u0027bar\u0027)], group\u003d\u0027blaa\u0027)"},{"line_number":186,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":187,"context_line":"                               (\"The opt has not been registered in original \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_eca6b80d","line":184,"updated":"2015-05-23 00:42:33.000000000","message":"Ditto.","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"},{"author":{"_account_id":9215,"name":"Tong Da","email":"tongda@outlook.com","username":"tongda"},"change_message_id":"01619f810f497b4db40d0024a17541d9e25e6d83","unresolved":false,"context_lines":[{"line_number":181,"context_line":"        self.assertIn(\u0027blaa\u0027, self.fconf)"},{"line_number":182,"context_line":"        self.assertIn(\u0027blaa\u0027, self.conf)"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"    def test_register_unknown_opts_grouped(self):"},{"line_number":185,"context_line":"        self.conf.register_cli_opts([cfg.StrOpt(\u0027bar\u0027)], group\u003d\u0027blaa\u0027)"},{"line_number":186,"context_line":"        with ExpectedException(CliOptRegisteredError,"},{"line_number":187,"context_line":"                               (\"The opt has not been registered in original \""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_5fbe90ae","line":184,"in_reply_to":"7a016987_eca6b80d","updated":"2015-05-23 04:42:49.000000000","message":"Done","commit_id":"4ae11e5bae8da507eb14bcad0034a763b1d3ed7c"}]}
