Ë Và�C D33ãóZ—ddlmZddlmZddlmZddlZddlZddlm Z Gd„de «Z y)é)Ú convert_path)Úlog)ÚDistutilsOptionErrorN)ÚCommandcó2—eZdZdZdZgd¢ZgZd„Zd„Zd„Z y)ÚrotatezDelete older distributionsz2delete older distributions, keeping N newest files))zmatch=Úmzpatterns to match (required))z dist-dir=Údz%directory where the distributions are)zkeep=Úkz(number of matching distributions to keepcó.—d|_d|_d|_y)N)ÚmatchÚdist_dirÚkeep)Úselfs ú>/usr/lib/python3.12/site-packages/setuptools/command/rotate.pyÚinitialize_optionszrotate.initialize_optionss€ØˆŒ ؈Œ ؈� ócó¼—|j€ td«‚|j€ td«‚ t|j«|_t |jt «rE|jjd«D�cgc]}t|j««‘Œc}|_|jdd«y#t$r}td«|‚d}~wwxYwcc}w)NzQMust specify one or more (comma-separated) match patterns (e.g. '.zip' or '.egg')z$Must specify number of files to keepz--keep must be an integerÚ,Úbdist)rr) r rrÚintÚ ValueErrorÚ isinstanceÚstrÚsplitrÚstripÚset_undefined_options)rÚeÚps rÚfinalize_optionszrotate.finalize_optionssÅ€Ø �:‰:Ð Ü&ð*óð ð �9‰9Ð Ü&Ð'MÓNÐ Nð KܘDŸI™I›ˆDŒIô �d—j‘j¤#Ô &Ø;?¿:¹:×;KÑ;KÈCÔ;PÓQÑ;P°aœ, q§w¡w£yÕ1Ð;PÑQˆDŒJØ ×"Ñ" 7Ð,DÕEøô ò KÜ&Ð'BÓCÈÐ Jûð KüòRs°B< CÂ< Cà CÃCcóê—|jd«ddlm}|jD�]G}|jj «dz|z}|t j j|j|««}|D�cgc]#}t j j|«|f‘Œ%}}|j«|j«tjdt|«|«||jd}|D]r\}}tjd|«|j rŒ)t j j#|«rt%j&|«Œ^t j(|«Œt�ŒJycc}w)NÚegg_infor)ÚglobÚ*z%d file(s) matching %sz Deleting %s)Ú run_commandr#r Ú distributionÚget_nameÚosÚpathÚjoinrÚgetmtimeÚsortÚreverserÚinfoÚlenrÚdry_runÚisdirÚshutilÚrmtreeÚunlink)rr#ÚpatternÚfilesÚfÚts rÚrunz rotate.run+s €Ø ×јÔ$Ýà—z•zˆGØ×'Ñ'×0Ñ0Ó2°SÑ8¸7ÑBˆGÙœŸ™Ÿ™ d§m¡m°WÓ=Ó>ˆEÙ7<Ó=±u°!”b—g‘g×&Ñ& qÓ)¨1Ò-°uˆEÐ=Ø �J‰JŒLØ �M‰MŒOä �H‰HÐ-¬s°5«z¸7Ô Cؘ$Ÿ)™)˜+Ð&ˆEÛ‘��1Ü—‘˜¨Ô*Ø—|“|Ü—w‘w—}‘} QÔ'ÜŸ ™  aÕ(äŸ ™  !� ò ñ"ùò>sÁ<(E0N) Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú descriptionÚ user_optionsÚboolean_optionsrr r9©rrrr s(„Ù$àF€Kò€Lð €Oòò Fó %rr) Údistutils.utilrÚ distutilsrÚdistutils.errorsrr(r2Ú setuptoolsrrrArrÚrFs#ðÝ'ÝÝ1Û Û åô4%ˆWõ4%r