73 lines
2.1 KiB
Python
73 lines
2.1 KiB
Python
"""A collection of functions which are triggered automatically by finder when
|
|
tortoise-orm package is included.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import TYPE_CHECKING
|
|
|
|
if TYPE_CHECKING:
|
|
from cx_Freeze.finder import ModuleFinder
|
|
from cx_Freeze.module import Module
|
|
|
|
|
|
def load_tortoise(finder: ModuleFinder, module: Module) -> None:
|
|
"""Add the tortoise-orm metadata."""
|
|
finder.include_package("tortoise.backends")
|
|
finder.exclude_module("tortoise.testing")
|
|
# Ignore optional modules
|
|
module.ignore_names.add("yaml")
|
|
# Fix the metadata
|
|
module.update_distribution("tortoise-orm")
|
|
|
|
|
|
def load_tortoise_backends_asyncpg_client(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.update(["asyncpg", "asyncpg.transaction"])
|
|
|
|
|
|
def load_tortoise_backends_asyncpg_executor(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.add("asyncpg")
|
|
|
|
|
|
def load_tortoise_backends_mysql_client(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.update(
|
|
[
|
|
"aiomysql",
|
|
"asyncmy",
|
|
"asyncmy.charset",
|
|
"pymysql",
|
|
"pymysql.charset",
|
|
]
|
|
)
|
|
|
|
|
|
def load_tortoise_backends_odbc_client(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.update(["asyncodbc", "pyodbc"])
|
|
|
|
|
|
def load_tortoise_backends_oracle_client(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.update(["asyncodbc", "ciso8601", "pyodbc"])
|
|
|
|
|
|
def load_tortoise_backends_psycopg_client(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.update(
|
|
[
|
|
"psycopg",
|
|
"psycopg.conninfo",
|
|
"psycopg.pq",
|
|
"psycopg.rows",
|
|
"psycopg_pool",
|
|
]
|
|
)
|
|
|
|
|
|
def load_tortoise_fields_data(_, module: Module) -> None:
|
|
"""Ignore optional modules."""
|
|
module.ignore_names.update(["ciso8601", "orjson"])
|