)]}'
{"aodh/storage/sqlalchemy/models.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"d80a9f99173b2ddd78d0c7d52b69578650fc6f12","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    def compare_against_backend(self, dialect, conn_type):"},{"line_number":67,"context_line":"        if dialect.name \u003d\u003d \u0027mysql\u0027:"},{"line_number":68,"context_line":"            return issubclass(type(conn_type), DECIMAL)"},{"line_number":69,"context_line":"        return issubclass(type(conn_type), DateTime)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    @staticmethod"},{"line_number":72,"context_line":"    def process_result_value(value, dialect):"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_db75efca","line":69,"updated":"2015-08-07 08:42:42.000000000","message":"self.impl?","commit_id":"a3d8780049636f2bdc901b1b4aa32c75ee40236c"},{"author":{"_account_id":8290,"name":"liusheng","email":"liusheng2048@gmail.com","username":"LiuSheng"},"change_message_id":"b766477564a15c91d81aebe37b7e0c6fbbabc841","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    def compare_against_backend(self, dialect, conn_type):"},{"line_number":67,"context_line":"        if dialect.name \u003d\u003d \u0027mysql\u0027:"},{"line_number":68,"context_line":"            return issubclass(type(conn_type), DECIMAL)"},{"line_number":69,"context_line":"        return issubclass(type(conn_type), DateTime)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    @staticmethod"},{"line_number":72,"context_line":"    def process_result_value(value, dialect):"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_fc330160","line":69,"in_reply_to":"1a4dcd0f_db75efca","updated":"2015-08-07 09:47:39.000000000","message":"the \"self.impl\" will be changed to the type of \"sqlalchemy.dialects.sqlite.base.DATETIME\" when runing the migration test to here. and here the type of conn_type is \"sqlalchemy.sql.sqltypes.DATETIME\", it is not the subclass of former, but the subclass of \"DateTime\".","commit_id":"a3d8780049636f2bdc901b1b4aa32c75ee40236c"}],"aodh/tests/db.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"d80a9f99173b2ddd78d0c7d52b69578650fc6f12","unresolved":false,"context_lines":[{"line_number":185,"context_line":"        if isinstance(test, type) and issubclass(test, TestBase):"},{"line_number":186,"context_line":"            # Decorate all test methods"},{"line_number":187,"context_line":"            for attr in dir(test):"},{"line_number":188,"context_line":"                if attr.startswith(\u0027test_\u0027):"},{"line_number":189,"context_line":"                    value \u003d getattr(test, attr)"},{"line_number":190,"context_line":"                    if callable(value):"},{"line_number":191,"context_line":"                        if six.PY3:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_db23afbb","line":188,"updated":"2015-08-07 08:42:42.000000000","message":"That seems ok but unrelated, right? Then do this in a different patch :)","commit_id":"a3d8780049636f2bdc901b1b4aa32c75ee40236c"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"c0db89f4ac409972627454e9031e64a5b1185fea","unresolved":false,"context_lines":[{"line_number":185,"context_line":"        if isinstance(test, type) and issubclass(test, TestBase):"},{"line_number":186,"context_line":"            # Decorate all test methods"},{"line_number":187,"context_line":"            for attr in dir(test):"},{"line_number":188,"context_line":"                if attr.startswith(\u0027test_\u0027):"},{"line_number":189,"context_line":"                    value \u003d getattr(test, attr)"},{"line_number":190,"context_line":"                    if callable(value):"},{"line_number":191,"context_line":"                        if six.PY3:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_d0338960","line":188,"in_reply_to":"1a4dcd0f_9cfd1db3","updated":"2015-08-07 10:07:31.000000000","message":"Ah ok, makes sense then!","commit_id":"a3d8780049636f2bdc901b1b4aa32c75ee40236c"},{"author":{"_account_id":8290,"name":"liusheng","email":"liusheng2048@gmail.com","username":"LiuSheng"},"change_message_id":"b766477564a15c91d81aebe37b7e0c6fbbabc841","unresolved":false,"context_lines":[{"line_number":185,"context_line":"        if isinstance(test, type) and issubclass(test, TestBase):"},{"line_number":186,"context_line":"            # Decorate all test methods"},{"line_number":187,"context_line":"            for attr in dir(test):"},{"line_number":188,"context_line":"                if attr.startswith(\u0027test_\u0027):"},{"line_number":189,"context_line":"                    value \u003d getattr(test, attr)"},{"line_number":190,"context_line":"                    if callable(value):"},{"line_number":191,"context_line":"                        if six.PY3:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a4dcd0f_9cfd1db3","line":188,"in_reply_to":"1a4dcd0f_db23afbb","updated":"2015-08-07 09:47:39.000000000","message":"when I tested this change, I found the class the dir(test), that is dir(ModelsMigrationsSync) will include a \"__abstractmethods__\", but this is not a attribute of class ModelsMigrationsSync, see:\n\n(Pdb) test.__abstractmethods__\n\n*** AttributeError: __abstractmethods__\n\nso I need changed this.","commit_id":"a3d8780049636f2bdc901b1b4aa32c75ee40236c"}]}
