diff --git a/setup.py b/setup.py index ae2caae0..f72d924f 100755 --- a/setup.py +++ b/setup.py @@ -139,7 +139,7 @@ def main(): else: # e.g. install from GitHub - if os.path.isfile(GENERATOR_DIR): + if os.path.isdir(GENERATOR_DIR): generate(['tl', 'errors']) # Get the long description from the README file diff --git a/telethon/sessions/sqlite.py b/telethon/sessions/sqlite.py index 3bad4a28..c1cbbbd2 100644 --- a/telethon/sessions/sqlite.py +++ b/telethon/sessions/sqlite.py @@ -12,7 +12,7 @@ from ..tl.types import ( ) EXTENSION = '.session' -CURRENT_VERSION = 3 # database version +CURRENT_VERSION = 4 # database version class SQLiteSession(MemorySession): @@ -93,6 +93,14 @@ class SQLiteSession(MemorySession): hash integer, primary key(md5_digest, file_size, type) )""" + , + """update_state ( + id integer primary key, + pts integer, + qts integer, + date integer, + seq integer + )""" ) c.execute("insert into version values (?)", (CURRENT_VERSION,)) # Migrating from JSON -> new table and may have entities @@ -135,18 +143,30 @@ class SQLiteSession(MemorySession): def _upgrade_database(self, old): c = self._cursor() - # old == 1 doesn't have the old sent_files so no need to drop + if old == 1: + old += 1 + # old == 1 doesn't have the old sent_files so no need to drop if old == 2: + old += 1 # Old cache from old sent_files lasts then a day anyway, drop c.execute('drop table sent_files') - self._create_table(c, """sent_files ( - md5_digest blob, - file_size integer, - type integer, - id integer, - hash integer, - primary key(md5_digest, file_size, type) - )""") + self._create_table(c, """sent_files ( + md5_digest blob, + file_size integer, + type integer, + id integer, + hash integer, + primary key(md5_digest, file_size, type) + )""") + if old == 3: + old += 1 + self._create_table(c, """update_state ( + id integer primary key, + pts integer, + qts integer, + date integer, + seq integer + )""") c.close() @staticmethod