)]}'
{"pbr/util.py":[{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"be5c0a76a0f20a0e3ddd64ad8295af99d8562102","unresolved":false,"context_lines":[{"line_number":366,"context_line":"                        pbrclass \u003d issubclass_pbr_command_class(cls)"},{"line_number":367,"context_line":"                        if cmd.__class__ \u003d\u003d pbrclass:"},{"line_number":368,"context_line":"                            # Don\u0027t clobber a command class specified"},{"line_number":369,"context_line":"                            # by [globals] in setup.cfg, however, allow"},{"line_number":370,"context_line":"                            # custom command classes to override a pbr"},{"line_number":371,"context_line":"                            # command class."},{"line_number":372,"context_line":"                            # If this condition is true, the current"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_69d0fef7","line":369,"updated":"2014-06-09 18:08:10.000000000","message":"I think this is intended to read \u0027instead\u0027 instead of \u0027however\u0027. Because with \u0027however\u0027 it implise that it is clobbering those command classes. But the code doesn\u0027t do that.","commit_id":"f10c561968c90a3b11e7e16c611ae68e31c837b2"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"be5c0a76a0f20a0e3ddd64ad8295af99d8562102","unresolved":false,"context_lines":[{"line_number":372,"context_line":"                            # If this condition is true, the current"},{"line_number":373,"context_line":"                            # command class `cmd` is coming from"},{"line_number":374,"context_line":"                            # pbr.hooks.commands, so don\u0027t allow it"},{"line_number":375,"context_line":"                            # to override."},{"line_number":376,"context_line":"                            continue"},{"line_number":377,"context_line":"                    cmdclass[cmd.get_command_name()] \u003d cls"},{"line_number":378,"context_line":"                in_cfg_value \u003d cmdclass"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_89cd4a60","line":375,"updated":"2014-06-09 18:08:10.000000000","message":"Wouldn\u0027t this be easier to test by just checking if the class is one of the classes in pbr.hooks.commands?","commit_id":"f10c561968c90a3b11e7e16c611ae68e31c837b2"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"be5c0a76a0f20a0e3ddd64ad8295af99d8562102","unresolved":false,"context_lines":[{"line_number":381,"context_line":"                    if not issubclass_pbr_command_class(cmdclass[command]):"},{"line_number":382,"context_line":"                        log.warn(\"Using non-pbr command \""},{"line_number":383,"context_line":"                                 \"class %s for \u0027%s\u0027 command!\","},{"line_number":384,"context_line":"                                 cmdclass[command], cmd_name)"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"        kwargs[arg] \u003d in_cfg_value"},{"line_number":387,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_a9da0615","line":384,"updated":"2014-06-09 18:08:10.000000000","message":"There\u0027s no need to late-emit this, you can test it in the same block you detect the conflict, and then you don\u0027t need the conflicts list at all.","commit_id":"f10c561968c90a3b11e7e16c611ae68e31c837b2"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"be5c0a76a0f20a0e3ddd64ad8295af99d8562102","unresolved":false,"context_lines":[{"line_number":392,"context_line":"    \"\"\"Determine whether a class is a subclass of a pbr command class."},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"    Note: The python builtin issubclass() considers a class to be a subclass"},{"line_number":395,"context_line":"    of itself, i.e. will return True for issubclass(A, A)"},{"line_number":396,"context_line":"    \"\"\""},{"line_number":397,"context_line":""},{"line_number":398,"context_line":"    pbrcmdclasses \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_c9d752ec","line":395,"updated":"2014-06-09 18:08:10.000000000","message":"Could you please document the return value? e.g.\n\n:return: None or the pbr base class.","commit_id":"f10c561968c90a3b11e7e16c611ae68e31c837b2"},{"author":{"_account_id":4190,"name":"lifeless","email":"robertc@robertcollins.net","username":"lifeless"},"change_message_id":"be5c0a76a0f20a0e3ddd64ad8295af99d8562102","unresolved":false,"context_lines":[{"line_number":394,"context_line":"    Note: The python builtin issubclass() considers a class to be a subclass"},{"line_number":395,"context_line":"    of itself, i.e. will return True for issubclass(A, A)"},{"line_number":396,"context_line":"    \"\"\""},{"line_number":397,"context_line":""},{"line_number":398,"context_line":"    pbrcmdclasses \u003d ["},{"line_number":399,"context_line":"        \u0027LocalEggInfo\u0027,"},{"line_number":400,"context_line":"        \u0027LocalSDist\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_e9032e74","line":397,"updated":"2014-06-09 18:08:10.000000000","message":"This blank line should not be here (PEP-0257).","commit_id":"f10c561968c90a3b11e7e16c611ae68e31c837b2"}]}
