§
    ÷yIf¨  ã                  ó®   — d dl mZ d dlZd dlZd dlZd dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZmZ d dlmZ d d	lmZmZmZ d
ZdZ G d„ de¦  «        ZdS )é    )ÚannotationsN)ÚStringIO)ÚRepo)ÚRun)ÚMessage)ÚJSONReporterÚOldJsonExport)ÚPackageToLint)ÚPackageDataÚPackageMessagesÚPrimerCommandz/home/runner/.cachezThere is a pre-filled templatec                  óN   — e Zd Zdd„Zedd„¦   «         Zedd
„¦   «         Zdd„ZdS )Ú
RunCommandÚreturnÚNonec                óœ  — i }g }| j         j        €| j                             ¦   «         nBt	          | j                             ¦   «         ¦  «        | j         j        d | j         j        …         }|D ]Z\  }}|                      ||¦  «        \  }}||z  }t          |j        ¦  «        j	        j
        j        }t          ||¬¦  «        ||<   Œ[| j        dd                     d„ t          j        d d…         D ¦   «         ¦  «        › d| j         j        › �| j         j        rd| j         j        › d�nd	z   z  }	t%          d
|	› �¦  «         t'          |	dd¬¦  «        5 }
t)          j        ||
¦  «         d d d ¦  «         n# 1 swxY w Y   | j         j        dk    r7t-          |¦  «        dk    rdnd	}|r J dt-          |¦  «        › d|› d�¦   «         ‚d S d S )N)ÚcommitÚmessagesÚoutput_ú.c              3  ó4   K  — | ]}t          |¦  «        V — Œd S )N)Ústr)Ú.0Úis     ú_/var/www/piapp/venv/lib/python3.11/site-packages/pylint/testutils/_primer/primer_run_command.pyú	<genexpr>z!RunCommand.run.<locals>.<genexpr>-   s(   è è € ÐDÐD¨!�s 1™vœvÐDÐDÐDÐDÐDÐDó    é   Ú_Ú_batchz.txtÚ zWriting result in Úwzutf-8)ÚencodingÚpré   ÚszWe encountered z fatal error messagez (see log).)ÚconfigÚbatchesÚpackagesÚitemsÚlistÚbatchIdxÚ_lint_packager   Úclone_directoryÚheadÚobjectÚhexshar   Úprimer_directoryÚjoinÚsysÚversion_infoÚtypeÚprintÚopenÚjsonÚdumpÚlen)Úselfr)   Ú
fatal_msgsÚpackage_data_iterÚpackageÚdatar   Úp_fatal_msgsÚlocal_commitÚpathÚfÚplurals               r   ÚrunzRunCommand.run   sX  € Ø$&ˆØ$&ˆ
ð Œ{Ô"Ð*ð ŒM×ÒÑ!Ô!Ð!å�d”m×)Ò)Ñ+Ô+Ñ,Ô,Ø”Ô$Ð;¨¬Ô(;Ð;ôð 	ð /ð 	Tð 	T‰MˆG�TØ%)×%7Ò%7¸ÀÑ%FÔ%FÑ"ˆH�lØ˜,Ñ&ˆJÝ Ô 4Ñ5Ô5Ô:ÔAÔHˆLÝ +°<È(Ð SÑ SÔ SˆH�WÑÐØÔ$ØY�c—h’hÐDÐD­sÔ/?ÀÀÀÔ/CÐDÑDÔDÑDÔDÐYÐYÀtÄ{ÔGWÐYÐYØ6:´kÔ6IÐQÐ2˜œÔ,Ð2Ð2Ð2Ð2ÈrñSñ
ˆõ 	Ð) 4Ð)Ð)Ñ*Ô*Ð*Ý�$˜ gÐ.Ñ.Ô.ð 	#°!ÝŒI�h Ñ"Ô"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð Œ;Ô˜tÒ#Ð#Ý 
™OœO¨aÒ/Ð/�S�S°RˆFàðZð ZàY¥ Z¡¤ÐYÐYÀfÐYÐYÐYñZô Zð Zð $Ð#ðZð Zs   ÅE8Å8E<Å?E<r   úlist[OldJsonExport]úlist[Message]c                óì   — g }| D ]n}t          j        |¦  «        }|j        dk    rMt          |j        v r*|j                             t          ¦  «        d         |_        |                     |¦  «         Œo|S )z:Separate fatal errors so we can report them independently.Úfatalr   )r   ÚdeserializeÚcategoryÚGITHUB_CRASH_TEMPLATE_LOCATIONÚmsgÚrsplitÚCRASH_TEMPLATE_INTROÚappend)r   r=   Úraw_messageÚmessages       r   Ú_filter_fatal_errorszRunCommand._filter_fatal_errors:   s}   € ð
 %'ˆ
Ø#ð 	+ð 	+ˆKÝ"Ô.¨{Ñ;Ô;ˆGØÔ 7Ò*Ð*Ý1°W´[Ð@Ð@ð #*¤+×"4Ò"4Õ5IÑ"JÔ"JÈ1Ô"M�G”KØ×!Ò! 'Ñ*Ô*Ð*øØÐr   Úmsgsr   c                ó@   — d                      d„ | D ¦   «         ¦  «        S )Nú
c              3  óD   K  — | ]}d t          j        |¦  «        › �V — ŒdS )z- N)r   Ú	serialize)r   Úms     r   r   z)RunCommand._print_msgs.<locals>.<genexpr>L   s6   è è € ÐHÐH¸aÐ9�lÔ4°QÑ7Ô7Ð9Ð9ÐHÐHÐHÐHÐHÐHr   )r3   )rU   s    r   Ú_print_msgszRunCommand._print_msgsJ   s#   € à�yŠyÐHÐHÀ4ÐHÑHÔHÑHÔHÐHr   Úpackage_namer@   r
   ú)tuple[list[OldJsonExport], list[Message]]c                ó`  — ddg}dg}dg}|j         |z   |z   |z   }t          ¦   «         }t          |¦  «        }t          dd                     |¦  «        › d�¦  «         d}		 t          ||¬	¦  «         n+# t          $ r}
t          |
j        ¦  «        }	Y d }
~
nd }
~
ww xY w| 	                    ¦   «         }t          j        |¦  «        }g }|	d
z  dk    rt          d|› d�¦  «         nG|                      |¦  «        }|r0t          j        d|› d|                      |¦  «        › d�d
¬¦  «         ||fS )Nz--enable-all-extensionsz--enable=allz&--disable=duplicate-code,cyclic-importz--clear-cache-post-run=yzRunning 'pylint z, ú'éÿÿÿÿ)Úreporterr   r   zSuccessfully primed r   z'Encountered fatal errors while priming z !
z

)Ú
stacklevel)Úpylint_argsr   r   r7   r3   r   Ú
SystemExitÚintÚcodeÚgetvaluer9   ÚloadsrT   ÚwarningsÚwarnr[   )r<   r\   r@   ÚenablesÚdisablesÚ
additionalÚ	argumentsÚoutputra   Úpylint_exit_codeÚeÚreadable_messagesr   r=   s                 r   r-   zRunCommand._lint_packageN   s—  € ð -¨nÐ=ˆð =Ð=ˆØ0Ð1ˆ
ØÔ$ wÑ.°Ñ9¸JÑFˆ	Ý‘”ˆÝ Ñ'Ô'ˆÝÐ8 §¢¨9Ñ!5Ô!5Ð8Ð8Ð8Ñ9Ô9Ð9ØÐð	+Ý�	 HÐ-Ñ-Ô-Ð-Ð-øÝð 	+ð 	+ð 	+Ý" 1¤6™{œ{ÐÐÐÐÐÐøøøøð	+øøøà!'§¢Ñ!2Ô!2ÐÝ(,¬
Ð3DÑ(EÔ(EˆØ$&ˆ
Ø˜aÑ 1Ò$Ð$ÝÐ8¨Ð8Ð8Ð8Ñ9Ô9Ð9Ð9à×2Ò2°8Ñ<Ô<ˆJØð Ý”ð:¸lð :ð :Ø×'Ò'¨
Ñ3Ô3ð:ð :ð :à ðñ ô ð ð
 ˜Ð#Ð#s   Á!A3 Á3
BÁ=BÂBN)r   r   )r   rG   r   rH   )rU   rH   r   r   )r\   r   r@   r
   r   r]   )Ú__name__Ú
__module__Ú__qualname__rF   ÚstaticmethodrT   r[   r-   © r   r   r   r      s„   € € € € € ðZð Zð Zð Zð: ðð ð ñ „\ðð ðIð Ið Iñ „\ðIð$ð $ð $ð $ð $ð $r   r   )Ú
__future__r   r9   r4   ri   Úior   Úgit.repor   Úpylint.lintr   Úpylint.messager   Úpylint.reporters.json_reporterr   r	   Ú(pylint.testutils._primer.package_to_lintr
   Ú'pylint.testutils._primer.primer_commandr   r   r   rM   rP   r   rw   r   r   ú<module>r€      s$  ðð
 #Ð "Ð "Ð "Ð "Ð "à €€€Ø 
€
€
€
Ø €€€Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ø FÐ FÐ FÐ FÐ FÐ FÐ FÐ FØ BÐ BÐ BÐ BÐ BÐ Bðð ð ð ð ð ð ð ð ð ð "7Ð Ø7Ð ðQ$ð Q$ð Q$ð Q$ð Q$�ñ Q$ô Q$ð Q$ð Q$ð Q$r   