aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/setuptools/compat
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/setuptools/compat')
-rw-r--r--.venv/lib/python3.12/site-packages/setuptools/compat/__init__.py0
-rw-r--r--.venv/lib/python3.12/site-packages/setuptools/compat/py310.py9
-rw-r--r--.venv/lib/python3.12/site-packages/setuptools/compat/py311.py27
-rw-r--r--.venv/lib/python3.12/site-packages/setuptools/compat/py312.py13
-rw-r--r--.venv/lib/python3.12/site-packages/setuptools/compat/py39.py9
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