mirror of
https://github.com/maubot/maubot.git
synced 2024-10-01 01:06:10 -04:00
Fix crypto db not working with scheme postgresql
The postgres:// scheme does not work in sqlalchemy 1.4 or higher. Support for postgresql:// was added in 1.1. I updated by config file and suddenly my encryption didn't work anymore, which confused me quite a bit. See: https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-3687655465c25a39b968b4f5f6e9170b
This commit is contained in:
parent
6e66d0ea42
commit
235ce89df1
@ -409,7 +409,7 @@ def init(config: 'Config', loop: asyncio.AbstractEventLoop) -> Iterable[Client]:
|
|||||||
parsed_url = URL(db_url)
|
parsed_url = URL(db_url)
|
||||||
if parsed_url.scheme == "sqlite":
|
if parsed_url.scheme == "sqlite":
|
||||||
Client.crypto_pickle_dir = config["crypto_database.pickle_dir"]
|
Client.crypto_pickle_dir = config["crypto_database.pickle_dir"]
|
||||||
elif parsed_url.scheme == "postgres":
|
elif parsed_url.scheme == "postgres" or parsed_url.scheme == "postgresql":
|
||||||
if not PgCryptoStore:
|
if not PgCryptoStore:
|
||||||
log.warning("Default database is postgres, but asyncpg is not installed. "
|
log.warning("Default database is postgres, but asyncpg is not installed. "
|
||||||
"Encryption will not work.")
|
"Encryption will not work.")
|
||||||
@ -418,7 +418,7 @@ def init(config: 'Config', loop: asyncio.AbstractEventLoop) -> Iterable[Client]:
|
|||||||
upgrade_table=PgCryptoStore.upgrade_table)
|
upgrade_table=PgCryptoStore.upgrade_table)
|
||||||
elif db_type == "pickle":
|
elif db_type == "pickle":
|
||||||
Client.crypto_pickle_dir = config["crypto_database.pickle_dir"]
|
Client.crypto_pickle_dir = config["crypto_database.pickle_dir"]
|
||||||
elif db_type == "postgres" and PgCryptoStore:
|
elif (db_type == "postgres" or db_type == "postgresql") and PgCryptoStore:
|
||||||
Client.crypto_db = AsyncDatabase(url=config["crypto_database.postgres_uri"],
|
Client.crypto_db = AsyncDatabase(url=config["crypto_database.postgres_uri"],
|
||||||
upgrade_table=PgCryptoStore.upgrade_table)
|
upgrade_table=PgCryptoStore.upgrade_table)
|
||||||
else:
|
else:
|
||||||
|
Loading…
Reference in New Issue
Block a user