From ed2cbfa4e5ebd12a626022c4c449b1accbe1caf2 Mon Sep 17 00:00:00 2001 From: Tomasz Kramkowski Date: Thu, 16 Mar 2023 12:48:31 +0100 Subject: prevent accessing a future database version --- paste/db.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/paste/db.py b/paste/db.py index 692b01f..25e85ce 100644 --- a/paste/db.py +++ b/paste/db.py @@ -51,6 +51,10 @@ def get_version(connection: sqlite3.Connection) -> int: def migrate(connection: sqlite3.Connection, migrations: list[str]) -> None: version = get_version(connection) + if len(migrations) < version: + raise RuntimeError( + f"Attempt to downgrade from v{version} to v{len(migrations)}" + ) for i in count(version + 1): if i - 1 >= len(migrations): break -- cgit v1.2.3-54-g00ecf