From 7cd46f6842cc0e0c8279b1f1607d9ffb4acb9102 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Haoran=20S=2E=20Diao=20=28=E5=88=81=E6=B5=A9=E7=84=B6=29?= <0@hairydiode.xyz> Date: Wed, 5 Jul 2023 04:53:17 -0700 Subject: initial commit, includes venv --- e/lib/python3.11/site-packages/setuptools/_path.py | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 e/lib/python3.11/site-packages/setuptools/_path.py (limited to 'e/lib/python3.11/site-packages/setuptools/_path.py') diff --git a/e/lib/python3.11/site-packages/setuptools/_path.py b/e/lib/python3.11/site-packages/setuptools/_path.py new file mode 100644 index 0000000..3767523 --- /dev/null +++ b/e/lib/python3.11/site-packages/setuptools/_path.py @@ -0,0 +1,29 @@ +import os +from typing import Union + +_Path = Union[str, os.PathLike] + + +def ensure_directory(path): + """Ensure that the parent directory of `path` exists""" + dirname = os.path.dirname(path) + os.makedirs(dirname, exist_ok=True) + + +def same_path(p1: _Path, p2: _Path) -> bool: + """Differs from os.path.samefile because it does not require paths to exist. + Purely string based (no comparison between i-nodes). + >>> same_path("a/b", "./a/b") + True + >>> same_path("a/b", "a/./b") + True + >>> same_path("a/b", "././a/b") + True + >>> same_path("a/b", "./a/b/c/..") + True + >>> same_path("a/b", "../a/b/c") + False + >>> same_path("a", "a/b") + False + """ + return os.path.normpath(p1) == os.path.normpath(p2) -- cgit v1.1