| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- from __future__ import annotations
- from contextlib import contextmanager
- from typing import TYPE_CHECKING
- from .base import AppData, ContentStore
- if TYPE_CHECKING:
- from collections.abc import Generator
- from pathlib import Path
- from typing import Any, NoReturn
- class AppDataDisabled(AppData):
- """No application cache available (most likely as we don't have write permissions)."""
- transient = True
- can_update = False
- def __init__(self) -> None:
- pass
- error = RuntimeError("no app data folder available, probably no write access to the folder")
- def close(self) -> None:
- """Do nothing."""
- def reset(self) -> None:
- """Do nothing."""
- def py_info(self, path: Path) -> ContentStoreNA: # noqa: ARG002
- return ContentStoreNA()
- def embed_update_log(self, distribution: str, for_py_version: str) -> ContentStoreNA: # noqa: ARG002
- return ContentStoreNA()
- def extract(self, path: Path, to_folder: Path | None) -> NoReturn: # noqa: ARG002
- raise self.error
- @contextmanager
- def locked(self, path: Path) -> Generator[None]: # noqa: ARG002
- """Do nothing."""
- yield
- @property
- def house(self) -> NoReturn:
- raise self.error
- def wheel_image(self, for_py_version: str, name: str) -> NoReturn: # noqa: ARG002
- raise self.error
- def py_info_clear(self) -> None:
- """Nothing to clear."""
- class ContentStoreNA(ContentStore):
- def exists(self) -> bool:
- return False
- def read(self) -> None:
- """Nothing to read."""
- return
- def write(self, content: Any) -> None: # noqa: ANN401
- """Nothing to write."""
- def remove(self) -> None:
- """Nothing to remove."""
- @contextmanager
- def locked(self) -> Generator[None]:
- yield
- __all__ = [
- "AppDataDisabled",
- "ContentStoreNA",
- ]
|