| Server IP : 66.29.153.156 / Your IP : 216.73.217.0 Web Server : LiteSpeed System : Linux premium322.web-hosting.com 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64 User : lastyfjz ( 1521) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /././proc/self/root/opt/hc_python/lib64/python3.12/site-packages/pip/_internal/models/ |
Upload File : |
"""PEP 610"""
from __future__ import annotations
import json
from typing import Any
from pip._vendor.packaging.direct_url import (
ArchiveInfo,
DirectUrlValidationError,
DirInfo,
VcsInfo,
)
from pip._vendor.packaging.direct_url import (
DirectUrl as PackagingDirectUrl,
)
__all__ = [
"ArchiveInfo",
"DirInfo",
"DirectUrl",
"DirectUrlValidationError",
"DIRECT_URL_METADATA_NAME",
"VcsInfo",
]
DIRECT_URL_METADATA_NAME = "direct_url.json"
class DirectUrl(PackagingDirectUrl):
def to_dict_compat(self) -> dict[str, Any]:
return dict(super().to_dict(generate_legacy_hash=True))
@classmethod
def from_json(cls, s: str) -> DirectUrl:
return cls.from_dict(json.loads(s))
def to_json(self) -> str:
return json.dumps(self.to_dict_compat(), sort_keys=True)
def is_local_editable(self) -> bool:
return bool(self.dir_info and self.dir_info.editable)