"""Internal startup utils.""" _IPYTHON_INTERNAL_NAMES = set(locals()) _INTERNAL_NAMES = set(locals()) def _summarise_startup() -> None: import inspect import logging import os frame = inspect.stack()[1].frame filename = os.path.basename(frame.f_locals["__file__"]) nice_name, _ = os.path.splitext(filename) nice_name = nice_name.lstrip("0123456789_") names = sorted( name for name in set(frame.f_locals) - _INTERNAL_NAMES if not name.startswith("_") ) if names: for name in names: _INTERNAL_NAMES.add(name) logging.getLogger("startup").setLevel(logging.INFO) logger = logging.getLogger(f"startup.{nice_name}") log_level = getattr(logging, os.getenv("STARTUP_LOG_LEVEL", "DEBUG")) logger.log(log_level, "%s", ", ".join(names)) _summarise_startup()