ó
    cÔ<g  ã                   ó:   • S r SSKrSSKrSSKJr   " S S\5      rg)zODistUtilsExtra.command.pylint

Implements the DistUtilsExtra 'pylint' command.
é    N)ÚCommandc                   óB   • \ rS rSrSrSr/ SQrS rS rS r	S r
S	 rS
rg)Úpylinté   z,Command to run pylint and tests on a module.zintegrate pylint checks))zconfig-file=Nzpylint config file to use)zexclude-files=Nz)list of files to exclude from lint checks)zlint-files=Nz1list of modules or packages to run lint checks onc                 ó.   • S U l         S U l        S U l        g )N©Úconfig_fileÚexclude_filesÚ
lint_files©Úselfs    Ú?/usr/lib/python3/dist-packages/DistUtilsExtra/command/pylint.pyÚinitialize_optionsÚpylint.initialize_options    s   € ØˆÔØ!ˆÔØˆó    c                 ó¢   • U R                   c  SU l         U R                  c  SU l        U R                  c  SU R                  5        S3U l        g g )NÚ z[]Ú[Ú])r	   r
   r   Ú_pylint__find_filesr   s    r   Úfinalize_optionsÚpylint.finalize_options%   sS   € Ø×ÑÑ#Ø!ˆDÔØ×ÑÑ%Ø!%ˆDÔØ?‰?Ñ"Ø ! $×"3Ñ"3Ó"5Ð!6°aÐ8ˆDOð #r   c                 óò  • S/nU R                   (       a  UR                  SU R                    35        [        U R                  5       H  nUR                  U5        M     [        R
                  " S/U-   S[        R                  SS9 nSR                  UR                  R                  5       5      nS S S 5        WS:w  a&  [        S5        [        U R                  U5      5        g g ! , (       d  f       N;= f)	Nz--output-format=parseablez	--rcfile=r   i   T)ÚbufsizeÚstdoutÚtextr   z== Pylint notices ==)r	   ÚappendÚevalr   Ú
subprocessÚPopenÚPIPEÚjoinr   Ú	readlinesÚprintÚ_pylint__group_lines_by_file)r   Úpylint_argsÚfileÚprocessÚoutputs        r   ÚrunÚ
pylint.run-   sÍ   € Ø2Ð3ˆà××Ø×Ñ ¨4×+;Ñ+;Ð*<Ð=Ô>ä˜Ÿ™Ö)ˆDØ×Ñ˜tÖ$ñ *ô ×ÒØˆJ˜Ñ$¨d¼:¿?¹?ÐQUò
àØ—W‘W˜WŸ^™^×5Ñ5Ó7Ó8ˆF÷
ð
 R‹<ÜÐ(Ô)Ü$×,Ñ,¨VÓ4Õ5ð ÷
õ 
ús   Â	*C(Ã(
C6c                 óV  • / nSn[        U R                  5      nUR                  5        Hì  nUR                  SS5      nUR	                  S5      (       a  UR                  SUS    35        MD  UR	                  S5      (       d  US   U;   d  [        U5      S:  a  Mt  X6S   :X  a  UR                  SUS    SUS	    35        M›  X6S   :w  d  M¥  US   nUR                  S5        UR                  U S35        UR                  SUS    SUS	    35        Mî     S
R                  U5      $ )z9Format file:line:message output as lines grouped by file.r   Ú:é   z    r   zbuild/é   z: é   Ú
)r   r
   Ú
splitlinesÚsplitÚ
startswithr   Úlenr"   )r   Úinput_ÚoutputsÚfilenameÚexcludesÚlineÚcurrents          r   Ú__group_lines_by_fileÚpylint.__group_lines_by_file?   s  € àˆØˆÜ˜×*Ñ*Ó+ˆØ×%Ñ%Ö'ˆDØ—j‘j  aÓ(ˆGØ‰˜v×&Ñ&Ø—‘  g¨a¡j \Ð2Ö3à—‘ ×)Ñ)¨W°Q©Z¸8Ó-CÄsÈ7Ã|ÐVWÓGWáØ Q™ZÓ'Ø—‘  g¨a¡j \°°G¸A±J°<Ð@ÖAØ Q™ZÕ'Ø" 1™:Ø—‘˜rÔ"Ø—‘ ( ¨1˜~Ô.Ø—‘  g¨a¡j \°°G¸A±J°<Ð@ÖAñ (ð  y‰y˜Ó!Ð!r   c           	      óR  • / n[         R                  " [         R                  " 5       SS9 HY  u  p#nU HM  nUR                  S5      (       d  M  UR	                  S[         R
                  R                  X%5       S35        MO     M[     UR                  5         SR                  U5      $ )z-Find all Python files under the current tree.F)Útopdownz.pyÚ'Ú,)ÚosÚwalkÚgetcwdÚendswithr   Úpathr"   Úsort)r   ÚpyfilesÚrootÚ_Úfilesr'   s         r   Ú__find_filesÚpylint.__find_filesV   s}   € àˆÜ Ÿgšg¤b§i¢i£k¸5ÔA‰NˆDUÛØ—=‘= ×'Ó'Ø—N‘N Q¤r§w¡w§|¡|°DÓ'?Ð&@ÀÐ#BÖCó ñ Bð 	‰ŒØx‰x˜Ó Ð r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚdescriptionÚuser_optionsr   r   r*   r%   r   Ú__static_attributes__© r   r   r   r      s*   † Ù6à+€Kò€Lòò
9ò6ò$"õ.!r   r   )rR   rB   r   Ú
setuptoolsr   r   rV   r   r   Ú<module>rX      s#   ðñó 
Û å ôI!ˆWõ I!r   