Ë k]�ª†©äãó6—dZddlmZmZddlmZddlmZddlZddl Z ddl Z ddl Z ddl Z ddl mZddlmZdd lmZdd lmZmZd „Zd „Zd „Zd„ZGd„de«Zej9dj;««Zd„Zd„Z d„Z!dddœZ"d„Z#d„Z$d„Z%gd¢Z&dd„Z'y)z6setuptools.command.bdist_egg Build .egg distributionsé)Ú remove_treeÚmkpath)Úlog)ÚCodeTypeN)ÚLibrary)ÚCommandé)Úensure_directory)Úget_pathÚget_python_versioncó—td«S)NÚpurelib)r ©óúA/usr/lib/python3.12/site-packages/setuptools/command/bdist_egg.pyÚ _get_purelibrs €Ü �IÓ Ðrcó~—d|vr"tjj|«d}|jd«r|dd}|S)NÚ.rÚmoduleiúÿÿÿ)ÚosÚpathÚsplitextÚendswith)Úfilenames rÚ strip_modulers@€Ø ˆh�Ü—7‘7×#Ñ# HÓ-¨aÑ0ˆØ×јÔ"ؘC˜R�=ˆØ €Orc#ó–K—tj|«D]-\}}}|j«|j«|||f–—Œ/y­w)zbDo os.walk in a reproducible way, independent of indeterministic filesystem readdir order N)rÚwalkÚsort)ÚdirÚbaseÚdirsÚfiless rÚ sorted_walkr#!s@èø€ô ŸW™W Sž\шˆd�EØ � ‰ Œ Ø � ‰ Œ Ø�D˜%ÐÓñ*ùs‚AA có´—tjd«j«}t|d«5}|j ||z«ddd«y#1swYyxYw)NaÛ def __bootstrap__(): global __bootstrap__, __loader__, __file__ import sys, pkg_resources, importlib.util __file__ = pkg_resources.resource_filename(__name__, %r) __loader__ = None; del __bootstrap__, __loader__ spec = importlib.util.spec_from_file_location(__name__,__file__) mod = importlib.util.module_from_spec(spec) spec.loader.exec_module(mod) __bootstrap__() Úw)ÚtextwrapÚdedentÚlstripÚopenÚwrite)ÚresourceÚpyfileÚ_stub_templateÚfs rÚ write_stubr/+sL€Ü—_‘_ð ó ÷ �fƒhðô ˆf�cÔ ˜aØ �‰� Ñ)Ô*÷ × Ñ ús °AÁAcób—eZdZdZgd¢Zgd¢Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zy)Ú bdist_eggzcreate an "egg" distribution))z bdist-dir=Úbz1temporary directory for creating the distribution)z plat-name=Úpzdplatform name to embed in generated filenames (by default uses `pkg_resources.get_build_platform()`))úexclude-source-filesNz+remove all .py files from the generated egg)ú keep-tempÚkzPkeep the pseudo-installation tree around after creating the distribution archive)z dist-dir=Údz-directory to put final built distributions in)ú skip-buildNz2skip rebuilding everything (for testing/debugging))r5r8r4cóf—d|_d|_d|_d|_d|_d|_d|_y)Nr)Ú bdist_dirÚ plat_nameÚ keep_tempÚdist_dirÚ skip_buildÚ egg_outputÚexclude_source_files©Úselfs rÚinitialize_optionszbdist_egg.initialize_optionsUs4€ØˆŒØˆŒØˆŒØˆŒ ؈ŒØˆŒØ$(ˆÕ!rcóN—|jd«x}|_|j|_|j€@|jd«j}t j j|d«|_|j€ddl m }|«|_|jdd«|j€t|jt«|jj!«xr |j¬«}t j j|j"|dz«|_ yy) NÚegg_infoÚbdistÚeggr)Úget_build_platform)r=r=)Ú py_versionÚplatformz.egg)Úget_finalized_commandÚei_cmdrEr:Ú bdist_baserrÚjoinr;Ú pkg_resourcesrHÚset_undefined_optionsr?Ú_get_egg_basenamer Ú distributionÚhas_ext_modulesr=)rBrLrMrHÚbasenames rÚfinalize_optionszbdist_egg.finalize_options^sè€Ø#×9Ñ9¸*ÓEÐEˆ�”ØŸ™ˆŒ à �>‰>Ð !Ø×3Ñ3°GÓ<×GÑGˆJÜŸW™WŸ\™\¨*°eÓ<ˆDŒNà �>‰>Ð !Ý 8á/Ó1ˆDŒNà ×"Ñ" 7Ð,DÔEà �?‰?Ð "à×/Ñ/Ü-Ó/Ø×*Ñ*×:Ñ:Ó<ÒOÀÇÁð0óˆHô !Ÿg™gŸl™l¨4¯=©=¸(ÀVÑ:KÓLˆD�Oð #rcó¨—|j|jd«_tjj tjj t«««}|jjgc}|j_ |D]å}t|t«r®t|«dk(r tjj|d«r~tjj |d«}tjj |«}||k(s"|j|tjz«r|t|«dzd|df}|jjj!|«Œç t#j$d|j«|j'ddd¬«||j_ y#||j_ wxYw)NÚinstallr rézinstalling package data to %sÚ install_data)ÚforceÚroot)r:rKÚ install_librrÚnormcaseÚrealpathrrRÚ data_filesÚ isinstanceÚtupleÚlenÚisabsÚ startswithÚsepÚappendrÚinfoÚ call_command)rBÚ site_packagesÚoldÚitemr^Ú normalizeds rÚdo_install_datazbdist_egg.do_install_datavsd€à<@¿N¹Nˆ×"Ñ" 9Ó-Ô9䟙×(Ñ(¬¯©×)9Ñ)9¼,».Ó)IÓJˆ Ø,0×,=Ñ,=×,HÑ,HÈ"Ð)ˆˆT× Ñ Ô )ãˆDܘ$¤Ô&¬3¨t«9¸ª>Ü—7‘7—=‘=  a¡Ô)Ü!Ÿw™w×/Ñ/°°Q±Ó8�HÜ!#§¡×!1Ñ!1°(Ó!;�JØ! ]Ò2°j×6KÑ6KØ%¬¯©Ñ.ô7ð (¬¨MÓ(:¸QÑ(>Ð(@ÐAÀ4ÈÁ7ÐJ˜à × Ñ × (Ñ (× /Ñ /°Õ 5ðð /Ü �H‰HÐ4°d·n±nÔ EØ × Ñ ˜n°A¸DÐ Ô Aà+.ˆD× Ñ Õ (ø¨3ˆD× Ñ Õ (ús Å84F>Æ>Gcó—|jgS)N)r?rAs rÚ get_outputszbdist_egg.get_outputs�s€Ø—‘Ð Ð rc ó —tD]}|j||j«Œ |jd|j«|jd|j«|j |fi|¤Ž}|j |«|S)z8Invoke reinitialized command `cmdname` with keyword argsr>Údry_run)ÚINSTALL_DIRECTORY_ATTRSÚ setdefaultr:r>rqÚreinitialize_commandÚ run_command)rBÚcmdnameÚkwÚdirnameÚcmds rrhzbdist_egg.call_command’sl€ç.ˆGØ �M‰M˜' 4§>¡>Õ 2ð/à � ‰ �l D§O¡OÔ4Ø � ‰ �i §¡Ô.Ø'ˆd×'Ñ'¨Ñ6°2Ñ6ˆØ ×јÔ!؈ rcóî —|jd«tjd|j«|j d«}|j }d|_|j j«r|js|jd«|jdd¬«}||_|j«\}}g|_ g}t|«D]÷\}}tjj|«\} } tjj!|jt#| «dz«} |jj%| «tjd |«|j&s)t)tjj+|«| «|j%| «|j-tj.d «||<Œù|r|j1|«|j j2r|j5«|j} tjj!| d «} |j7| «|j j8rJtjj!| d «}tjd |«|jd|d¬«|j;| «tjj!| d«}|r{tjd|«|j&s¯t=|«t?|d«}|jAdj!|««|jAd«|jC«nVtjjE|«r7tjd|«|j&stjF|«tItjj!| d «|jK««tjjMtjj!|jNd««rtjPd«|jRr|jU«tW|jX| |jZ|j&|j]«¬«|j^s!ta|j|j&¬«tc|j dg«j%dte«|jXf«y)NrEzinstalling library code to %srWÚ build_clibr\r)Úwarn_dirú.pyzcreating stub loader for %sÚ/úEGG-INFOÚscriptszinstalling scripts to %sÚinstall_scriptsrX)Ú install_dirÚno_epznative_libs.txtz writing %sÚwtÚ z removing %sz depends.txtzxWARNING: 'depends.txt' will not be used by setuptools 0.6! Use the install_requires/extras_require setup() args instead.)ÚverboserqÚmode©rqÚ dist_filesr1)3rurrgr:rKr[rRÚhas_c_librariesr>rhÚget_ext_outputsÚstubsÚ enumeraterrrrNrrfrqr/rTÚreplacereÚ byte_compiler_rmrr€Úcopy_metadata_tor r)r*ÚcloseÚisfileÚunlinkÚwrite_safety_flagÚzip_safeÚexistsrEÚwarnr@Ú zap_pyfilesÚ make_zipfiler?r†Ú gen_headerr<rÚgetattrr )rBÚinstcmdÚold_rootryÚ all_outputsÚ ext_outputsÚ to_compiler3Úext_namerÚextr,Ú archive_rootrEÚ script_dirÚ native_libsÚ libs_files rÚrunz bdist_egg.runœsŽ€à ×јÔ$ô �‰Ð0°$·.±.ÔAØ×,Ñ,¨YÓ7ˆØ—<‘<ˆØˆŒ Ø × Ñ × ,Ñ ,Ô .°t·²Ø × Ñ ˜\Ô *Ø×Ñ  ¸ÐÓ:ˆØˆŒ à#'×#7Ñ#7Ó#9Ñ ˆ �[؈Œ ؈ Ü$ [Ö1‰KˆAˆxÜŸG™G×,Ñ,¨XÓ6‰MˆH�cÜ—W‘W—\‘\ $§.¡.´,¸xÓ2HÈ5Ñ2PÓQˆFØ �J‰J× Ñ ˜fÔ %Ü �H‰HÐ2°HÔ =Ø—<’<Üœ2Ÿ7™7×+Ñ+¨HÓ5°vÔ>Ø × Ñ ˜fÔ %Ø%×-Ñ-¬b¯f©f°cÓ:ˆK˜ŠNð2ñ Ø × Ñ ˜ZÔ (Ø × Ñ × 'Ò 'Ø × Ñ Ô "ð—~‘~ˆ Ü—7‘7—<‘<  ¨jÓ9ˆØ � ‰ �HÔØ × Ñ × $Ò $ÜŸ™Ÿ™ h° Ó:ˆJÜ �H‰HÐ/°Ô <Ø × Ñ Ð/¸ZÈqÐ Ô Qà ×јhÔ'Ü—g‘g—l‘l 8Ð->Ó?ˆ Ù Ü �H‰H�\ ;Ô /Ø—<’<Ü  Ô-Ü  ¨dÓ3� Ø—‘ § ¡ ¨+Ó 6Ô7Ø—‘ Ô%Ø—‘Õ!Ü �W‰W�^‰^˜KÔ (Ü �H‰H�] KÔ 0Ø—<’<Ü— ‘ ˜+Ô&äœ"Ÿ'™'Ÿ,™, |°ZÓ@À$Ç-Á-Ã/ÔRä �7‰7�>‰>œ"Ÿ'™'Ÿ,™, t§}¡}°mÓDÔ EÜ �H‰HðPô ð × $Ò $Ø × Ñ Ô ô Ø �O‰OØ Ø—L‘LØ—L‘LØ—‘Ó"õ  ð�~Š~Ü ˜Ÿ™°· ± Õ =ô �×!Ñ! <°Ó4×;Ñ;Ø Ü Ó Ø �O‰Oð= õ rc óÀ—tjd«t|j«D�]!\}}}|D�]}tj j ||«}|jd«r+tjd|«t j|«|jd«sŒr|}d}tj||«}tj j |tj|jd«dz«} tjd|›d | ›d �« t j| «t j || «�Œ�Œ$y#t$rYŒ(wxYw) Nz+Removing .py files from temporary directoryr}z Deleting %sÚ __pycache__z#(?P.+)\.(?P[^.]+)\.pycÚnameú.pyczRenaming file from [z] to [Ú])rrgÚwalk_eggr:rrrNrÚdebugr“ÚreÚmatchÚpardirÚgroupÚremoveÚOSErrorÚrename) rBr r!r"rªrÚpath_oldÚpatternÚmÚpath_news rr˜zbdist_egg.zap_pyfilesñsÿ€Ü �‰Ð>Ô?Ü!)¨$¯.©.×!9Ñ ˆD�$˜Ü�Ü—w‘w—|‘| D¨$Ó/�à—=‘= Ô'Ü—I‘I˜m¨TÔ2Ü—I‘I˜d”Oà—=‘= Õ/Ø#�HàD�GÜŸ™ ¨$Ó/�AÜ!Ÿw™wŸ|™|¨D´"·)±)¸Q¿W¹WÀV»_ÈvÑ=UÓV�HÜ—H’HÂ(ÊHÐUÔVðÜŸ ™  (Ô+ô—I‘I˜h¨Ö1ò%ñ":øô"#òÙðúsÄEÅ EÅEcó¢—t|jdd«}|�|Stjd«t |j |j «S)Nr•z4zip_safe flag not set; analyzing archive contents...)r›rRrr—Ú analyze_eggr:rŒ)rBÚsafes rr•zbdist_egg.zip_safesC€Ü�t×(Ñ(¨*°dÓ;ˆØ Р؈KÜ �‰ÐGÔHܘ4Ÿ>™>¨4¯:©:Ó6Ð6rcó—y)Nr%rrAs rršzbdist_egg.gen_headers€Ørcó–—tjj|j«}tjj |d«}|j j jD]]}|j|«sŒtjj ||t|«d«}t|«|j||«Œ_y)z*Copy metadata (egg info) to the target_dirÚN) rrÚnormpathrErNrLÚfilelistr"rdrbr Ú copy_file)rBÚ target_dirÚ norm_egg_infoÚprefixrÚtargets rr�zbdist_egg.copy_metadata_tos‹€ôŸ™×(Ñ(¨¯©Ó7ˆ Ü—‘—‘˜m¨RÓ0ˆØ—K‘K×(Ñ(×.Ô.ˆDØ�‰˜vÕ&ÜŸ™Ÿ™ j°$´s¸6³{°}Ð2EÓF�Ü  Ô(Ø—‘˜t VÕ,ñ /rcó|—g}g}|jdi}t|j«D]Ž\}}}|D]P}tjj |«dj «t vsŒ:|j|||z«ŒR|D].}|||zdz|tjj||«<Œ0Œ�|jj«rç|jd«}|jD]Ç} t| t«rŒ|j| j «} |j#| «}tjj%|«j'd«rŒotjj)tjj|j|««sŒ·|j|«ŒÉ||fS)zAGet a list of relative paths to C extensions in the output distror¿rXr~Ú build_extzdl-)r:r#rrrÚlowerÚNATIVE_EXTENSIONSrfrNrRrSrKÚ extensionsr`rÚget_ext_fullnamerªÚget_ext_filenamerTrdr–) rBržrŸÚpathsr r!r"rÚ build_cmdr¢Úfullnames rr‹zbdist_egg.get_ext_outputssp€ðˆ ؈ à—‘ Ð$ˆÜ!,¨T¯^©^Ö!<Ñ ˆD�$˜Û!�Ü—7‘7×#Ñ# HÓ-¨aÑ0×6Ñ6Ó8Ôð"ó!�Ø6;¸D±kÀHÑ6LÈsÑ6R�”b—g‘g—l‘l 4¨Ó2Ò3ñ!ð "=ð × Ñ × ,Ñ ,Ô .Ø×2Ñ2°;Ó?ˆIØ ×+Ô+�ܘc¤7Ô+ØØ$×5Ñ5°c·h±hÓ?�Ø$×5Ñ5°hÓ?�Ü—w‘w×'Ñ'¨Ó1×<Ñ<¸UÕCÜ—w‘w—~‘~¤b§g¡g§l¡l°4·>±>À8Ó&LÕMØ#×*Ñ*¨8Õ4ð,ð˜KÐ'Ð'rN)Ú__name__Ú __module__Ú __qualname__Ú descriptionÚ user_optionsÚboolean_optionsrCrUrmrorhr§r˜r•ršr�r‹rrrr1r1=sP„Ø2€Kò€Lò&J€Oò)òMò0/ò2!òòS òj2ò.7òò -ó(rr1z.dll .so .dylib .pydc#ó�K—t|«}t|«\}}}d|vr|jd«|||f–—|Ed{–—†y7Œ­w)z@Walk an unpacked egg's contents, skipping the metadata directoryrN)r#Únextr³)Úegg_dirÚwalkerr r!r"s rr­r­=sJèø€ä ˜Ó !€FܘV› Ñ€Dˆ$�Ø�TÑØ � ‰ �JÔØ ��eÐ ÒØ×Òús‚‰>œ"Ÿ'™'Ÿ,™, w° ¸BÓ?Õ @ØŠKð)ô Œ:ØØ €DÜ% gÖ.шˆd�EÛˆDØ�}‰}˜UÔ# t§}¡}°VÔ'<ØØ—‘˜vÔ&¨$¯-©-¸Õ*?ä" 7¨D°$¸Ó>ÒGÀ4‘ñ ð/ð €Krcó†—tj«D]ª\}}tjj ||«}tjj |«r'|�t |«|k7sŒVtj|«Œl|€Œot |«|k(sŒ~t|d«}|jd«|j«Œ¬y)Nr„r…) rÜrÝrrrNr–Úboolr“r)r*r‘)rÙr¼ràrár.s rr”r”Ysˆ€ä ×&Ñ&Ö(‰ˆˆbÜ �W‰W�\‰\˜' 2Ó &ˆÜ �7‰7�>‰>˜"Ô Øˆ|œt D›z¨TÓ1Ü— ‘ ˜"• Ø Ñ ¤$ t£*°Ó"4Ü�R˜“ˆAØ �G‰G�DŒMØ �G‰G�Iñ)rzzip-safez not-zip-safe)TFcóx—tjj||«}|dd|vry|t|«dzdj tj d«}||xrdxsdztjj |«dz}d}t|d «}|j|«tj|«} |j«d} tjt| ««} d D] } | | vsŒtj d || «d } Œ"d | vr%dD] } | | vsŒtj d|| «d } Œ"| S)z;Check whether module possibly uses unsafe-for-zipfile stuffNéÿÿÿÿTrXrr¿réÚrb)Ú__file__Ú__path__z%s: module references %sFÚinspect) Ú getsourceÚ getabsfileÚ getsourcefileÚgetfilegetsourcelinesÚ findsourceÚ getcommentsÚ getframeinfoÚgetinnerframesÚgetouterframesÚstackÚtracez"%s: module MAY be using inspect.%s)rrrNrbrŽrerr)ÚreadÚmarshalÚloadr‘ÚdictÚfromkeysÚ iter_symbolsrr—) rÙr rªrŒrÚpkgrÚskipr.Úcoder¼ÚsymbolsÚbads rrßrßls)€ô�w‰w�|‰|˜D $Ó'€HØ��€}˜ÑØØ Œs�7‹|˜aÑÐ!Ð "× *Ñ *¬2¯6©6°3Ó 7€CØ �C’K˜CÒ% 2Ñ &¬¯©×)9Ñ)9¸$Ó)?ÀÑ)BÑ B€FØ €DÜ ˆX�tÓ€A؇F�Fˆ4„LÜ �<‰<˜‹?€D؇G�G„IØ €DÜ�m‰mœL¨Ó.Ó/€GÛ'ˆØ �'Š>Ü �H‰HÐ/°¸Ô =؉Dð(ð�GÑó  ˆCð�gŠ~Ü—‘Ð=¸vÀsÔKØ‘ð  ð €Krc#óÐK—|jEd{–—†|jD];}t|t«r|–—Œt|t«sŒ)t |«Ed{–—†Œ=y7ŒO7Œ ­w)zBYield names and strings used by `code` and its nested code objectsN)Úco_namesÚ co_constsr`Ústrrrû)rþÚconsts rrûrû“sSèø€à�}‰}×ÐØ—”ˆÜ �eœSÔ !Ø‹KÜ ˜œxÕ (Ü# EÓ*× *Ñ *ñ  ðøð +ús'‚A&’A"“8A&Á A&ÁA$ÁA&Á$A&có¾—tjjd«stjdk7rytjd«tjd«y)NÚjavaÚcliTz1Unable to analyze compiled code on this platform.zfPlease ask the author to include a 'zip_safe' setting (either True or False) in the package's setup.pyF)ÚsysrJrdrr—rrrrÞrÞ�sF€Ü �<‰<× "Ñ " 6Ô *¬s¯|©|¸uÒ/Dà܇H�HÐ @ÔA܇H�Hð Dôð r)r\r‚rYÚ install_basec󜇇—ddl}ttjj |«‰¬«t j d|‰«ˆˆfd„}|r |jn |j}‰sD|j|||¬«} t‰«D]\} } } || | | «Œ| j«|St‰«D]\} } } |d| | «Œ|S)aqCreate a zip file from all the files under 'base_dir'. The output zip file will be named 'base_dir' + ".zip". Uses either the "zipfile" Python module (if available) or the InfoZIP "zip" utility (if installed and found on the default search path). If neither tool is available, raises DistutilsExecError. Returns the name of the output zip file. rNrˆz#creating '%s' and adding '%s' to itcóD•—|D]š}tjjtjj||««}tjj |«sŒ`|t ‰«dzd}‰s|j ||«tjd|«Œœy)NrXz adding '%s') rrrÀrNr’rbr*rr®)ÚzrxÚnamesrªrr3Úbase_dirrqs €€rÚvisitzmake_zipfile..visit»suø€ÛˆDÜ—7‘7×#Ñ#¤B§G¡G§L¡L°¸$Ó$?Ó@ˆDÜ�w‰w�~‰~˜dÕ#Øœ˜X›¨Ñ*Ð,Ð-�ÙØ—G‘G˜D !Ô$Ü— ‘ ˜-¨Õ+ñ r)Ú compression) ÚzipfilerrrrxrrgÚ ZIP_DEFLATEDÚ ZIP_STOREDÚZipFiler#r‘) Ú zip_filenamerr†rqÚcompressr‡rrrr rxr!r"s ` ` rr™r™¯sÀù€óä Œ2�7‰7�?‰?˜<Ó (°'Õ:܇H�HÐ 2°LÀ(ÔKõ,ñ+3�'×&Ò&¸×8JÑ8J€KÙ Ø �O‰O˜L¨$¸KˆOÓ HˆÜ$/°Ö$9Ñ ˆG�T˜5Ù �!�W˜eÕ $ð%:à �‰Œ ð Ðô%0°Ö$9Ñ ˆG�T˜5Ù �$˜ Õ 'ð%:à Ðr)rrTr%)(Ú__doc__Údistutils.dir_utilrrÚ distutilsrÚtypesrr rr¯r&r÷Úsetuptools.extensionrÚ setuptoolsrÚ_pathr Ú sysconfigr r rrr#r/r1rùrúÚsplitrÊr­r»r”rÜrßrûrÞrrr™rrrÚr!sªðñ÷3ÝÝÛ Û Û ÛÛå(ÝÝ$ç2òòò ò+ô$z(�ôz(ðz—M‘MÐ"8×">Ñ">Ó"@ÓAÐòòò$ ð Ø ñ€ ò $òN+ò òYÐôr