ó
    6°hï  ã            	      óR  • S r SSKJr  SSKrSSKJr  SSKJr  SSKJ	r	J
r
Jr  SSKJr  Sr0 r\R                   " \5      r\" S	S
SS9  \R"                  " S\R$                  5      rSSS.rSSS.rS#S jrS rS rS rS rS rS rS rS r\\\\\\\\S.rS r S r!S r"S  r#S! r$S" r%g)$a  perform automatic newline conversion (DEPRECATED)

  Deprecation: The win32text extension requires each user to configure
  the extension again and again for each clone since the configuration
  is not copied when cloning.

  We have therefore made the ``eol`` as an alternative. The ``eol``
  uses a version controlled file for its configuration and each clone
  will therefore use the right settings from the start.

To perform automatic newline conversion, use::

  [extensions]
  win32text =
  [encode]
  ** = cleverencode:
  # or ** = macencode:

  [decode]
  ** = cleverdecode:
  # or ** = macdecode:

If not doing conversion, to make sure you do not commit CRLF/CR by accident::

  [hooks]
  pretxncommit.crlf = python:hgext.win32text.forbidcrlf
  # or pretxncommit.cr = python:hgext.win32text.forbidcr

To do the same check on a server to prevent CRLF/CR from being
pushed or pulled::

  [hooks]
  pretxnchangegroup.crlf = python:hgext.win32text.forbidcrlf
  # or pretxnchangegroup.cr = python:hgext.win32text.forbidcr
é    )ÚannotationsN)Ú_)Úshort)ÚcmdutilÚ
extensionsÚ	registrar)Ú
stringutils   ships-with-hg-coreó	   win32textó   warnT)Údefaults	   (^|[^])
s   CRLFs   CR)ó   
ó   s   clevers   macc                óÀ   • X;   aY  U(       aQ  U(       aI  U(       aA  UR                  [        S5      U[        U   UR                  R	                  S5      4-  5        g g g g g )NsÂ   WARNING: %s already has %s line endings
and does not need EOL conversion by the win32text plugin.
Before your next commit, please reconsider your encode/decode settings in 
Mercurial.ini or %s.
s   hgrc)Úwarnr   Ú
newlinestrÚvfsÚjoin)ÚsÚnewlineÚuiÚrepoÚfilenames        Ú1/usr/lib/python3/dist-packages/hgext/win32text.pyÚchecknewliner   N   sX   € ð
 ƒ|žžx®DØ
�‰ÜðFóð œ GÑ,¨d¯h©h¯m©m¸GÓ.DÐEñFõ	
ð -1˜x˜€|ó    c                óH   • [        U S40 UD6  [        R                  SU 5      $ )Nr   s   \1
)r   Úre_single_lfÚsub©r   ÚcmdÚkwargss      r   Ú
dumbdecoder"   _   s$   € Ü��GÑ&˜vÒ&ä×Ñ˜J¨Ó*Ð*r   c                ó&   • U R                  SS5      $ )Nr   ó   
©Úreplace©r   r    s     r   Ú
dumbencoder(   e   s   € Ø�9‰9�W˜eÓ$Ð$r   c                ó@   • [        U S40 UD6  U R                  SS5      $ ©Nr   r$   )r   r&   r   s      r   Úmacdumbdecoder+   i   s"   € Ü��EÑ$˜VÒ$Ø�9‰9�U˜EÓ"Ð"r   c                ó&   • U R                  SS5      $ r*   r%   r'   s     r   Úmacdumbencoder-   n   s   € Ø�9‰9�U˜EÓ"Ð"r   c                óT   • [         R                  " U 5      (       d  [        X40 UD6$ U $ ©N)r	   Úbinaryr"   r   s      r   Úcleverdecoder1   r   s(   € Ü×Ò˜Q×ÑÜ˜!Ñ+ FÑ+Ð+Ø€Hr   c                óR   • [         R                  " U 5      (       d  [        X5      $ U $ r/   )r	   r0   r(   r'   s     r   Úcleverencoder3   x   s#   € Ü×Ò˜Q×ÑÜ˜!Ó!Ð!Ø€Hr   c                óT   • [         R                  " U 5      (       d  [        X40 UD6$ U $ r/   )r	   r0   r+   r   s      r   Ú	macdecoder5   ~   s(   € Ü×Ò˜Q×ÑÜ˜QÑ. vÑ.Ð.Ø€Hr   c                óR   • [         R                  " U 5      (       d  [        X5      $ U $ r/   )r	   r0   r-   r'   s     r   Ú	macencoder7   „   s#   € Ü×Ò˜Q×ÑÜ˜QÓ$Ð$Ø€Hr   )s   dumbdecode:s   dumbencode:s   cleverdecode:s   cleverencode:s   macdumbdecode:s   macdumbencode:s
   macdecode:s
   macencode:c           	     óê  • Sn[        5       nUS   n[        UR                  R                  5       X   R	                  5       S-
  S5       HÙ  n	X   n
U
R                  5        H¾  nX·;   d
  X¸;  d  Xº;  a  M  UR                  U5        X«   R                  5       n[        R                  " U5      (       a  MT  XL;   d  M[  U(       d$  U R                  [        S5      [        U   -  5        U R                  [        S5      [        U
R                  5       5      U4-  5        SnMÀ     MÛ     U(       aE  US:X  a?  [        U   R                  5       n[         U   nU R                  [        S	5      XÝXî4-  5        U$ )
NFs   tipé   éÿÿÿÿs=   attempt to commit or push text file(s) using %s line endings
s
   in %s: %s
Ts   pretxnchangegroupsõ   
To prevent this mistake in your local repository,
add to Mercurial.ini or .hg/hgrc:

[hooks]
pretxncommit.%s = python:hgext.win32text.forbid%s

and also consider adding:

[extensions]
win32text =
[encode]
** = %sencode:
[decode]
** = %sdecode:
)ÚsetÚrangeÚ	changelogÚtiprevÚrevÚfilesÚaddÚdatar	   r0   r   r   r   r   ÚnodeÚlowerÚ	filterstr)r   r   ÚhooktyperC   r   r!   ÚhaltÚseenÚtipr?   ÚcÚfrB   ÚcrlfÚfilters                  r   ÚforbidnewlinerN   –   sL  € Ø€DÜ‹5€Dð ˆv‰,€CÜ�T—^‘^×*Ñ*Ó,¨d©j¯n©nÓ.>ÀÑ.BÀBÖGˆØ‰IˆØ—‘–ˆAØ‹y˜A›L¨A«JÙØ�H‰H�QŒKØ‘4—9‘9“;ˆDÜ×$Ò$ T×*Ó*¨w­ÞØ—G‘GÜð7óô % WÑ-ñ	.ôð —‘œ˜.Ó)¬U°1·6±6³8«_¸aÐ,@Ñ@ÔAØ’ó ñ Hö$ �Ð0Ó0Ü˜'Ñ"×(Ñ(Ó*ˆÜ˜7Ñ#ˆØ
�‰Üð$óð  ˜6Ð*ñ!+ô	
ð& €Kr   c                ó   • [        XX#S40 UD6$ )Nr   ©rN   ©r   r   rF   rC   r!   s        r   Ú
forbidcrlfrR   Ê   s   € Ü˜ 8°7ÑE¸fÑEÐEr   c                ó   • [        XX#S40 UD6$ )Nr   rP   rQ   s        r   ÚforbidcrrT   Î   s   € Ü˜ 8°5ÑC¸FÑCÐCr   c                óŒ   • UR                  5       (       d  g [        R                  5        H  u  p#UR                  X#5        M     g r/   )ÚlocalÚ_filtersÚitemsÚadddatafilter)r   r   ÚnameÚfns       r   Ú	reposetupr\   Ò   s1   € Ø�:‰:�<‰<ØÜ—N‘NÖ$‰ˆØ×Ñ˜4Ö$ò %r   c                ó  • UR                   nUS   S    H\  n	UR                  U	5      n
U
c  M  U
R                  (       d  M,  UR                  U	U
R                  U
R                  U
R
                  S9  M^     U " XX4U/UQ70 UD6$ )Ns   revertr   )Ú
p1_trackedÚp2_info)ÚdirstateÚ	get_entryr^   Úhacky_extension_update_fileÚtrackedr_   )Úorigr   ÚctxÚnamesÚuipathfnÚactionsÚargsr!   Údsr   Úentrys              r   Úwrap_revertrl   Ù   s‰   € à	�‰€BØ˜IÑ& qÔ)ˆØ—‘˜XÓ&ˆØÓØ××Ñð ×.Ñ.ØØ—M‘MØ$×/Ñ/Ø!ŸM™Mð	 /ó ñ *ñ" �˜5¨GÐE°dÒE¸fÑEÐEr   c                ó¦   • U R                  SS5      (       a  U R                  [        S5      5        [        R                  " [
        S[        5        g )Nr
   r   sK   win32text is deprecated: https://mercurial-scm.org/wiki/Win32TextExtension
Ú_performrevert)Ú
configboolr   r   r   Úwrapfunctionr   rl   )r   s    r   Úextsetuprq   ð   sB   € à	‡}�}�\ 7×+Ñ+Ø
�‰ÜðGóô	
ô ×ÒœGÐ%5´{ÕCr   )NNN)&Ú__doc__Ú
__future__r   ÚreÚmercurial.i18nr   Úmercurial.noder   Ú	mercurialr   r   r   Úmercurial.utilsr	   Ú
testedwithÚconfigtableÚ
configitemÚcompileÚ	MULTILINEr   r   rE   r   r"   r(   r+   r-   r1   r3   r5   r7   rW   rN   rR   rT   r\   rl   rq   © r   r   Ú<module>r      sð   ðñ"õH #ã 	Ý Ý  ÷ñ õ
 'ð #€
à€Ø×!Ò! +Ó.€
á 
ØØØòð �zŠz˜.¨"¯,©,Ó7€à uÑ-€
Ø¨Ñ/€	ô
ò"+ò%ò#ò
#òòòòð ØØ"Ø"Ø$Ø$ØØñ	€ò1òhFòDò%òFó.	Dr   