hyb
2025-12-30 5e753a15ff53faab2261a53367e44d38caf87041
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Ë
ñúhô
ãó—ddlmZddlZddlZddlmZmZmZddl    m
Z
m Z Gd„de «Z Gd„de«Zd d    „Z                d d
„Zdd „Zy)é)Ú annotationsN)ÚAnyÚProtocolÚcast)ÚNormalizedNameÚcanonicalize_namecó—eZdZdd„Zdd„Zy)Ú BadMetadatacó —||_||_y©N©ÚdistÚreason)Úselfrrs   ú[H:\Change_password\venv_build\Lib\site-packages\pip/_internal/metadata/importlib/_compat.pyÚ__init__zBadMetadata.__init__ s€ØˆŒ    Øˆ ócó<—d|j›d|j›dS)NzBad metadata in z (ú)r ©rs rÚ__str__zBadMetadata.__str__s€Ø! $§)¡) ¨B¨t¯{©{¨m¸1Ð=Ð=rN)rúimportlib.metadata.DistributionrÚstrÚreturnÚNone©rr)Ú__name__Ú
__module__Ú __qualname__rr©rrr
r
 
s „óô>rr
có4—eZdZdZedd„«Zedd„«Zy)ÚBasePatha‡A protocol that various path objects conform.
 
    This exists because importlib.metadata uses both ``pathlib.Path`` and
    ``zipfile.Path``, and we need a common base for type hints (Union does not
    work well since ``zipfile.Path`` is too new for our linter setup).
 
    This does not mean to be exhaustive, but only contains things that present
    in both classes *that we need*.
    có—t«‚r ©ÚNotImplementedErrorrs rÚnamez BasePath.nameó €ä!Ó#Ð#rcó—t«‚r r$rs rÚparentzBasePath.parent"r'rNr)rr")rrrÚ__doc__Úpropertyr&r)r rrr"r"s/„ñðò$óð$ðò$óñ$rr"có—t|dd«S)a–Find the path to the distribution's metadata directory.
 
    HACK: This relies on importlib.metadata's private ``_path`` attribute. Not
    all distributions exist on disk, so importlib.metadata is correct to not
    expose the attribute as public. But pip's code base is old and not as clean,
    so we do this to avoid having to rewrite too many things. Hopefully we can
    eliminate this some day.
    Ú_pathN)Úgetattr)Úds rÚget_info_locationr0's€ô 1g˜tÓ $Ð$rcóô—t|«}|€ytjj|j«\}}|dk(r|j d«\}}}|r||fS|dk(r|j dd«d}|dfSy)zzGet a name and version from the metadata directory name.
 
    This is much faster than reading distribution metadata.
    N)NNz
.dist-infoú-z    .egg-infoér)r0ÚosÚpathÚsplitextr&Ú    partitionÚsplit)rÚ info_locationÚstemÚsuffixr&ÚsepÚversions       rÚ*parse_name_and_version_from_info_directoryr>3s‰€ô& dÓ+€MØÐØä—7‘7×#Ñ# M×$6Ñ$6Ó7L€Dˆ&Ø ÒØ!Ÿ^™^¨CÓ0шˆc7٠ؘ=Ð  à Ò؏z‰z˜#˜qÓ! !Ñ$ˆØTˆzÐà rcó¼—t|«dx}r t|«Stt|«j}t |t «s t|d¬«‚t|«S)z³Get the distribution's normalized name.
 
    The ``name`` attribute is only available in Python 3.10 or later. We are
    targeting exactly that, but Mypy does not know this.
    rzinvalid metadata entry 'name')r)r>rrrr&Ú
isinstancerr
)rr&s  rÚget_dist_canonical_namerAKsX€ô :¸$Ó?ÀÑBÐB€tÐBÜ  Ó&Ð&ä ”T‹?× Ñ €DÜ dœCÔ  Ü˜$Ð'FÔGÐGÜ ˜TÓ "Ð"r)r/rrzBasePath | None)rrrztuple[str | None, str | None])rrrr)Ú
__future__rÚimportlib.metadataÚ    importlibr4ÚtypingrrrÚpip._vendor.packaging.utilsrrÚ
ValueErrorr
r"r0r>rAr rrú<module>rHsNðÝ"ãÛ    ß&Ñ&çIô>*ô>ô$ˆxô$ó(    %ðØ
)ðà"óô0 #r