ó
ï8¥Qc        	   @   s/  d  d l  m Z m Z m Z m Z d  d l m Z d  d l Z d  d l Z d  d l	 Z	 d  d l
 Z
 d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z  d „  Z! e" d „ Z# e$ d „ Z% d „  Z& d „  Z' d	 „  Z( d
 „  Z) d d d d d d „ Z+ d d d d d d i  d d „ Z, d „  Z- e" d „ Z. d d d d d e" d „ Z/ d d e" d d „ Z0 d e" d d e" d „ Z1 d e2 f d „  ƒ  YZ3 d e3 f d „  ƒ  YZ4 e" d „ Z5 d „  Z6 d d d „ Z7 d „  Z8 d „  Z9 d  „  Z: d! „  Z; d d d" „ Z< d# „  Z= d$ „  Z> d% „  Z? d& „  Z@ d' „  ZA d( „  ZB d) „  ZC d* „  ZD d+ „  ZE d, „  ZF d i  d- „ ZG d. „  ZH d/ „  ZI d S(0   iÿÿÿÿ(   t   hext   nullidt   nullrevt   short(   t   _Nc         C   s   |  j  d ƒ j d ƒ S(   Nt   ^t   |(   t   lstript   split(   t   cmd(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   parsealiases   s    c   
      C   s  i  } i  } |  | k r$ |  g } n | j  ƒ  } xÄ | D]¼ } t | ƒ } d } |  | k rd |  } n3 | s— x* | D] }	 |	 j |  ƒ rq |	 } Pqq qq Wn  | d k	 r7 | d j d ƒ sÅ | j d ƒ rÜ | | | f | | <qó | | | f | | <q7 q7 W| r| r| } n  | S(   s¥   
    Return cmd -> (aliases, command table entry)
    for each matching command.
    Return debug commands (or their aliases) only if no normal command matches.
    i    t   debugN(   t   keysR
   t   Nonet
   startswith(
   R	   t   tablet   strictt   choicet   debugchoiceR   t   et   aliasest   foundt   a(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   findpossible   s,    	"	c         C   sŠ   t  |  | | ƒ } |  | k r& | |  St | ƒ d k rc | j ƒ  } | j ƒ  t j |  | ƒ ‚ n  | rw | j ƒ  d St j |  ƒ ‚ d S(   s9   Return (aliases, command table entry) for command string.i   i    N(   R   t   lenR   t   sortt   errort   AmbiguousCommandt   valuest   UnknownCommand(   R	   R   R   R   t   clist(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   findcmd9   s    
c         C   sU   xN t  j j t  j j |  d ƒ ƒ sP |  t  j j |  ƒ } }  |  | k r d  Sq W|  S(   Ns   .hg(   t   ost   patht   isdirt   joint   dirnameR   (   t   pt   oldp(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   findrepoJ   s
    $c         C   sÒ   |  j  j ƒ  t k r- t j t d ƒ ƒ ‚ n  |  j ƒ  d  \ } } } } | sa | sa | sa | ry t j t d ƒ ƒ ‚ n  |  d  } xH t | j	 ƒ D]7 } | j
 | ƒ j ƒ  r“ t j t d ƒ | ƒ ‚ q“ q“ Wd  S(   Ns   outstanding uncommitted mergei   s   outstanding uncommitted changess!   uncommitted changes in subrepo %s(   t   dirstatet   p2R   t   utilt   AbortR   t   statusR   t   sortedt   substatet   subt   dirty(   t   repot   modifiedt   addedt   removedt   deletedt   ctxt   s(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   bailifchangedR   s    
c         C   sÎ   | j  d ƒ } | j  d ƒ } | rB | rB t j t d ƒ ƒ ‚ n  | rÊ | rÊ y@ | d k rp |  j j ƒ  } n d j t j | ƒ j ƒ  ƒ } WqÊ t	 k
 rÆ } t j t d ƒ | | j
 f ƒ ‚ qÊ Xn  | S(   s3    get the log message according to -m and -l option t   messaget   logfiles6   options --message and --logfile are mutually exclusivet   -s   
s"   can't read commit message '%s': %s(   t   getR*   R+   R   t   fint   readR#   t   readfilet
   splitlinest   IOErrort   strerror(   t   uit   optsR9   R:   t   inst(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt
   logmessage]   s    "c         C   s   |  j  d ƒ } | ru y t | ƒ } Wn& t k
 rM t j t d ƒ ƒ ‚ n X| d k r{ t j t d ƒ ƒ ‚ q{ n d } | S(   s0   get the log limit according to option -l/--limitt   limits    limit must be a positive integeri    s   limit must be positiveN(   R<   t   intt
   ValueErrorR*   R+   R   R   (   RD   RG   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   loglimitp   s    c            s%  i ‡ f d †  d 6‡ ‡ f d †  d 6‡ f d †  d 6‡  f d †  d 6} i d	 „  d
 6‡ f d †  d 6}	 y‚ˆ r‚ |	 j  | ƒ n  ˆ r¤ ‡ ‡ ‡ f d †  |	 d <n  ˆ d  k	 rÆ ‡ f d †  |	 d <n  ˆ d  k	 rè ‡ f d †  |	 d <n  ˆ d  k	 rˆ d  k	 r‡ ‡ f d †  |	 d <n  ˆ d  k	 ra‡ f d †  |	 d <‡ f d †  |	 d <‡ f d †  |	 d <n  g  }
 t | ƒ } d } xa | | k  rÜ| | } | d
 k rÂ| d 7} | | } |	 | ƒ  } n  |
 j | ƒ | d 7} q|Wd j |
 ƒ SWn3 t k
 r } t j t d ƒ | j	 d ƒ ‚ n Xd  S(   Nc              s
   t  ˆ  ƒ S(   N(   R    (    (   t   node(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   <lambda>   s    t   Hc              s   t  ˆ j j ˆ  ƒ ƒ S(   N(   t   strt	   changelogt   rev(    (   RK   R1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ‚   s    t   Rc              s
   t  ˆ  ƒ S(   N(   R   (    (   RK   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ƒ   s    t   hc              s   t  j d d t ˆ  ƒ ƒ S(   Ns   [^\w]R   (   t   reR/   RN   (    (   t   desc(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   „   s    t   mc           S   s   d S(   Nt   %(    (    (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ‡   s    RV   c              s   t  j j ˆ  j ƒ S(   N(   R    R!   t   basenamet   root(    (   R1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ˆ   s    t   bc              s%   t  ˆ j j ˆ  ƒ ƒ j ˆ p! d ƒ S(   Ni    (   RN   RO   RP   t   zfill(    (   RK   R1   t   revwidth(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL      s    t   rc              s
   t  ˆ  ƒ S(   N(   RN   (    (   t   total(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ’   s    t   Nc              s
   t  ˆ  ƒ S(   N(   RN   (    (   t   seqno(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ”   s    t   nc              s   t  ˆ  ƒ j t t  ˆ ƒ ƒ ƒ S(   N(   RN   RZ   R   (    (   R_   R]   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   –   s    c              s   t  j j ˆ  ƒ S(   N(   R    R!   RW   (    (   t   pathname(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ˜   s    R7   c              s   t  j j ˆ  ƒ p d S(   Nt   .(   R    R!   R$   (    (   Ra   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ™   s    t   dc              s   ˆ  S(   N(    (    (   Ra   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   š   s    R%   i    i   t    s-   invalid format spec '%%%s' in output filename(
   t   updateR   R   t   appendR#   t   KeyErrorR*   R+   R   t   args(   R1   t   patRK   RT   R]   R_   R[   Ra   t   node_expandert   expandert   newnamet   patlent   it   cRE   (    (   RT   RK   Ra   R1   R[   R_   R]   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   makefilename~   sL    



t   wbc
         C   s(  | d k }
 | s | d k r‘ |
 r1 |  j  j p: |  j  j } t j | d ƒ rn t j t j | j ƒ  ƒ | ƒ Sd t	 f d „  ƒ  Y} | | ƒ Sn  t j | d ƒ r­ |
 r­ | St j | d ƒ rÏ d | k rÏ | St
 |  | | | | | | |	 ƒ } | j | | ƒ } | d	 k rd
 | | <n  t | | ƒ S(   NR\   t   rbR;   t   filenot   wrappedfileobjc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         S   s   d  S(   N(   R   (   t   x(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   º   s    c         S   s   | |  _  d  S(   N(   t   f(   t   selfRv   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   __init__»   s    c         S   s'   | d k r |  j  St |  j | ƒ Sd  S(   Nt   close(   t   noopt   getattrRv   (   Rw   t   attr(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   __getattr__½   s    (   t   __name__t
   __module__Rz   Rx   R}   (    (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRt   ¹   s   		t   writeR>   Rq   t   ab(   R\   s   rb(   RC   t   foutR=   R*   t   safehasattrR    t   fdopent   dupRs   t   objectRp   R<   t   open(   R1   Ri   RK   RT   R]   R_   R[   t   modet   modemapRa   t   writablet   fpRt   t   fn(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   makefileobj¬   s     
!c   	      C   sq  | d } | d } d } | r5 | r5 t d ƒ } n9 | sA | rn | rV t d ƒ } qn |  sn t d ƒ } qn n  | r† t j | ƒ ‚ n  d } |  ræ | r¤ |  j } qæ | r¶ |  j } qæ | ræ |  j | ƒ } t | ƒ rã | } qã qæ n  | sm| st j	 | t d ƒ ƒ ‚ n  t
 j j | ƒ s;t j t d ƒ | ƒ ‚ n  t j t j t
 j ƒ  d t ƒ| d	  d
 ƒ } n  | S(   s:   opens the changelog, manifest, a filelog or a given revlogRO   t   manifests:   cannot specify --changelog and --manifest at the same times6   cannot specify filename with --changelog or --manifests=   cannot specify --changelog or --manifest without a repositorys   invalid argumentss   revlog '%s' not foundt   auditiþÿÿÿs   .iN(   R   R   R*   R+   RO   RŽ   t   fileR   R   t   CommandErrorR    R!   t   isfilet   revlogt   scmutilt   openert   getcwdt   False(	   R1   R	   t   file_RD   t   clt   mft   msgR\   t   filelog(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt
   openrevlogÎ   s<    

c      	      s¢  ˆ j  ƒ  ‰ i  ‰ ˆ j d ƒ ‰  ˆ j d ƒ ‰ ˆ d  ‰	 ‡  ‡ ‡ ‡ f d †  } ‡  ‡ ‡ ‡ ‡ ‡ ‡ ‡ ‡	 f	 d †  } ‡ ‡ ‡ f d †  } ‡ ‡ ‡ f d †  } t j | ƒ } | sÐ t j t d ƒ ƒ ‚ n  t | ƒ d k rú t j t d	 ƒ ƒ ‚ n  | j	 ƒ  }	 t
 j j |	 ƒ o(t
 j j |	 ƒ ‰ ˆ sœt | ƒ d k sVt j | d
 ƒ rnt j t d ƒ ƒ ‚ n  t j |	 ƒ rœt j t d ƒ |	 ƒ ‚ qœn  | }
 ˆ  r±| }
 n  g  } xE | D]= } | | ƒ } | sÜq¾n  | j |
 | |	 | ƒ | f ƒ q¾W| st j t d ƒ ƒ ‚ n  d
 } xV | D]N \ } } x? | D]7 \ } } } | | | | | ƒ | ƒ r=| d 7} q=q=Wq*W| r˜ˆ j t d ƒ ƒ n  | d
 k S(   Nt   aftert   dry_runc            s  g  } ˆ  r d p d } t  j ˆ d  |  g ˆ d t ƒ} xÂ ˆ j | ƒ D]± } ˆ j | } | j | ƒ } | j | ƒ } | | k rå | r³ | d k r³ ˆ j t	 d ƒ | ƒ n  | rJ | d k rJ ˆ j t	 d ƒ | ƒ qJ qJ n  | j
 | | | f ƒ qJ W| S(   Nt   ?s   ?rt   globbeds&   %s: not copying - file is not managed
R\   s2   %s: not copying - file has been marked for remove
(   R”   t   matchR   t   Truet   walkR(   t   relt   exactt   warnR   Rf   (   Ri   t   srcst	   badstatesRU   t   abst   stateR¥   R¦   (   Rž   RD   R1   RC   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   walkpatü   s     "c            s  t  j ˆ j ˆ | ƒ } d | k rY | j d d ƒ \ } } ˆ j j | ƒ d | } n  ˆ j | ˆ ƒ } ˆ j | ƒ } ˆ j |  ƒ }	 ˆ j | }
 t  j ˆ | ƒ ˆ j	 | ƒ } | d  k	 rý ˆ j t d ƒ | ˆ j |  ˆ ƒ ˆ j | ˆ ƒ f ƒ d  St j j | ƒ } t } | r~|  | k r~ˆ j j |  ƒ ˆ j j | ƒ k r~ˆ slˆ j t d ƒ | ƒ d  St } t } q~n  ˆ  r‹| sˆ  rÅ|
 d k rÅˆ d sÅˆ j t d ƒ | ƒ d  Sn  ˆ  r| s-ˆ r÷ˆ j t d ƒ | | f ƒ n ˆ j t d	 ƒ | | f ƒ d  Snˆ s-y | r:t j | ƒ n  t j j | ƒ pOd
 } t j j | ƒ stt j | ƒ n  | r§| d } t j |	 | ƒ t j | | ƒ n t j |	 | ƒ t } Wq-t k
 r)} | j t j k rˆ j t d ƒ | ƒ t } q*ˆ j t d ƒ | | j f ƒ t Sq-Xn  ˆ j s=| rƒˆ rcˆ j t d ƒ | | f ƒ qƒˆ j t d ƒ | | f ƒ n  |  ˆ | <t  j ˆ ˆ ˆ |  | d ˆ d ˆ ƒˆ rÿˆ rÿˆ  rì| rì| rìt j  ˆ j |  ƒ ƒ n  ˆ j! |  g ƒ n  d  S(   Nt   /i   s*   %s: not overwriting - %s collides with %s
s   %s: can't copy - same file
t   mnt   forces"   %s: not overwriting - file exists
s+   %s: not recording move - %s does not exist
s+   %s: not recording copy - %s does not exist
Rb   s	   ~hgrenames   %s: deleted in working copy
s   %s: cannot copy - %s
s   moving %s to %s
s   copying %s to %s
t   dryrunt   cwd("   R”   t	   canonpathRX   t   rsplitR(   t	   normalizet   pathtot   wjoint   checkportableR<   R   R§   R   R    R!   t   lexistsR—   R£   t   unlinkR$   R"   t   makedirst   renameR*   t   copyfileRA   t   errnot   ENOENTRB   t   verboseR,   t   dirstatecopyt
   unlinkpatht   forget(   t   abssrct   relsrct   otargetR¦   t	   abstargett   abspatht   absnamet	   reltargett   targett   srcR«   t   prevsrct   existst   samefilet	   targetdirt   tmpt	   srcexistsRE   (	   Rž   R±   R°   RD   R»   R1   t   targetsRC   t   wctx(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR¼     sŠ    


	  
c            sÆ   t  j j |  ƒ r› t j ˆ j ˆ |  ƒ } t j | ƒ } ˆ r^ t t  j j	 | ƒ d ƒ ‰ n t | ƒ ‰ ˆ r† ˆ t t  j
 ƒ 7‰ n  ‡  ‡ f d †  } n' ˆ r³ ‡  f d †  } n ‡  f d †  } | S(   Ni    c            s    t  j j ˆ  t j |  ƒ ˆ ƒ S(   N(   R    R!   R#   R*   t	   localpath(   R%   (   t   destt   striplen(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   y  s    c            s(   t  j j ˆ  t  j j t j |  ƒ ƒ ƒ S(   N(   R    R!   R#   RW   R*   RÔ   (   R%   (   RÕ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   {  s   c            s   ˆ  S(   N(    (   R%   (   RÕ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ~  s    (   R    R!   R"   R”   R²   RX   R*   RÔ   R   R   t   sep(   Ri   RÕ   R¨   t   abspfxt   res(   R±   t   destdirexistsR1   (   RÕ   RÖ   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   targetpathfno  s    c            su  t  j |  ƒ r! ‡  f d †  } nPt j ˆ j ˆ |  ƒ } t | ƒ t ˆ d d ƒ k  rJ‡  ‡ f d †  } t j | ƒ } t | ƒ ‰ ˆ r¢ ˆ t t j	 ƒ 7‰ n  t j
 j t j
 j ˆ  t j
 j | ƒ d ƒ ƒ r5| ˆ ƒ } t t j
 j | ƒ d ƒ } | r| t t j	 ƒ 7} n  | | ƒ | k r5| ‰ q5n  ‡  ‡ f d †  } n' ˆ rb‡  f d †  } n ‡  f d †  } | S(   Nc            s(   t  j j ˆ  t  j j t j |  ƒ ƒ ƒ S(   N(   R    R!   R#   RW   R*   RÔ   (   R%   (   RÕ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ˆ  s   i    c            s`   d } xS ˆ D]K } t  j j ˆ  t j | d ƒ |  ƒ } t  j j | ƒ r | d 7} q q W| S(   Ni    i   (   R    R!   R#   R*   RÔ   R¸   (   RÖ   t   scoreR7   t   t(   RÕ   R¨   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   evalpath  s    &i   c            s    t  j j ˆ  t j |  ƒ ˆ ƒ S(   N(   R    R!   R#   R*   RÔ   (   R%   (   RÕ   RÖ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ¢  s   c            s(   t  j j ˆ  t  j j t j |  ƒ ƒ ƒ S(   N(   R    R!   R#   RW   R*   RÔ   (   R%   (   RÕ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   §  s   c            s   ˆ  S(   N(    (   R%   (   RÕ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ª  s    (   t   matchmodt   patkindR”   R²   RX   R   R*   RÔ   R    R×   R!   R"   R#   R   (   Ri   RÕ   R¨   RÙ   RØ   RÞ   RÜ   t	   striplen1(   R±   RÚ   R1   (   RÕ   R¨   RÖ   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   targetpathafterfn…  s*     1s"   no source or destination specifiedi   s   no destination specifiedi    s@   with multiple sources, destination must be an existing directorys!   destination %s is not a directorys   no files to copys   (consider using --after)
(   R–   R<   R   R”   t
   expandpatsR*   R+   R   R   t   popR    R!   R"   t   islinkRß   Rà   t   endswithsepRf   R§   (   RC   R1   t   patsRD   R»   R¬   R¼   RÛ   Râ   RÕ   t   tfnt   copylistRi   R¨   t   errorst
   targetpathRÃ   RÄ   R¦   (    (
   Rž   R±   RÚ   R°   RD   R»   R1   RÒ   RC   RÓ   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   copyñ   sP    
'\)%%	#c      	      s  |  d rq|  d rqt  j d d ƒ \ } ‰  t j | ƒ zÝ | s] t j ƒ  t j d } n  | j d ˆ  ƒ x` t	 d t
 | ƒ ƒ D]I } | | j d ƒ r¨ | | =Pq„ | | j d ƒ r„ | | | d	 5Pq„ q„ W‡  f d
 †  }	 t j | |	 ƒ }
 |
 d k  rt j t d ƒ ƒ ‚ n  Wd y t j ˆ  ƒ Wn+ t k
 rX} | j t j k rY‚  qYn XX| rj| |
 ƒ Sd Sn  | r| ƒ  n  |  d rÚ| r—d pšd } t |  d | ƒ } | j t t j ƒ  ƒ d ƒ | j ƒ  n  |  d rü|  d ‰  y t j ƒ  Wn t k
 rn Xt j ˆ  ƒ t j ƒ  t j j ƒ  t j j ƒ  t j t j t j ƒ } | } | r‹t j | t j t j Bt j  Bƒ } n  t j! | d ƒ t j! | d ƒ t j! | d	 ƒ | d k r×t j | ƒ n  | rü| d k rüt j | ƒ qün  | r	| ƒ  Sd S(   s   Run a command as a service.t   daemont   daemon_pipefdst   prefixs   hg-service-i   s   --daemon-pipefds=%ss   --cwd=s   --cwdi   c              s   t  j j ˆ  ƒ S(   N(   R    R!   RÍ   (    (   t   lockpath(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   condfnè  s    i    s   child process failed to startNt   pid_fileR   t   ws   
(   i    i   i   (   i    i   i   ("   t   tempfilet   mkstempR    Ry   R*   t   hgcmdt   syst   argvRf   t   xrangeR   R   t   rundetachedR+   R   R¹   t   OSErrorR½   R¾   R‡   R€   RN   t   getpidt   setsidt   AttributeErrort
   hidewindowt   stdoutt   flusht   stderrt   devnullt   O_RDWRt   O_CREATt   O_APPENDt   dup2(   RD   t   parentfnt   initfnt   runfnR:   t   runargst	   appendpidt   lockfdRn   Rñ   t   pidR   Rˆ   R‹   t   nullfdt	   logfilefd(    (   Rð   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   serviceÓ  sp    





&s   hg-%h.patchc   	         s“   t  | ƒ ‰ t g  | D] } t  t | ƒ ƒ ^ q ƒ ‰ i  ‰  ‡  ‡ ‡ ‡ ‡ ‡ ‡ f d †  } x. t | ƒ D]  \ } } | | | d | ƒ qk Wd S(   s    export changesets as hg patches.c            s§  ˆ |  } | j  ƒ  } g  | j ƒ  D] } | r# | j  ƒ  ^ q# } | j ƒ  } ˆ r` | j ƒ  n  | rp | d ps t } t }	 ˆ  rt ˆ ƒ d k r| j ƒ  j ƒ  j	 d ƒ }
 |
 d } t
 ˆ ˆ | d | d ˆ d | d ˆ d d d	 ˆ ƒ‰  ˆ  ˆ k rt }	 qn  ˆ  rIˆ  t j k rIt j ˆ  d
 ƒ rIˆ j j d ˆ  j ƒ n  ˆ  s^ˆ j j } n ‡  f d †  } | d ƒ | d | j ƒ  ƒ | d | j ƒ  ƒ | d t j | j ƒ  ƒ ƒ | rß| d k rß| d | ƒ n  | d t | ƒ ƒ | d t | ƒ ƒ t | ƒ d k r4| d t | d ƒ ƒ n  | | j ƒ  j ƒ  ƒ | d ƒ x9 t j ˆ | | d ˆ ƒD] \ } } | | d | ƒqpW|	 r£ˆ  j ƒ  n  d  S(   Ni    s   
RT   R]   R_   R[   Rˆ   Rq   R‰   t   names   %s
c            s   ˆ  j  |  ƒ d  S(   N(   R€   (   R7   t   kw(   R‹   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR€   ;  s    s   # HG changeset patch
s
   # User %s
s   # Date %d %d
s
   #      %s
t   defaults   # Branch %s
s   # Node ID %s
s   # Parent  %s
i   s   

RD   t   label(   RK   t   parentst   brancht   reverseR   R—   R   t   descriptiont   rstripR   R   R£   R÷   R   R*   Rƒ   RC   t   noteR  R€   t   usert   datet   datestrR    t   patcht   diffuiRy   (   RP   R_   R‹   R6   RK   R%   R  R  t   prevt   shouldcloset
   desc_linesRT   R€   t   chunkR  (   t   filemodeRD   R1   R[   t   switch_parentt   templateR]   (   R‹   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   single#  sJ    
+
	'

(i   N(   R   t   maxRN   t	   enumerate(	   R1   t   revsR'  R‹   R&  RD   RP   R(  R_   (    (   R%  RD   R1   R[   R&  R'  R]   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   export  s    +!/Rd   c            sÜ  ˆ  d k r |  j } n ‡  f d †  } | rÏ | j d d ƒ } d } |  j ƒ  s` |  j ƒ  } n  t j | | | | | | d |	 ƒ} x t j t j	 | ƒ d | d | j
 ƒD] \ } } | | d | ƒq¬ WnE xB t j | | | | | | d |	 ƒD] \ } } | | d | ƒqô W|
 rØ| | } | | } x§ t j | | ƒ D] \ } } | } y$ | d k	 rv| j | d	 } n  Wn t k
 rd } n Xt j | | ƒ } | j |  | | | d
 | d | d ˆ  d |	 ƒqAWn  d S(   s   show diff or diffstat.c            s   ˆ  j  |  ƒ d  S(   N(   R€   (   R7   R  (   R‹   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR€   \  s    t   contexti    iP   Rï   t   widtht   gitR  i   t   changest   statR‹   N(   R   R€   Rì   t   plaint	   termwidthR  t   difft
   diffstatuiR*   t	   iterlinesR/  R   t   subrepot   itersubreposR.   Rg   Rß   t   narrowmatcher(   RC   R1   t   diffoptst   node1t   node2R¢   R0  R1  R‹   Rï   t   listsubreposR€   R.  t   chunksR$  R  t   ctx1t   ctx2t   subpathR/   t	   tempnode2t   submatch(    (   R‹   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   diffordiffstatU  s<    	


t   changeset_printerc           B   sS   e  Z d  Z d „  Z d „  Z d „  Z d d d „ Z d „  Z d „  Z	 d „  Z
 RS(	   s9   show changeset information when templating not requested.c         C   sU   | |  _  | |  _ | |  _ | |  _ | |  _ i  |  _ i  |  _ d  |  _ d  |  _	 d  S(   N(
   RC   R1   t   bufferedR  R:  t   headert   hunkR   t
   lastheadert   footer(   Rw   RC   R1   R  R:  RF  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRx   ƒ  s    								c         C   sŒ   | |  j  k rT |  j  | } | |  j k rG | |  _ |  j j | ƒ n  |  j  | =n  | |  j k rˆ |  j j |  j | ƒ |  j | =d Sd S(   Ni   i    (   RG  RI  RC   R€   RH  (   Rw   RP   RR   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR  Ž  s    	
c         C   s#   |  j  r |  j j |  j  ƒ n  d  S(   N(   RJ  RC   R€   (   Rw   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRy   ›  s    	c         K   sk   |  j  rQ |  j j ƒ  |  j | | | | ƒ |  j j d t ƒ |  j | j ƒ  <n |  j | | | | ƒ d  S(   Nt   labeled(   RF  RC   t
   pushbuffert   _showt	   popbufferR£   RH  RP   (   Rw   R6   t   copiest   matchfnt   props(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   showŸ  s
    	%c         C   s>  | j  ƒ  } | j ƒ  } |  j j rN |  j j d | t | ƒ f d d ƒd S|  j j } t j	 | j
 ƒ  ƒ } |  j j r t p„ t }	 g  |  j | | ƒ D]! }
 |
 |	 | j  |
 ƒ ƒ f ^ qš } |  j j t d ƒ | |	 | ƒ f d d | j ƒ  ƒ| j ƒ  } | d k r2|  j j t d ƒ | d d	 ƒn  x: |  j j | ƒ D]& } |  j j t d
 ƒ | d d ƒqEWx: |  j j | ƒ D]& } |  j j t d ƒ | d d ƒq‚W|  j j ró| j ƒ  ró|  j j t d ƒ t | j ƒ  ƒ d d ƒn  x8 | D]0 } |  j j t d ƒ | d d | j ƒ  ƒqúW|  j j r„| j ƒ  } |  j j t d ƒ |  j j j | ƒ t | ƒ f d d ƒn  |  j j t d ƒ | j ƒ  d d ƒ|  j j t d ƒ | d d ƒ|  j j rl|  j j | j | ƒ d | ƒ d  } x· t t d ƒ t d ƒ t d ƒ g | ƒ D]> \ } } | r'|  j j d | d j | ƒ f d d ƒq'q'WnJ | j ƒ  r¶|  j j r¶|  j j t d  ƒ d j | j ƒ  ƒ d d! ƒn  | r|  j j rg  | D] } d" | ^ qÏ} |  j j t d# ƒ d j | ƒ d d$ ƒn  | j ƒ  } | r„|  j j r„xR t | j ƒ  ƒ D]; \ } } |  j j t d% ƒ | | j  d& ƒ f d d' ƒqBWn  | j! ƒ  j" ƒ  } | r|  j j rí|  j j t d( ƒ d d) ƒ|  j j | d d) ƒ|  j j d* ƒ q|  j j t d+ ƒ | j# ƒ  d d d, ƒn  |  j j d- ƒ |  j$ | | ƒ d S(.   s(   show a single changeset or file revisions   %d:%s
R  s   log.nodeNs   changeset:   %d:%s
s   log.changeset changeset.%sR  s   branch:      %s
s
   log.branchs   bookmark:    %s
s   log.bookmarks   tag:         %s
s   log.tags   phase:       %s
s	   log.phases   parent:      %d:%s
s   log.parent changeset.%ss   manifest:    %d:%s
s   ui.debug log.manifests   user:        %s
s   log.users   date:        %s
s   log.datei    i   s   files:s   files+:s   files-:s	   %-12s %s
t    s   ui.debug log.filess   files:       %s
s   ui.note log.filess   %s (%s)s   copies:      %s
s   ui.note log.copiess   extra:       %s=%s
t   string_escapes   ui.debug log.extras   description:
s   ui.note log.descriptions   

s   summary:     %s
s   log.summarys   
(%   RK   RP   RC   t   quietR€   R   R1   RO   R*   R  R  t	   debugflagR    t   _meaningful_parentrevsR   t   phasestrR  t   nodebookmarkst   nodetagst   phaset   manifestnodeRŽ   R  R,   R  t   zipR#   t   filesR¿   t   extraR-   t   itemst   encodeR  t   stripR@   t	   showpatch(   Rw   R6   RO  RP  RQ  t
   changenodeRP   t   logR  t   hexfuncR%   R  R  t   bookmarkt   tagt   parentt   mnodeR^  t   keyt   valueRo   R_  R  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRM  §  s’    7%
%
"
&		"(
"

c      
   C   sÿ   | s |  j  } n  | rû |  j j d ƒ } |  j j d ƒ } t  j |  j |  j ƒ } |  j j j | ƒ d } | rž t |  j |  j | | | d | d t ƒn  | rè | r½ |  j j	 d ƒ n  t |  j |  j | | | d | d t
 ƒn  |  j j	 d ƒ n  d  S(   NR1  R  i    R¢   s   
(   R  R:  R<   RC   R1   RO   R  RD  R£   R€   R—   (   Rw   RK   RP  R1  R4  R:  R!  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRc    s     c         C   s]   | j  | ƒ } |  j j rY | d t k rY | d | d k rI g  } qY | d g } n  | S(   s  Return list of meaningful (or all if debug) parentrevs for rev.

        For merges (two non-nullrev revisions) both parents are meaningful.
        Otherwise the first parent revision is considered meaningful if it
        is not the preceding revision.
        i   i    (   t
   parentrevsRC   RV  R   (   Rw   Re  RP   R  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRW  !  s    	N(   R~   R   t   __doc__Rx   R  Ry   R   RR  RM  Rc  RW  (    (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRE  €  s   				h	t   changeset_templaterc           B   s2   e  Z d  Z d „  Z d „  Z d „  Z d „  Z RS(   s   format changeset information.c   	      C   s–   t  j |  | | | | | ƒ | j r. d „  p4 d „  } i d d 6d d 6d d 6d	 d
 6} | d | d <t j | i | d 6d | ƒ|  _ i  |  _ d  S(   Nc         S   s   |  S(   N(    (   Ru   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   6  s    c         S   s   |  d  S(   Ni   (    (   Ru   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   6  s    s   {rev}:{node|formatnode} Ri  s   {rev}:{node|formatnode}RŽ   s   {name} ({source})t	   file_copys   {key}={value|stringescape}R_  t   filecopyt
   formatnodet   cache(   RE  Rx   RV  t	   templaterRÝ   Rs  (	   Rw   RC   R1   R  R:  t   mapfileRF  Rr  t   defaulttempl(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRx   4  s    
c         C   s   | |  j  j d <d S(   s   set template string to uset	   changesetN(   RÝ   Rs  (   Rw   RÝ   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   use_templateC  s    c         C   sk   | j  ƒ  } t | ƒ d k r" | S|  j j rC | d |  j d g S| d j ƒ  | j ƒ  d k rg g  S| S(   sH   Return list of meaningful (or all if debug) parentrevs for rev.
        i   i    t   null(   R  R   RC   RV  R1   RP   (   Rw   R6   R  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRW  G  s     c            s¾  t  j ‰ ‡  ‡ f d †  } | j ƒ  } | j t  j ƒ | | d <ˆ  j | d <| | d <ˆ  j | d <i | d 6| d <ˆ  j | d <t d f ˆ  j
 j d	 f ˆ  j
 j d
 f ˆ  j
 j d f g } i d d 6d d 6d d 6} xc | D][ \ } }	 xL | D]D }
 |	 rd |
 |	 f p|
 } | rô | ˆ  j k rô | | |
 <qô qô Wqá Wyú | d r¹t j ˆ  j | d |  ƒ } ˆ  j r‹| ˆ  j | j ƒ  <q¹ˆ  j | k r¹| ˆ  _ ˆ  j
 j | ƒ q¹n  | d } ˆ  j
 j t j ˆ  j | |  ƒ ƒ ˆ  j | j ƒ  | ƒ | d r9ˆ  j s9t j ˆ  j | d |  ƒ ˆ  _ q9n  Wn} t k
 r} t d ƒ } t j | ˆ  j j | j d f ƒ ‚ n9 t k
 r¹} t j d ˆ  j j | j d f ƒ ‚ n Xd S(   s(   show a single changeset or file revisionc             sZ   |  d } g  ˆ  j  | ƒ D]* } d | j ƒ  f d | j ƒ  f g ^ q } ˆ d | |   S(   NR6   RP   RK   Ri  (   RW  RP   R    (   Rh   R6   R%   R  (   Rw   t   showlist(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   showparents\  s    
=R  t   templR6   R1   RO  t   revcacheRs  R¿   RU  R   Rd   RG  RJ  Rw  s   %s_%ss   %s: no key named '%s'i    s   %s: %sN(   t
   templatekwRz  Rì   Re   t   keywordsRÝ   R1   Rs  R£   R   RC   R¿   RU  RV  Rt  t	   stringifyRF  RG  RP   RI  R€   Rc  RK   RJ  Rg   R   R*   R+   Ru  Rh   t   SyntaxError(   Rw   R6   RO  RP  RQ  R{  t	   tmplmodest   typesRˆ   t   postfixt   typet   curRR   Rk  RE   R›   (    (   Rw   Rz  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRM  S  sP    	

	
		
%
	)(   R~   R   Rn  Rx   Rx  RW  RM  (    (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRo  1  s
   			c         C   sé  t  } | j d ƒ s$ | j d ƒ r6 t j | ƒ } n  | j d ƒ } d } | ri t j | d t  ƒ} n | j d ƒ } | p | sü |  j d d ƒ } | rÛ y t j | ƒ } Wqù t k
 r× t j | d t  ƒ} qù Xqü t	 j
 |  j d d d ƒ ƒ } n  | p| st |  | | | | ƒ Sd } | r„| r„| } t j j | ƒ d	 s„t j d
 | ƒ plt j | ƒ } | r| } qq„n  y t |  | | | | | ƒ }	 Wn) t k
 rÎ}
 t	 j |
 j d	 ƒ ‚ n X| rå|	 j | ƒ n  |	 S(   sY  show one changeset using template or regular display.

    Display format will be the first non-empty hit of:
    1. option 'template'
    2. option 'style'
    3. [ui] setting 'logtemplate'
    4. [ui] setting 'style'
    If all of these values are either the unset or the empty string,
    regular display via changeset_printer() is done.
    R  R1  R'  t   quotedt   styleRC   t   logtemplateRd   i    s   map-cmdline.N(   R—   R<   R”   t   matchallR   Rt  t   parsestringt   configR  R*   t
   expandpathRE  R    R!   R   t   templatepathRo  R+   Rh   Rx  (   RC   R1   RD   RF  R  t   tmplRˆ  Ru  t   mapnameRÝ   RE   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   show_changeset—  sB    !c            sÂ   t  j | ƒ ‰  t j | ƒ } i  ‰ ‡  ‡ f d †  } xp t | | i d d 6| ƒ D]R } | j ƒ  } | ˆ k rS |  j t d ƒ | t  j	 ˆ | ƒ f ƒ t
 | ƒ SqS Wt  j t d ƒ ƒ ‚ d S(   s;   Find the tipmost changeset that matches the given date specc            s3   |  j  ƒ  } ˆ  | d ƒ r/ | ˆ |  j ƒ  <n  d  S(   Ni    (   R  RP   (   R6   t   fnsRc   (   t   dft   results(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   prepÔ  s    RP   s   found revision %s from %s
s    revision matching date not foundN(   R*   t	   matchdateR”   RŠ  t   walkchangerevsR   RP   R,   R   R  RN   R+   (   RC   R1   R  RU   R•  R6   RP   (    (   R“  R”  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   finddateÍ  s    #i   i   c         c   s³   |  | k  r] x  |  | k  rY |  t  | | |  ƒ f V|  | 7}  | | k  r | d 9} q q WnR xO |  | k r® |  t  | |  | d ƒ f V|  | 8}  | | k  r` | d 9} q` q` Wd  S(   Ni   i   (   t   min(   t   startt   endt
   windowsizet	   sizelimit(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   increasingwindowsâ  s    

c            sh  ˆ j  d ƒ p ˆ j  d ƒ ‰ ˆ j  d ƒ rK t j ˆ	 ˆ j  d ƒ ƒ ‰
 n. ˆ rc ˆ	 j d ƒ ‰
 n t ˆ	 ƒ ‰
 ˆ
 j ƒ  ˆ
 sƒ g  St ƒ  ‰ ˆ j ƒ  p° ˆ j ƒ  o° ˆ j  d ƒ } i  ‰ ˆ	 j	 ‰  | rå ˆ j ƒ  rå t ˆ
 ƒ ‰ n  g  ‰ | råˆ j ƒ  råt
 ˆ
 ƒ t ˆ
 ƒ ‰ } ‡ ‡ ‡	 f d †  } ‡ ‡ ‡ ‡	 f d †  } xX| ƒ  D]M\ } }	 ˆ	 j | ƒ }
 t |
 ƒ s³|	 d k rNˆ r£t j t d ƒ | ƒ ‚ n  t } Pq³qNn  |	 d k rÒt |
 ƒ d	 } n |
 j |	 ƒ } t |
 j | ƒ g ƒ } xŸ | |
 | ƒ D]Ž \ } } } ˆ s3| | k r[q	q[n( | | k rEq	n  | r[| j | ƒ n  ˆ j | g  ƒ j | ƒ ˆ j | ƒ | r	ˆ j | ƒ q	q	WqNW| råx: ˆ j ƒ  D]% } | d
 k sÓ| ˆ	 j k r²Pq²q²Wg  Sqån  | rdˆ r	t j t d ƒ ƒ ‚ n  xX t ˆ
 ƒ D]G } ˆ  | ƒ } t ˆ | j ƒ  ƒ } | r| ˆ | <ˆ j | ƒ qqWn  d t f ‡	 f d †  ƒ  Y‰ xŠ ˆ j  d d ƒ D]v } ˆ	 | j ƒ  } ˆ ƒ  } t
 ˆ
 d ˆ
 d ƒ } x= t | | d	 d ƒ D]% } | j | ƒ ràˆ j | ƒ qàqàWq“Wt  ˆ ƒ } d ‰ | r7t
 | ˆ ƒ ‰ n  ‡  ‡ ‡ ‡ ‡ ‡ ‡ ‡
 ‡ ‡ f
 d †  } | ƒ  S(   sz  Iterate over files and the revs in which they changed.

    Callers most commonly need to iterate backwards over the history
    in which they are interested. Doing so has awful (quadratic-looking)
    performance, so we use iterators in a "windowed" way.

    We walk a window of revisions in the desired order.  Within the
    window, we first walk forwards to gather data, then in the desired
    order (usually backwards) to display it.

    This function returns an iterator yielding contexts. Before
    yielding each context, the iterator will first call the prepare
    function on each context in the window in forward order.t   followt   follow_firstRP   s   reverse(:.)R4   c   	         sä   t  ˆ ƒ } g  } xÅ t d | d ƒ D]° } |  j | ƒ } | ˆ k  rM q& n  | | k r] Pn  g  } x< |  j | ƒ D]+ } | t k rs | j |  j | ƒ ƒ qs qs W|  j | ƒ } | j | | ˆ  oÏ |  j | ƒ f ƒ q& Wt | ƒ S(   s  
            Only files, no patterns.  Check the history of each file.

            Examines filelog entries within minrev, maxrev linkrev range
            Returns an iterator yielding (linkrev, parentlinkrevs, copied)
            tuples in backwards order
            i    i   (	   R   Rù   t   linkrevRm  R   Rf   RK   t   renamedt   reversed(	   Rœ   t   lastt   cl_countR+  t   jR¡  t   parentlinkrevsR%   R`   (   RŸ  t   minrevR1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt
   filerevgen  s     c          3   sŒ   ˆ d }  xe ˆ j  ƒ  D]W } ˆ rc | |  k rK t j t d ƒ | ƒ ‚ n  | |  | j ƒ  f Vq | d  f Vq Wx ˆ  D] } | Vqy Wd  S(   NRb   s/   cannot follow file not in parent revision: "%s"(   R^  R*   R+   R   t   filenodeR   (   t   pctxt   filenamet   filename_node(   RO  RŸ  R¢   R1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt	   iterfiles9  s    
s$   cannot follow nonexistent file: "%s"i   Rb   s5   can only follow copies/renames for explicit filenamest   followfilterc              s#   e  Z e d  „ Z ‡  f d †  Z RS(   c         S   s"   t  |  _ t ƒ  |  _ | |  _ d  S(   N(   R   t   startrevt   sett   rootst	   onlyfirst(   Rw   R³  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRx     s    	c            sû   ‡ ‡  f d †  } ˆ  j  t k r. | ˆ  _  t S| ˆ  j  k r™ ˆ  j s\ ˆ  j j ˆ  j  ƒ n  x˜ | | ƒ D]) } | ˆ  j k ri ˆ  j j | ƒ t Sqi Wn^ ˆ  j s¾ ˆ  j j | ˆ  j  ƒ ƒ n  | ˆ  j k r÷ ˆ  j j | ƒ ˆ  j j | | ƒ ƒ t St S(   Nc            s@   ˆ j  r  ˆ  j j |  ƒ d d !St d „  ˆ  j j |  ƒ ƒ Sd  S(   Ni    i   c         S   s
   |  t  k S(   N(   R   (   Ru   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   —  s    (   R³  RO   Rm  t   filter(   RP   (   R1   Rw   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   realparents“  s    		(   R°  R   R£   R²  t   addRe   t   removeR—   (   Rw   RP   Rµ  Ri  (   R1   (   Rw   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR¢   ’  s$    			(   R~   R   R—   Rx   R¢   (    (   R1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR¯  Œ  s   t   prunei    iÿÿÿÿi   c          3   s+  ˆ r@ ˆ j  ƒ  r@ ˆ d ˆ j d ƒ ƒ ‰ ‡ ‡
 f d †  }  n ‡
 f d †  }  xÕ t d t ˆ	 ƒ ˆ ƒ D]» \ } } g  ˆ	 | | | !D] } |  | ƒ r† | ^ q† } x` t | ƒ D]R } ˆ j | ƒ } ˆ | ƒ ‰  | sö ‡  ‡ f d †  } | ƒ  } n  ˆ ˆ  | ƒ q± Wx | D] } ˆ | ƒ VqWqh Wd  S(   NR³  R   c            s   ˆ  j  |  ƒ o |  ˆ k S(   N(   R¢   (   RP   (   t   fft   wanted(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   wantÇ  s    c            s
   |  ˆ  k S(   N(    (   RP   (   Rº  (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR»  Ê  s    i    c          3   s/   x( ˆ  j  ƒ  D] }  ˆ |  ƒ r |  Vq q Wd  S(   N(   R^  (   Rv   (   R6   R¢   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   fns_generatorÓ  s    (   R^  R<   Rž  R   R-   (   R»  Rn   t   windowRP   t   nrevsR’  R¼  (
   t   changet   fncacheRŸ  R¯  R¢   RD   t   prepareR+  Rº  Rœ  (   R6   R¹  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   iterateÄ  s    %0N(    (!   R<   R”   t   revrangeR+  t   listR  R±  t   anypatsR^  t	   changectxR™  R)  R   R   R   R*   R+   R   R£   RP   R¡  Re   t
   setdefaultRf   R¶  t   storeR-   R´  R†   Rù   R¢   t   discardRJ   (   R1   R¢   RD   RÁ  t   slowpatht   maxrevR©  R®  R˜   RK   Rœ   R¤  t	   ancestorsRP   t   flparentlinkrevst   copiedR!   Rn   R6   t   matchesR¹  t   stopRu   RG   RÂ  (    (   R¿  RO  RÀ  RŸ  R¯  R¢   R¨  RD   RÁ  R1   R+  Rº  Rœ  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR—  ð  s”    
	'		

'	*c            sW   i  ‰  t  g ‰ |  d ‰ |  d  ‰ ‡  ‡ ‡ ‡ f d †  ‰ ‡  ‡ ‡ ‡ f d †  } | S(   NRb   c             s|   xu ˆ D]m }  xd ˆ |  f ˆ |  j  d ˆ ƒ f D]? } x6 | D]. } ˆ  j | j ƒ  t ƒ  ƒ j | j ƒ  ƒ q> Wq1 Wq Wd  S(   Nt   followfirst(   RÌ  RÇ  R¡  R±  R¶  R!   (   RŒ   Rn   Ro   (   t   fcacheRÑ  Rç   R«  (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   populateê  s    *c            s@   ˆ d s t  ˆ d <ˆ ƒ  n  t j ˆ ˆ  j |  g  ƒ d d ƒS(   Ni    R  R!   (   R£   R”   R¢   R<   (   RP   (   RÒ  t   fcachereadyRÓ  RÓ   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   filematcherð  s    


(   R—   R   (   R1   Rç   RÑ  RÕ  (    (   RÒ  RÔ  RÑ  Rç   R«  RÓ  RÓ   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   _makegraphfilematcherÝ  s    	

c            sä  i d= d 6d> d 6d? d 6d@ d 6dA d
 6dB d 6dC d 6dD d 6dE d 6dF d 6dG d 6dH d 6dI d 6dJ d 6dK d  6} t | ƒ } | j d! ƒ p– | j d" ƒ } | j d" ƒ r® d# p± d$ } | d$ } t | ƒ d# k rê | d$ | d# k  rê d# pí d$ } | j d g  ƒ | j d% g  ƒ | d <g  | d D] }	 |  j |	 ƒ ^ q!| d <|  d< }
 t j |
 | | ƒ \ ‰  } ˆ  j ƒ  p‰ˆ  j ƒ  o‰| j d& ƒ } | sexˆ ˆ  j ƒ  D]z } | rÓ| |
 k rÓt	 j
 t d' ƒ | ƒ ‚ n  |  j | ƒ } t | ƒ sŸ| rt	 j
 t d( ƒ | ƒ ‚ n  t } qŸqŸW| rex< ˆ  j ƒ  D]% } | d) k sQ| |  j k r0Pq0q0Wt } qen  | r9| r‰t	 j
 t d* ƒ ƒ ‚ n  d+ d, g } x | D] } | j d- | ƒ qœWx+ | j d. g  ƒ D] } | j d/ | ƒ qÊWx+ | j d0 g  ƒ D] } | j d1 | ƒ qøWd2 j d3 „  | Dƒ ƒ } | | d <nf | rdL } dM dN f } | rtt ˆ  j ƒ  ƒ | | | <qŸt | ƒ | | | | <n t | ƒ | d <d< } | j d4 ƒ sÃ| j d5 ƒ rð| rÞt |  | | ƒ } qð‡  f d6 †  } n  g  } x» | j ƒ  D]­ \ } } | sqn  | | k r-qn  | | \ ‰ } d7 ˆ k rY| j ˆ ƒ qt | t ƒ s|ˆ i | d8 6} n' d9 | j ‡ f d: †  | Dƒ ƒ d; } | j | ƒ qW| rÔd9 d j | ƒ d; } n d< } | | f S(O   sK  Return (expr, filematcher) where expr is a revset string built
    from log options and file patterns or None. If --stat or --patch
    are not passed filematcher is None. Otherwise it is a callable
    taking a revision number and returning a match objects filtering
    the files to be detailed when displaying the revision.
    s   not merge()t	   no_mergess   merge()t   only_mergess   ancestors(%(val)s)t
   _ancestorss   _firstancestors(%(val)s)t   _fancestorss   descendants(%(val)s)t   _descendantss   _firstdescendants(%(val)s)t   _fdescendantss   _matchfiles(%(val)s)t   _matchfiless   date(%(val)r)R  s   branch(%(val)r)s    or R  s   filelog(%(val)r)t   _patslogs   follow(%(val)r)t   _patsfollows   _followfirst(%(val)r)t   _patsfollowfirsts   keyword(%(val)r)t   keywords#   not (%(val)r or ancestors(%(val)r))s    and R¸  s   user(%(val)r)R  RŸ  R   i   i    t   only_branchR4   s/   cannot follow file not in parent revision: "%s"s$   cannot follow nonexistent file: "%s"Rb   s5   can only follow copies/renames for explicit filenamess   r:s	   d:relpaths   p:t   includes   i:t   excludes   x:t   ,c         s   s   |  ] } d  | Vq d S(   s   %rN(    (   t   .0R%   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pys	   <genexpr>Q  s    R  R1  c            s   ˆ  S(   N(    (   RP   (   R¢   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   f  s    s   %(val)t   valt   (c         3   s    |  ] } ˆ  i | d  6Vq d S(   Rç  N(    (   Ræ  t   v(   t   revop(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pys	   <genexpr>u  s    t   )N(   s   not merge()N(   s   merge()N(   s   ancestors(%(val)s)N(   s   _firstancestors(%(val)s)N(   s   descendants(%(val)s)N(   s   _firstdescendants(%(val)s)N(   s   _matchfiles(%(val)s)N(   s   date(%(val)r)N(   s   branch(%(val)r)s    or (   s   filelog(%(val)r)s    or (   s   follow(%(val)r)s    or (   s   _followfirst(%(val)r)s    or (   s   keyword(%(val)r)s    or (   s#   not (%(val)r or ancestors(%(val)r))s    and (   s   user(%(val)r)s    or (   Rß  Rà  (   RÙ  RÚ  (   RÛ  RÜ  (   R   t   dictR<   R   t   lookupbranchR”   t   matchandpatsRÅ  R^  R*   R+   R   R   R£   RÈ  R—   Rf   R#   RÄ  RN   RÖ  t	   iteritemst
   isinstance(   R1   Rç   RD   R+  t
   opt2revsetRŸ  RÑ  R°  t   followdescendantsRY   R«  RÊ  Rv   Rœ   R!   t	   matchargsR%   t   fpatst   fnopatsRÕ  t   exprt   opRç  t   andorR   (    (   R¢   Rê  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   _makegraphlogrevsetù  s¨    

2&*
'	'c   
      C   sn  t  |  ƒ s g  d d f St | ƒ } | j d ƒ p@ | j d ƒ } t } | j d ƒ rw t j |  | d ƒ } t } nC | r¡ t  |  ƒ d k r¡ |  j d ƒ } n t	 |  j
 ƒ } | j ƒ  | sÍ g  d d f St |  | | | ƒ \ } } | r| j d t ƒ n  | rH| j ƒ  t j |  j | ƒ }	 |	 |  | ƒ } | j d t ƒ n  | d k	 ra| |  } n  | | | f S(   s™  Return (revs, expr, filematcher) where revs is an iterable of
    revision numbers, expr is a revset string built from log options
    and file patterns or None, and used to filter 'revs'. If --stat or
    --patch are not passed filematcher is None. Otherwise it is a
    callable taking a revision number and returning a match objects
    filtering the files to be detailed when displaying the revision.
    RŸ  R   RP   i    s   reverse(:.)R  N(   R   R   RJ   R<   R—   R”   RÃ  R£   R+  RÄ  RO   R  Rù  R   t   revsetR¢   RC   (
   R1   Rç   RD   RG   RŸ  t   possiblyunsortedR+  Rö  RÕ  t   matcher(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   getgraphlogrevs~  s2    	

c      
   C   s±  g  t  j ƒ  } } x| D]…\ }	 }
 } } d } | j ƒ  | k rM d } n | j ƒ  rb d } n  d  } | rÏ | j ƒ  rÏ g  } xL | j ƒ  D]; } | | | j ƒ  ƒ } | r | j | | d f ƒ q q Wn  d  } | d  k	 rö | | j ƒ  ƒ } n  | j | d | d | ƒ| j	 j
 |	 ƒ j d ƒ } | d s>| d =n  | j |	 ƒ | |
 | | | |	 | ƒ } x6 | D]. \ }
 } } } t  j |  | |
 | | | ƒ qmWq W| j ƒ  d  S(	   Nt   ot   @Ru   i    RO  RP  s   
iÿÿÿÿ(   t   graphmodt
   asciistateRK   t   obsoleteR   RP   R^  Rf   RR  RH  Rä   R   R  t   asciiRy   (   RC   t   dagt	   displayerR{  t   edgefnt
   getrenamedRÕ  t   seenR«   RP   R…  R6   R  t   charRO  RŒ   R»   t
   revmatchfnt   linest   edgest   coldata(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   displaygraph¬  s4    		!

$c         O   sû   t  | | | ƒ \ } } } t j | | ƒ } d  } | j d ƒ r— d  }	 | j d ƒ r t t j | | j d ƒ ƒ ƒ d }	 n  t j	 | d |	 ƒ} n  t
 |  | | d t ƒ}
 g  | d  j ƒ  D] } | j ƒ  ^ qÀ } t |  | |
 | t j | | ƒ d  S(   NRO  RP   i   t   endrevRF  (   Rý  R   t	   dagwalkerR   R<   R)  R”   RÃ  R~  t   getrenamedfnR‘  R£   R  RK   R  t
   asciiedges(   RC   R1   Rç   RD   R+  Rö  RÕ  t   revdagR  R  R  R6   R{  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   graphlogÉ  s    ()c         C   sV   xO d g D]D } | | k r
 | | r
 t  j t d ƒ | j d d ƒ ƒ ‚ q
 q
 Wd  S(   Nt   newest_firsts+   -G/--graph option is incompatible with --%sR   R;   (   R*   R+   R   t   replace(   Rç   RD   R÷  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   checkunsupportedgraphflagsÙ  s    c         C   s?   t  | ƒ } | j ƒ  | d  k	 r/ | |  } n  t j |  | ƒ S(   N(   RJ   R  R   R   t   nodes(   R1   R  RD   RG   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt	   graphrevsß  s
    
c      
      s(  ‡ f d †  } g  ‰  ˆ j  ‰ ‡  ‡ f d †  ˆ _  g  } | d  }	 d  }
 t j |  ƒ \ } } | sj | r… t j |  | | j ƒ }
 n  xž | j ˆ ƒ D] } ˆ j | ƒ } | sÆ | r• | | j k r• |
 rÙ |
 | ƒ n  | j | ƒ |  j	 sö | r"|  j
 t d ƒ ˆ j | | ƒ ƒ ƒ q"q• q• WxÃ t |	 j ƒ D]² } |	 j | ƒ } yi t j | ˆ ƒ } | rŽˆ  j | j |  | | | ˆ t ƒ ƒ n% ˆ  j | j |  | | | ˆ t ƒ ƒ Wq6t j k
 rç|  j
 t d ƒ | | ƒ ƒ q6Xq6W| s$|	 j | ˆ ƒ } ˆ  j ‡ f d †  | Dƒ ƒ n  ˆ  S(   Nc            s   t  j j ˆ  |  ƒ S(   N(   R    R!   R#   (   Rv   (   Rï   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ç  s    c            s   ˆ  j  |  ƒ p ˆ |  | ƒ S(   N(   Rf   (   Ru   t   y(   t   badt   oldbad(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   ê  s    s
   adding %s
s#   skipping missing subrepository: %s
c         3   s'   |  ] } | ˆ  j  ƒ  k r | Vq d  S(   N(   R^  (   Ræ  Rv   (   R¢   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pys	   <genexpr>
  s    (   R  R   R”   t   checkportabilityalertt   casecollisionauditorR(   R¤   R¦   Rf   R¿   R,   R   R¥   R-   R.   R/   Rß   R9  t   extendR¶  R—   R£   R   t   LookupError(   RC   R1   R¢   R°   R=  Rï   t   explicitonlyR#   t   namesRÓ   t   ccat   abortR§   Rv   R¦   RA  R/   RC  t   rejected(    (   R  R¢   R  Rï   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR¶  æ  sD    	
0 c            så  ‡ f d †  } g  ‰  ˆ j  ‰ ‡  ‡ f d †  ˆ _  | d  } g  } | j d ˆ d t ƒ } t | d | d | d | d ƒ }	 | r´ g  |	 D] }
 ˆ j |
 ƒ r |
 ^ q }	 n  xÛ t | j ƒ D]Ê } | j | ƒ } y t j	 | ˆ ƒ } | j
 |  | ˆ ƒ \ } } ˆ  j g  | D] }
 | d	 |
 ^ qƒ | j g  | D] }
 | d	 |
 ^ q>ƒ WqÄ t j k
 r|  j t d
 ƒ | | ƒ ƒ qÄ XqÄ W| sLx± ˆ j ƒ  D]  }
 |
 | j k r¥t j j ˆ j | |
 ƒ ƒ ƒ r¥|
 | k rEt j j ˆ j | |
 ƒ ƒ ƒ r2|  j t d ƒ ˆ j | |
 ƒ ƒ ƒ n  ˆ  j |
 ƒ qEq¥q¥Wn  xP |	 D]H }
 |  j srˆ j |
 ƒ rS|  j t d ƒ ˆ j | |
 ƒ ƒ ƒ qSqSW| j
 |	 ˆ ƒ } ˆ  j ‡ f d †  | Dƒ ƒ | j |	 ƒ ˆ  | f S(   Nc            s   t  j j ˆ  |  ƒ S(   N(   R    R!   R#   (   Rv   (   Rï   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL     s    c            s   ˆ  j  |  ƒ p ˆ |  | ƒ S(   N(   Rf   (   Ru   R  (   R  R  (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL     s    R¢   t   cleani    i   i   i   R­   s#   skipping missing subrepository: %s
s+   not removing %s: file is already untracked
s   removing %s
c         3   s'   |  ] } | ˆ  j  ƒ  k r | Vq d  S(   N(   R^  (   Ræ  Rv   (   R¢   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pys	   <genexpr>3  s    (   R  R   R,   R£   R-   R¦   R.   R/   Rß   R9  RÂ   R  R   R   R   R^  R(   R    R!   R"   R¥   RÍ   R§   Rf   R¿   (   RC   R1   R¢   Rï   R!  R#   RÓ   t   forgotR7   RÂ   Rv   RA  R/   RC  t   subbadt	   subforgotR%  (    (   R  R¢   R  Rï   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRÂ     sF    	
(+(,1!-c         C   s^   xW t  j |  | |  | ƒ j ƒ  D]5 \ } } |  j | d k r! |  j j | | ƒ q! q! Wd S(   s4   reproduce copies from fromrev to rev in the dirstatet   nmaN(   RO  t
   pathcopiesRï  R(   Rì   (   R1   RP   t   fromrevt   dstRË   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   duplicatecopies7  s    -c         C   sˆ   | j  d ƒ } | r+ t j | ƒ | d <n  t |  | ƒ } | j  d ƒ r_ t j | | | ƒ n  | |  | | t j | d | | ƒ | ƒ S(   s5   commit the specified files or all outstanding changesR  t	   addremoveN(   R<   R*   t	   parsedateRF   R”   R/  R¢   R   (   RC   R1   t
   commitfuncRç   RD   R  R9   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   commit?  s    c            s”  |  j  t d ƒ ˆ ƒ ˆ j ƒ  ‰  d  } } }	 z/| j ƒ  } | j ƒ  } | j d ƒ }
 zt |  | ƒ } | j d ƒ t	 |  _
 | j } z3 d  | _ d ˆ | d <t |  | | | | ƒ } Wd  | | _ t |  _
 X| | ‰ | j ˆ j ƒ  ƒ | j ˆ j ƒ  ƒ t ˆ j ƒ  ƒ d k r\t g  | j ˆ  ˆ ƒ d  D] } | D] } | ^ qAq7ƒ } n t ˆ j ƒ  ƒ } | r|  j  t d ƒ ˆ ˆ  f ƒ ˆ j ƒ  } ˆ j ƒ  } t j ˆ  ˆ ƒ ‰ | j ˆ j ƒ  ƒ ‡  ‡ f d	 †  } g  | D] } | | ƒ sç| ^ qç} ‡ ‡ f d
 †  } nb |  j  t d ƒ ˆ ˆ  f ƒ ‡ f d †  } | j d ƒ p^ˆ j ƒ  } | j d ƒ pyˆ j ƒ  } t	 } | st } ˆ j ƒ  } n  | j ƒ  } ˆ j ƒ  | d <t j | d ˆ  j ƒ  ˆ j  ƒ  j ƒ  g d | d | d | d | d | d | ƒ} | r(t! | | g  ƒ | _" n  t# j$ | j ƒ  ƒ } | r–| ˆ j ƒ  k r–| ˆ j ƒ  k r–| ˆ j ƒ  k r–| ˆ j ƒ  k r–ˆ j ƒ  S| j% j& d d t' j( ƒ } z/ | j% j) d d ˆ j* ƒ  ƒ | j+ | ƒ }	 Wd  | j% j) d d | ƒ X|	 ˆ j ƒ  k rk| j, |	 t- ƒ | j. ˆ j ƒ  ƒ } | rk| j/ } x | D] } |	 | | <qGW| j0 ƒ  qkn  t1 j2 rÑ|	 ˆ j ƒ  k rÑ| |	 } ˆ | f f g } | r¾| j3 ˆ d f ƒ n  t1 j4 | | ƒ n  |
 j5 ƒ  Wd  |
 j6 ƒ  Xt1 j2 r_|	 ˆ j ƒ  k r_| r&|  j  t d ƒ ˆ ƒ n  |  j  t d ƒ ˆ ƒ t7 j8 |  | ˆ j ƒ  d d ƒn  Wd  |	 d  k r| j9 j: ƒ  n  t; j6 | | ƒ X|	 S(   Ns   amending changeset %s
t   amendR:   s   temporary amend commit for %sR9   i   i   s   copying changeset %s to %s
c            sƒ   |  ˆ j  ƒ  k ro ˆ j |  ƒ } |  ˆ  j  ƒ  k rh ˆ  j |  ƒ } | j | ƒ og | j ƒ  | j ƒ  k St Sn |  ˆ  j  ƒ  k Sd  S(   N(   RŽ   t   filectxt   cmpt   flagsR—   (   Rv   R   RY   (   t   baseR6   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRÎ   —  s    c      
      s   yc ˆ | } | j  ƒ  } t j | j ƒ  | j ƒ  d d | k d d | k d ˆ  j | ƒ ƒ} | SWn t k
 r| t ‚ n Xd  S(   NRå   t   lt   isexecRu   RÎ  (   R6  R-  t
   memfilectxR!   t   dataR<   Rg   RA   (   R1   t   ctx_R!   t   fctxR6  t   mctx(   RÎ  R6   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt	   filectxfn¤  s    
c            s/   y ˆ  j  | ƒ SWn t k
 r* t ‚ n Xd  S(   N(   R4  Rg   RA   (   R1   R<  R!   (   t   old(    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR?  ³  s    R  R  t   amend_sourceR  t   textR^  R?  R_  t   phasess
   new-commits$   stripping intermediate changeset %s
s   stripping amended changeset %s
t   topics   amend-backup(    (<   R  R   t   p1R   t   wlockt   lockt   transactionRF   Rä   R—   t	   callhookst   _bookmarkcurrentR2  R£   Re   R_  R   R  R±  R,   R^  R  R  RO  R+  R<   R  Rì   R    R-  t   memctxRK   R)   t   commitforceeditort   _textRO   t	   stripdescRC   RŒ  RC  t   draftt	   setconfigR[  t	   commitctxt
   setparentsR   RY  t
   _bookmarksR€   R  t   _enabledRf   t   createmarkersRy   t   releaset   repairRb  R(   t
   invalidatet   lockmod(   RC   R1   R1  R@  R_  Rç   RD   RF  RG  t   newidt   trR9   t   currentbookmarkRK   t   stRŒ   R^  R  R  RÎ   Rv   R?  t   editmsgt	   pureextrat   newt   newdesct   pht   bmst   markst   bmt   obs(    (   R7  RÎ  R6   R@  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR3  N  s¶    				

 %	
	
&c         C   s&   | j  ƒ  r | j  ƒ  St |  | | ƒ S(   N(   R  RL  (   R1   R6   t   subs(    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   commiteditor  s    
c         C   sœ  g  } | j  ƒ  | j ƒ  | j ƒ  } } } | j ƒ  rN | j | j ƒ  ƒ n  | j d ƒ | j d ƒ | j t d ƒ ƒ | j t d ƒ ƒ | j d ƒ | j t d ƒ | j ƒ  ƒ | j ƒ  rÚ | j t d ƒ ƒ n  | j ƒ  r| j t d ƒ | j ƒ  ƒ n  t	 j
 |  ƒ r2| j t d ƒ |  j ƒ n  | j g  | D] } t d	 ƒ | ^ q?ƒ | j g  | D] } t d
 ƒ | ^ qiƒ | j g  | D] } t d ƒ | ^ q“ƒ | j g  | D] } t d ƒ | ^ q½ƒ | r| r| r| j t d ƒ ƒ n  | j d ƒ t j ƒ  }	 t j |  j ƒ |  j j d j | ƒ | j ƒ  ƒ }
 t j d d |
 ƒ }
 t j |	 ƒ |
 j ƒ  s˜t j t d ƒ ƒ ‚ n  |
 S(   NRd   sB   HG: Enter commit message.  Lines beginning with 'HG:' are removed.s(   HG: Leave message empty to abort commit.s   HG: --s   HG: user: %ss   HG: branch merges   HG: branch '%s's   HG: bookmark '%s's   HG: subrepo %ss   HG: added %ss   HG: changed %ss   HG: removed %ss   HG: no files changeds   
s   (?m)^HG:.*(
|$)s   empty commit message(   R2   R3   R4   R  Rf   R   R  R)   R  t	   bookmarkst	   iscurrentRJ  R  R    R–   t   chdirRX   RC   t   editR#   RS   R/   Rb  R*   R+   (   R1   R6   Rg  t   edittextR2   R3   R4   R7   Rv   t   olddirRB  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL  	  s>    & ****$c   	      C   sa  |  | } | j  ƒ  } | j d ƒ r | r | | k r g  | D]0 } | j ƒ  | k r? | j ƒ  | k r? | ^ q? r |  j j t d ƒ ƒ n  | j d ƒ sí xL | D]A } | j ƒ  r¥ | j ƒ  | k r¥ |  j j t d ƒ | ƒ q¥ q¥ Wn  |  j j r(|  j j	 t d ƒ t
 | ƒ | j ƒ  f ƒ n5 |  j j r]|  j j	 t d ƒ t
 | ƒ | f ƒ n  d  S(   NR3  s   created new head
t   close_branchs    reopening closed branch head %d
s   committed changeset %d:%s
(   R  R<   RK   R  RC   R,   R   t   closesbranchRV  R€   RH   R    R¿   (	   R1   RK   R  t   bheadsRD   R6   R  Ru   R\   (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   commitstatus.  s    
">$/c   (         sæ  | \ } } ˆ j  ƒ  } ˆ j ƒ  }	 | | k r9 |	 }
 n d  }
 i  ‰ ˆ j ƒ  } zƒt j ˆ d  | ˆ ƒ ‰ d „  ˆ _ x9 ˆ j ˆ ƒ D]( ‰  ˆ j ˆ  ƒ ˆ j	 ˆ  ƒ f ˆ ˆ  <q‰ W‡ ‡ ‡ ‡	 f d †  } t j ˆ | ˆ ƒ ‰ | ˆ _ xH ˆ j ˆ ƒ D]7 ‰  ˆ  ˆ k rû ˆ j ˆ  ƒ ˆ j	 ˆ  ƒ f ˆ ˆ  <qû qû Wt
 ‡ f d †  ˆ j Dƒ ƒ } t j ˆ ˆ ƒ ‰ ˆ j d ˆ ƒ d  } t t | ƒ \ } } } } ˆ j ƒ  } xq | D]i } ˆ j j | ƒ } | r«| ˆ k r«ˆ j | d k r«| j | ƒ ˆ j | | ƒ t f ˆ | <q«q«W‡ f d †  } g  t d ƒ f } g  t d	 ƒ f } g  | f } g  t d
 ƒ f } | | | t t f | | | t t f | | d  t t f | | | t t f f } xÃt
 ˆ j ƒ  ƒ D]¯\ ‰  \ ‰ ‰ |	 j ˆ  ƒ } ˆ j ˆ  ƒ ‰ ‡  ‡ ‡ ‡ ‡ ‡	 f d †  } x^| D]Z \ } } }  }! }" ˆ  | k rFqn  | r\| | |! ƒ n |  d  k	 rx| |  |" ƒ n  PqWˆ  ˆ j k rÈ| r¢| | t ƒ qÊˆ rÊˆ	 j t d ƒ ˆ ƒ qÊqÊn  | | k rúˆ rÊˆ	 j t d ƒ ˆ ƒ qÊqÊn  |
 d  k rˆ | j ƒ  }
 n  ˆ  |
 k rl| rl|
 ˆ  | k sY|
 j ˆ  ƒ |	 j ˆ  ƒ k ry| | t ƒ qyqÊ| | t ƒ qÊWˆ j d ƒ sÓ‡ ‡ f d †  }# t j ˆ j ƒ }$ xƒ | d D]w } ˆ j | d k rêˆ j j | ƒ q»n  |$ | ƒ y t  j! ˆ j | ƒ ƒ Wn t" k
 r!n Xˆ j j# | ƒ q»Wd  }% | | k rr| t$ k rcˆ j j% }% qrˆ j j& }% n  x/ | d D]# } |# | ƒ |% r}|% | ƒ q}q}Wx, | d D]  } |# | ƒ ˆ j j | ƒ q¯Wˆ j j% }% | | k r| t$ k rˆ j j& }% n  x& | d D] } |# | ƒ |% | ƒ qWt' j( ˆ | ˆ ƒ }& xH | d | d | d D], } | |& k r`ˆ j j) |& | | ƒ q`q`W| rÓx7 | D], }' ˆ j* |' ƒ j+ ˆ	 ˆ j |' | ˆ Ž qWqÓn  Wd  | j, ƒ  Xd  S(   Nc         S   s   t  S(   N(   R—   (   Ru   R  (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyRL   q  s    c            su   |  ˆ k r d  S|  ˆ  j  k r# d  S|  d } x! ˆ D] } | j | ƒ r4 d  Sq4 Wˆ j d ˆ j |  ƒ | f ƒ d  S(   NR­   s   %s: %s
(   R.   R   R§   R¥   (   R!   R›   t   path_Rv   (   R6   RU   R"  RC   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   badfnw  s    
c         3   s!   |  ] } ˆ  | ƒ r | Vq d  S(   N(    (   Ræ  R7   (   RU   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pys	   <genexpr>‰  s    R¢   i   R\   c            s'   ˆ  j  |  d k r t d ƒ St d ƒ S(   NR   s   forgetting %s
s   removing %s
(   R(   R   (   Rª   (   R1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   removeforget–  s    
s   reverting %s
s
   adding %s
s   undeleting %s
c            sÕ   |  d j  ˆ  ƒ | r… ˆ j d ƒ r… t j j ˆ ƒ r… d ˆ } ˆ j t d ƒ ˆ | f ƒ ˆ j d ƒ s… t j ˆ | ƒ q… n  ˆ j	 s• ˆ rÑ |  d } t
 | t ƒ s½ | ˆ  ƒ } n  ˆ j | ˆ ƒ n  d  S(   Ni    t	   no_backups   %s.origs#   saving current version of %s as %s
RŸ   i   (   Rf   R<   R    R!   R¸   R  R   R*   R»   R¿   Rð  t
   basestringR,   (   t   xlistt   dobackupt   baknameR›   (   Rª   R¦   RD   R¥   RÊ   RC   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   handle°  s    

s   file not managed: %s
s   no changes needed to %s
RŸ   c            s-   ˆ  |  } ˆ j  |  | j ƒ  | j ƒ  ƒ d  S(   N(   t   wwriteR;  R6  (   Rv   t   fc(   R6   R1   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   checkoutá  s    
i    R   (-   RK   RŽ   R   RF  R”   R¢   R  R¤   R¥   R¦   R-   R.   t
   matchfilesR,   t   mapR±  R–   R(   RÎ  R¶  Rµ   R£   R   R—   R`  R<   R¶   R§   R6  t   pathauditorRX   t   dropR*   RÁ   Rû   R·  R   t   normallookupt   normalRO  R+  Rì   R/   t   revertRV  ((   RC   R1   R6   R  Rç   RD   Ri  R)   RK   Rš   t   pmfRF  Rt  t
   targetsubsR0  R2   R3   R4   R5   R±   Rv   RË   Ru  R…  R¶  R·  t   undeletet	   disptablet   mfentryR{  R   t   hitlistt   misslistt	   backuphitt
   backupmissR~  t
   audit_pathR„  RÎ  R/   (    (
   Rª   R6   R¦   RU   R"  RD   R¥   R1   RÊ   RC   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR…  \  sÔ    	&	)%#	%



!4c            s   d d ‡  f d † } | S(   su   returns a function object bound to table which can be used as
    a decorator for populating table as a command tablec            s   ‡  ‡ ‡ ‡ f d †  } | S(   Nc            s<   ˆ r" |  t  ˆ ƒ ˆ f ˆ ˆ  <n |  t  ˆ ƒ f ˆ ˆ  <|  S(   N(   RÄ  (   t   func(   R  t   optionst   synopsisR   (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt	   decorator  s    (    (   R  R‘  R’  R“  (   R   (   R  R‘  R’  s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyR	     s    (    N(   R   (   R   R	   (    (   R   s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   command  s    	(J   RK   R    R   R   R   t   i18nR   R    R÷   R½   RS   Rô   R*   R”   Rt  R  R   R~  R“   RO  R¢   Rß   R7  R-  RW  R   Rú  RC  R  RO   Ri  RG  RY  R
   R—   R   R£   R   R'   R8   RF   RJ   R   Rp   R   R   Rì   R  R,  RD  R†   RE  Ro  R‘  R˜  Rž  R—  RÖ  Rù  Rý  R  R  R  R  R¶  RÂ   R.  R2  R3  Rh  RL  Rr  R…  R”  (    (    (    s5   /sys/lib/python2.7/site-packages/mercurial/cmdutil.pyt   <module>   sh   "<`T	$				-	 	#âG	:)±f6		í		…	.				'	*			¶		%.	»