)]}'
{"openstack/cdn/v1/_proxy.py":[{"author":{"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},"change_message_id":"d2a5df9d3a624ec6a5ae346d48a104d2638aa8ab","unresolved":false,"context_lines":[{"line_number":13,"context_line":"from openstack.cdn.v1 import ping"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"class Proxy(object):"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"    def __init__(self, session):"},{"line_number":19,"context_line":"        self.session \u003d session"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_0955651d","line":16,"updated":"2015-03-03 14:11:50.000000000","message":"base here?","commit_id":"5a9c65e378d4b1755ea8c81f9f1214fc10e73de4"},{"author":{"_account_id":12000,"name":"Ian Cordasco","email":"sigmavirus24@gmail.com","username":"sigmavirus24"},"change_message_id":"92009437ddb0545050fd2f98c1ba6966eae89991","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"class Proxy(proxy.BaseProxy):"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    def __init__(self, session):"},{"line_number":20,"context_line":"        self.session \u003d session"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    def ping(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_54b1adff","line":19,"updated":"2015-03-03 14:59:31.000000000","message":"Shouldn\u0027t this be unnecessary when inheriting from BaseProxy?","commit_id":"92d9e15f8076d03d3c2b0d59e93a866df6966d9f"}],"openstack/connection.py":[{"author":{"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},"change_message_id":"d2a5df9d3a624ec6a5ae346d48a104d2638aa8ab","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        try:"},{"line_number":154,"context_line":"            __import__(module)"},{"line_number":155,"context_line":"            proxy_class \u003d getattr(sys.modules[module], \"Proxy\")"},{"line_number":156,"context_line":"            if not issubclass(proxy_class, proxy.BaseProxy):"},{"line_number":157,"context_line":"                raise TypeError(\"%s.Proxy must inherit from BaseProxy\" %"},{"line_number":158,"context_line":"                                proxy_class.__module__)"},{"line_number":159,"context_line":"            setattr(self, attr_name, proxy_class(self.session))"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_890f9538","line":156,"updated":"2015-03-03 14:11:50.000000000","message":"do we want to raise an error or warn and ignore.","commit_id":"5a9c65e378d4b1755ea8c81f9f1214fc10e73de4"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"3bcdb508617221bb155543a59726e1222c54d0e7","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        try:"},{"line_number":154,"context_line":"            __import__(module)"},{"line_number":155,"context_line":"            proxy_class \u003d getattr(sys.modules[module], \"Proxy\")"},{"line_number":156,"context_line":"            if not issubclass(proxy_class, proxy.BaseProxy):"},{"line_number":157,"context_line":"                raise TypeError(\"%s.Proxy must inherit from BaseProxy\" %"},{"line_number":158,"context_line":"                                proxy_class.__module__)"},{"line_number":159,"context_line":"            setattr(self, attr_name, proxy_class(self.session))"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_d4191d7b","line":156,"in_reply_to":"ba7be1f8_890f9538","updated":"2015-03-03 14:55:42.000000000","message":"Hmm, I\u0027m actually thinking we *should* raise here because the error becomes more clear. For example, if compute doesn\u0027t inherit from BaseProxy, then conn.compute is going to be a NameError, which will be very odd, and then we\u0027d have to hope the user has a logger capturing our messages.","commit_id":"5a9c65e378d4b1755ea8c81f9f1214fc10e73de4"}]}
