Spaces:
Running
Running
| """ | |
| Compatibility shim for the historical ``openenv_core`` package. | |
| The core runtime now lives under ``openenv.core``. Importing from the old | |
| package path will continue to work but emits a ``DeprecationWarning`` so | |
| downstream users can migrate at their own pace. | |
| """ | |
| from __future__ import annotations | |
| import importlib | |
| import sys | |
| import warnings | |
| from types import ModuleType | |
| from typing import Dict | |
| _TARGET_PREFIX = "openenv.core" | |
| _TARGET_MODULE = importlib.import_module(_TARGET_PREFIX) | |
| warnings.warn( | |
| "openenv_core is deprecated; import from openenv.core instead.", | |
| DeprecationWarning, | |
| stacklevel=2, | |
| ) | |
| __all__ = getattr(_TARGET_MODULE, "__all__", []) | |
| def __getattr__(name: str): | |
| return getattr(_TARGET_MODULE, name) | |
| def __dir__(): | |
| return sorted(set(dir(_TARGET_MODULE))) | |
| def _alias(name: str) -> None: | |
| target = f"{_TARGET_PREFIX}.{name}" | |
| sys.modules[f"{__name__}.{name}"] = importlib.import_module(target) | |
| for _child in ("client_types", "containers", "env_server", "env_client", "tools"): | |
| try: | |
| _alias(_child) | |
| except ModuleNotFoundError: # pragma: no cover - defensive | |
| continue | |