PHP 8.2.30
Preview: py311.py Size: 790 B
//proc/thread-self/root/opt/cloudlinux/venv/lib/python3.11/site-packages/setuptools/compat/py311.py

from __future__ import annotations

import shutil
import sys
from typing import TYPE_CHECKING, Any, Callable

if TYPE_CHECKING:
    from _typeshed import ExcInfo, StrOrBytesPath
    from typing_extensions import TypeAlias

# Same as shutil._OnExcCallback from typeshed
_OnExcCallback: TypeAlias = Callable[[Callable[..., Any], str, BaseException], object]


def shutil_rmtree(
    path: StrOrBytesPath,
    ignore_errors: bool = False,
    onexc: _OnExcCallback | None = None,
) -> None:
    if sys.version_info >= (3, 12):
        return shutil.rmtree(path, ignore_errors, onexc=onexc)

    def _handler(fn: Callable[..., Any], path: str, excinfo: ExcInfo) -> None:
        if onexc:
            onexc(fn, path, excinfo[1])

    return shutil.rmtree(path, ignore_errors, onerror=_handler)

Directory Contents

Dirs: 1 × Files: 5

Name Size Perms Modified Actions
- drwxr-xr-x 2026-02-06 08:01:08
Edit Download
493 B lrw-r--r-- 2026-01-20 13:01:47
Edit Download
344 B lrw-r--r-- 2026-01-20 13:01:47
Edit Download
790 B lrw-r--r-- 2026-01-20 13:01:47
Edit Download
366 B lrw-r--r-- 2026-01-20 13:01:47
Edit Download
0 B lrw-r--r-- 2026-01-20 13:01:47
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).