initial commit
This commit is contained in:
		| @@ -0,0 +1,52 @@ | ||||
| """ | ||||
| This code wraps the vendored appdirs module to so the return values are | ||||
| compatible for the current pip code base. | ||||
|  | ||||
| The intention is to rewrite current usages gradually, keeping the tests pass, | ||||
| and eventually drop this after all usages are changed. | ||||
| """ | ||||
|  | ||||
| import os | ||||
| import sys | ||||
| from typing import List | ||||
|  | ||||
| from pip._vendor import platformdirs as _appdirs | ||||
|  | ||||
|  | ||||
| def user_cache_dir(appname: str) -> str: | ||||
|     return _appdirs.user_cache_dir(appname, appauthor=False) | ||||
|  | ||||
|  | ||||
| def _macos_user_config_dir(appname: str, roaming: bool = True) -> str: | ||||
|     # Use ~/Application Support/pip, if the directory exists. | ||||
|     path = _appdirs.user_data_dir(appname, appauthor=False, roaming=roaming) | ||||
|     if os.path.isdir(path): | ||||
|         return path | ||||
|  | ||||
|     # Use a Linux-like ~/.config/pip, by default. | ||||
|     linux_like_path = "~/.config/" | ||||
|     if appname: | ||||
|         linux_like_path = os.path.join(linux_like_path, appname) | ||||
|  | ||||
|     return os.path.expanduser(linux_like_path) | ||||
|  | ||||
|  | ||||
| def user_config_dir(appname: str, roaming: bool = True) -> str: | ||||
|     if sys.platform == "darwin": | ||||
|         return _macos_user_config_dir(appname, roaming) | ||||
|  | ||||
|     return _appdirs.user_config_dir(appname, appauthor=False, roaming=roaming) | ||||
|  | ||||
|  | ||||
| # for the discussion regarding site_config_dir locations | ||||
| # see <https://github.com/pypa/pip/issues/1733> | ||||
| def site_config_dirs(appname: str) -> List[str]: | ||||
|     if sys.platform == "darwin": | ||||
|         return [_appdirs.site_data_dir(appname, appauthor=False, multipath=True)] | ||||
|  | ||||
|     dirval = _appdirs.site_config_dir(appname, appauthor=False, multipath=True) | ||||
|     if sys.platform == "win32": | ||||
|         return [dirval] | ||||
|  | ||||
|     # Unix-y system. Look in /etc as well. | ||||
|     return dirval.split(os.pathsep) + ["/etc"] | ||||
		Reference in New Issue
	
	Block a user
	 klein panic
					klein panic