SILENT KILLERPanel

Current Path: > > opt > > hc_python > > > lib > > python3.12 > site-packages > filelock


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt//hc_python///lib//python3.12/site-packages/filelock

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
__init__.py File 1769 bytes April 04 2025 08:02:26.
_api.py File 14545 bytes April 04 2025 08:02:26.
_error.py File 787 bytes April 04 2025 08:02:26.
_soft.py File 1711 bytes April 04 2025 08:02:26.
_unix.py File 2351 bytes April 04 2025 08:02:26.
_util.py File 1715 bytes April 04 2025 08:02:26.
_windows.py File 2179 bytes April 04 2025 08:02:26.
asyncio.py File 12451 bytes April 04 2025 08:02:26.
py.typed File 0 bytes April 04 2025 08:02:26.
version.py File 513 bytes April 04 2025 08:02:26.

Reading File: //opt//hc_python///lib//python3.12/site-packages/filelock/_util.py

from __future__ import annotations

import os
import stat
import sys
from errno import EACCES, EISDIR
from pathlib import Path


def raise_on_not_writable_file(filename: str) -> None:
    """
    Raise an exception if attempting to open the file for writing would fail.

    This is done so files that will never be writable can be separated from files that are writable but currently
    locked.

    :param filename: file to check
    :raises OSError: as if the file was opened for writing.

    """
    try:  # use stat to do exists + can write to check without race condition
        file_stat = os.stat(filename)  # noqa: PTH116
    except OSError:
        return  # swallow does not exist or other errors

    if file_stat.st_mtime != 0:  # if os.stat returns but modification is zero that's an invalid os.stat - ignore it
        if not (file_stat.st_mode & stat.S_IWUSR):
            raise PermissionError(EACCES, "Permission denied", filename)

        if stat.S_ISDIR(file_stat.st_mode):
            if sys.platform == "win32":  # pragma: win32 cover
                # On Windows, this is PermissionError
                raise PermissionError(EACCES, "Permission denied", filename)
            else:  # pragma: win32 no cover # noqa: RET506
                # On linux / macOS, this is IsADirectoryError
                raise IsADirectoryError(EISDIR, "Is a directory", filename)


def ensure_directory_exists(filename: Path | str) -> None:
    """
    Ensure the directory containing the file exists (create it if necessary).

    :param filename: file.

    """
    Path(filename).parent.mkdir(parents=True, exist_ok=True)


__all__ = [
    "ensure_directory_exists",
    "raise_on_not_writable_file",
]

SILENT KILLER Tool