51 lines
1.2 KiB
Python
51 lines
1.2 KiB
Python
__version__ = "1.0.3"
|
|
|
|
# --- required modules ---
|
|
from custom_lib import my_file_config
|
|
from custom_lib import my_logger
|
|
from custom_lib import my_uuid
|
|
|
|
MODULES = [
|
|
my_file_config,
|
|
my_logger,
|
|
my_uuid,
|
|
]
|
|
|
|
# --- optional modules ---
|
|
OPTIONAL_MODULES = []
|
|
MISSING_MODULES = []
|
|
|
|
def _try_import_optional(module_path):
|
|
try:
|
|
module = __import__(f"custom_lib.{module_path}", fromlist=["*"])
|
|
OPTIONAL_MODULES.append(module)
|
|
return True
|
|
except ImportError:
|
|
MISSING_MODULES.append(module_path.split(".")[1])
|
|
return False
|
|
|
|
|
|
# 20260507 tak add my_image
|
|
_try_import_optional("image.my_image")
|
|
|
|
# 20260508 tak add my_crawling
|
|
_try_import_optional("crawling.my_crawling")
|
|
|
|
def print_modules():
|
|
for module in MODULES + OPTIONAL_MODULES:
|
|
version = getattr(module, "__version__", "unknown")
|
|
print(f"# [MODULE] {module.__name__} v{version}")
|
|
|
|
def print_missing_modules():
|
|
for module in MISSING_MODULES:
|
|
print(f"# [MISSING] {module}")
|
|
|
|
def init():
|
|
print("\n" + "#" * 60)
|
|
print(f"# Custom_Lib v{__version__}")
|
|
print("=" * 60)
|
|
|
|
print_modules()
|
|
print_missing_modules()
|
|
|
|
print("#" * 60) |