diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/setuptools/compat')
5 files changed, 58 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/setuptools/compat/__init__.py b/.venv/lib/python3.12/site-packages/setuptools/compat/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/.venv/lib/python3.12/site-packages/setuptools/compat/__init__.py diff --git a/.venv/lib/python3.12/site-packages/setuptools/compat/py310.py b/.venv/lib/python3.12/site-packages/setuptools/compat/py310.py new file mode 100644 index 00000000..b3912f8e --- /dev/null +++ b/.venv/lib/python3.12/site-packages/setuptools/compat/py310.py @@ -0,0 +1,9 @@ +import sys + +__all__ = ['tomllib'] + + +if sys.version_info >= (3, 11): + import tomllib +else: # pragma: no cover + import tomli as tomllib diff --git a/.venv/lib/python3.12/site-packages/setuptools/compat/py311.py b/.venv/lib/python3.12/site-packages/setuptools/compat/py311.py new file mode 100644 index 00000000..52b58af3 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/setuptools/compat/py311.py @@ -0,0 +1,27 @@ +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) diff --git a/.venv/lib/python3.12/site-packages/setuptools/compat/py312.py b/.venv/lib/python3.12/site-packages/setuptools/compat/py312.py new file mode 100644 index 00000000..b20c5f69 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/setuptools/compat/py312.py @@ -0,0 +1,13 @@ +from __future__ import annotations + +import sys + +if sys.version_info >= (3, 12, 4): + # Python 3.13 should support `.pth` files encoded in UTF-8 + # See discussion in https://github.com/python/cpython/issues/77102 + PTH_ENCODING: str | None = "utf-8" +else: + from .py39 import LOCALE_ENCODING + + # PTH_ENCODING = "locale" + PTH_ENCODING = LOCALE_ENCODING diff --git a/.venv/lib/python3.12/site-packages/setuptools/compat/py39.py b/.venv/lib/python3.12/site-packages/setuptools/compat/py39.py new file mode 100644 index 00000000..04a4abe5 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/setuptools/compat/py39.py @@ -0,0 +1,9 @@ +import sys + +# Explicitly use the ``"locale"`` encoding in versions that support it, +# otherwise just rely on the implicit handling of ``encoding=None``. +# Since all platforms that support ``EncodingWarning`` also support +# ``encoding="locale"``, this can be used to suppress the warning. +# However, please try to use UTF-8 when possible +# (.pth files are the notorious exception: python/cpython#77102, pypa/setuptools#3937). +LOCALE_ENCODING = "locale" if sys.version_info >= (3, 10) else None |