Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
odigos / etc / odigos-vmagent / instrumentations / python / packaging / __pycache__ / _musllinux.cpython-311.pyc
Size: Mime:
§

Ög†
ã
ó—dZddlmZddlZddlZddlZddlZddlmZm	Z	m
Z
ddlmZGd„de	¦«Z
d!d
„Zejd"d„¦«Zd#d„ZedkrªddlZej¦«Ze d¦«s
Jd¦«‚ede¦«edeej¦«¦«edd¬¦«eejdde dd¦«d¦«¦«D]Zeed ¬¦«ŒdSdS)$zPEP 656 support.

This module implements logic to detect if the currently running Python is
linked against musl, and what musl version is used.
é)ÚannotationsN)ÚIteratorÚ
NamedTupleÚSequenceé)ÚELFFilecó$—eZdZUded<ded<dS)Ú_MuslVersionÚintÚmajorÚminorN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__©óú;/tmp/pip-target-6culloxw/lib/python/packaging/_musllinux.pyr
r
s"€€€€€€Ø€J€JJØ€J€JJ€J€Jrr
ÚoutputÚstrÚreturnú_MuslVersion | Nonecó„—d„d„| ¦«D¦«D¦«}t|¦«dks|ddd…dkrdStjd|d¦«}|sdSt	t| d¦«¦«t| d¦«¦«¬	¦«S)
Ncó—g|]}|¯|‘ŒSrr©Ú.0Úns  rú
<listcomp>z'_parse_musl_version.<locals>.<listcomp>s€ÐFÐFÐF1ÀAÐFˆQÐFÐFÐFrc3ó>K—|]}| ¦«V—ŒdS)N)Ústriprs  rú	<genexpr>z&_parse_musl_version.<locals>.<genexpr>s*èè€Ð@Ð@ q˜Ÿš™œÐ@Ð@Ð@Ð@Ð@Ð@réréÚmuslzVersion (\d+)\.(\d+)r)rr
)Ú
splitlinesÚlenÚreÚmatchr
rÚgroup)rÚlinesÚms   rÚ_parse_musl_versionr,s°€ØFÐFÐ@Ð@¨F×,=Ò,=Ñ,?Ô,?Ð@Ñ@Ô@ÐFÑFÔF€EÝ
ˆ5z„zA‚~€~˜˜qœ " 1 "œ¨Ò/Ð/؈tÝ
ŒÐ(¨%°¬(Ñ3Ô3€AØð؈tݝc !§'¢'¨!¡*¤*™oœoµS¸¿ºÀ¹¼±_´_ÐEÑEÔEÐErÚ
executablecó6—	t|d¦«5}t|¦«j}ddd¦«n#1swxYwYn#ttt
f$rYdSwxYw|d|vrdSt
j|gtjd¬¦«}t|j
¦«S)a`Detect currently-running musl runtime version.

    This is done by checking the specified executable's dynamic linking
    information, and invoking the loader to parse its output for a version
    string. If the loader is musl, the output would be something like::

        musl libc (x86_64)
        Version 1.2.2
        Dynamic Program Loader
    ÚrbNr$T)ÚstderrÚtext)ÚopenrÚinterpreterÚOSErrorÚ	TypeErrorÚ
ValueErrorÚ
subprocessÚrunÚPIPEr,r0)r-ÚfÚldÚprocs    rÚ_get_musl_versionr=!s߀ðÝ
*˜dÑ
#Ô
#ð	( qݘ‘”Ô'ˆBð	(ð	(ð	(ñ	(ô	(ð	(ð	(ð	(ð	(ð	(ð	(øøøð	(ð	(ð	(ð	(øøå•Y¥
Ð+ððð؈tˆtðøøøà	€zV 2Ð%Ð%؈tÝŒ>˜2˜$¥z¤¸TÐBÑBÔB€Dݘtœ{Ñ+Ô+Ð+s'‚?’3§?³7·?º7»?¿AÁAÚarchsú
Sequence[str]ú
Iterator[str]c#ó¤K—ttj¦«}|€dS|D]-}t|jdd¦«D]}d|j›d|›d|›V—ŒŒ.dS)aÆGenerate musllinux tags compatible to the current platform.

    :param archs: Sequence of compatible architectures.
        The first one shall be the closest to the actual architecture and be the part of
        platform tag after the ``linux_`` prefix, e.g. ``x86_64``.
        The ``linux_`` prefix is assumed as a prerequisite for the current platform to
        be musllinux-compatible.

    :returns: An iterator of compatible musllinux tags.
    NéÿÿÿÿÚ
musllinux_Ú_)r=Úsysr-Úranger
r)r>Úsys_muslÚarchr
s    rÚ
platform_tagsrI8s†èè€õ!¥¤Ñ0Ô0€HØÐ؈Øð?ð?ˆÝ˜8œ>¨2¨rÑ2Ô2ð	?ð	?ˆEØ>˜xœ~Ð>Ð>°Ð>Ð>¸Ð>Ð>Ð>Ð>Ð>Ð>ð	?ð?ð?rÚ__main__zlinux-z	not linuxzplat:zmusl:ztags:ú )Úendz[.-]rDú-rBz
      )rrrr)r-rrr)r>r?rr@)Ú__doc__Ú
__future__rÚ	functoolsr'r7rEÚtypingrrrÚ_elffilerr
r,Ú	lru_cacher=rIrÚ	sysconfigÚget_platformÚplatÚ
startswithÚprintr-ÚsubÚsplitÚtrrrú<module>r\síðððð#Ð"Ð"Ð"Ð"Ð"àÐÐÐØ	€	€	€	ØÐÐÐØ
€
€
€
Ø1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1àÐÐÐÐÐððððð:ñôðð
FðFðFðFðÔð,ð,ð,ñÔð,ð,?ð?ð?ð?ð&ˆzÒÐØÐÐÐà!ˆ9Ô!Ñ#Ô#€D؏?Š?˜8Ñ$Ô$Ð1Ð1 kÑ1Ô1Ð$à	€Eˆ'4ÑÔÐØ	€Eˆ'Ð$Ð$ S¤^Ñ4Ô4Ñ5Ô5Ð5Ø	€Eˆ'sÐÑÔÐØ
ˆ]˜6˜2œ6 '¨3°·
²
¸3ÀÑ0BÔ0BÀ2Ô0FÑGÔGÑ
HÔ
Hð!ð!ˆØ
ˆˆaZÐ Ñ Ô Ð Ð ðÐð!ð!r