\x89\x50\x4E\x47\x0D\x0A\x1A\x0A PNG  \x89\x50\x4E\x47\x0D\x0A\x1A\x0A  13\c@@smddlmZmZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddl mZddlmZddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z!m"Z"ddl#m$Z$m%Z%de&fd YZ'd Z(ej)rkd Z*d Z+nd Z*dZ+dZ,dZ-dZ.dZ/dZ0dZ1dZ2dZ3dZ4de&fdYZ5de&fdYZ6dZ7dZ8dZ9dZ:d Z;d!Z<dd"Z>d#Z?d$Z@d%ZAd&ZBd'ZCdS((i(tabsolute_importtprint_functionNi(t_(ttracing(tcmdutiltcolortcommandst demandimporttencodingterrort extensionst fancyoptsthelpthgthookt profilingtpycompattscmutiltuitutil(tprocutilt stringutiltrequestcB@s,eZdddddddZdZRS(cC@s[||_||_||_||_||_||_i|_|pHg|_d|_ dS(N( targsRtrepotfintfouttferrt earlyoptionst prereposetupstNonetcanonical_command(tselfRRRRRRR((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt__init__3s       cC@sd}|jj}zx||r|j\}}}y|||Wq|dkritjd}n|jjd|jjdtqXqWWd|dk r|nXdS(Niserror in exit handlers: tforce( RRt _exithandlerstpoptsystexc_infotwarnt tracebacktTrue(R texcthandlerstfuncRtkwargs((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt_runexithandlersHs    N(t__name__t __module__RR!R.(((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR2s cC@s_ttjdttjd}WdQXd}yt|}Wn"tj k rj}|}d}nXt j |j dry|j j jWqtk r}|}d}qXnt j |j drCyX|dk r|jtjkr|j jjdtj|jn|j jjWqCtk r?d}qCXnttj|d@dS( srun the command in sys.argvsparse args into requestiNiRRs abort: %s i(t initstdioRtlogRRtsysargvRtdispatchR t StdioErrorRt safehasattrRRtflushtIOErrorterrnotEPIPERtwriteRt strtolocaltstrerrort _silencestdioR%texit(treqterrtstatuste((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pytrunYs2    cC@sdS(N((((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR1|scC@shxatjtjfD]M}y|jwWntk r=nXy|jWqtk r_qXqWdS(N(R%tstdouttstderrR7R8tclose(tfp((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR>s   cC@s4x-tjtjtjfD]}tj|qWdS(N(R%tstdinRERFRt setbinary(RH((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR1scC@sdS(N((((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR>sc@s8fd}g|D]}||dkr|^qS(Nc@stjd|jS(N(tdifflibtSequenceMatcherRtratio(tx(tvalue(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pytsg333333?((tsymbolsROtsimts((ROs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt _getsimilarscC@sct|dkr-|td|dn2|r_djt|}|td|ndS(Nis(did you mean %s?) is, s(did you mean one of %s?) (tlenRtjointsorted(R;tsimilartss((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt_reportsimilars cC@sg}t|tjr0t|j|j}nt|jdkr|tdt j |jd|jdf|jdj dr|tdqn(|td|jdt |||j r|td|j ndS(Nishg: parse error at %s: %s it sunexpected leading whitespace shg: parse error: %s s(%s) (t isinstanceR tUnknownIdentifierRTRQtfunctionRURRRtbytestrt startswithRZthint(R;tinstRX((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt _formatparses %  cC@sdjd|DS(NR[cs@s|]}tj|VqdS(N(Rt shellquote(t.0ta((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pys s(RV(R((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt _formatargsscC@svtjda|jr%|j}n!|jr=|jj}n tj}y|jsgtjj|_n|jj t |j|j |jdr|jj ddddn|j r|j |j_ n|jr|j|j_n|jr|j|j_nWnztjk rW}|jtd||jrS|jtd|jndStjk r}}t|j|dSXt|j }tj}d }zyt|pd }Wntjk r}|jjtd ||jr|jjtd |jnntk r}yAt|tjrItd }n td}|jj|Wn>tjk r|n+tk r}|jtj krqnXd}nXWdtj|}|jj!|jj"r|d|jj#d<|jjddt$j%|jj#n|jjdd||d@|d|j&y|j'Wn|p`d}nXX|SWdQXdS(sErun the command specified in req.args; returns an integer status codesdispatch.dispatchR(Rtons --tracebacks abort: %s s(%s) iiis** ProgrammingError: %s s** (%s) skilled! s interrupted! Nitcommand_durationt uiblockeds ui blocked mst commandfinishs!%s exited %d after %0.2f seconds iR((RR2RRRRFtuimodtloadRtupdatet_earlyparseoptsRt setconfigRRR tAbortR;RRat ParseErrorRcRgRttimert _runcatchtProgrammingErrortKeyboardInterruptR\tSignalInterruptR8R9R:R7tlogblockedtimest _blockedtimesRt strkwargsRR.(R@RRbtmsgt starttimetrettduration((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR4s~                  c @stjdd}jy@x9dD]1}tt|d}|r,tj||q,q,WWntk runXfd}t|SWdQXdS(Nsdispatch._runcatchcW@s tjdS(N(R Rw(R((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt catchtermstSIGBREAKtSIGHUPtSIGTERMc @s"d}yRtjjtji}|d}tj|tjt\}}|d}Wn&t j t j t t jfk rnX|dkr+d|kr+tjdksjddksjdjdsjddksjd dkr+t jtd tjjfq+nyd }itjd 6}itjd 6}tjjd }jrx9|D].\} } } jjj| | | d dq}Wnjdd}t} | sjrd }nGjdr-tj )yt!|} Wnt"k r#nXWdQXn| j||<| j||<jdrj#td|d kr|||d krj#td|ntj ||WdQXnzt$SWdj%XWn<jdrt&j'||t(j)dnnXdS(Nitserves--stdiois-Ris--iis/potentially unsafe serve --stdio invocation: %stpdbtconfigtsources--configRtdebuggersAentering debugger - type c to continue starting hg or h for help s3%s debugger specified but its module was not found (*RR RRt globaloptsRtfindcmdttabletFalseR tUnknownCommandtAmbiguousCommandt IndexErrortgetoptt GetoptErrorRUR`RqRRtpprintRt set_tracet post_mortemt _parseconfigRRRRpRtplainRt deactivatedt __import__t ImportErrorR't _dispatchR7R(t print_excR%R&( trealcmdtcmdargstcmdtaliasestentryRt debugtracet debugmortemtcfgstsectnametvaltdebugmod(R@R(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt _runcatchfuncsr       &             (RRR(RR2RtgetattrtsignalRt ValueErrort _callcatch(R@RRtnumR((R@Rs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRts    \cC@sytj||SWntjk r`}|jtd|jddj|jdfnAtjk r }|jdr|j dt j |jd}|jtd|jd|ft j ||jddtdtq|jtd |jd|jtd ntjk rF}t|j|d Stjk rb}td |jd}y@tj|t |jdd t}|j||j|Wqtjtjfk r^t}t|jdkr2t|jd|jd}|r2|j|t|j|t}q2n|s_|j||jtdq_qXn?tk run,tk rnt|sqnXd S(slike scmutil.callcatch but handles more high-level exceptions about config parsing and commands. besides, use handlecommandexception to handle uncaught exceptions. s&hg: command '%s' is ambiguous: %s iR[iR s hg %s: %s tfulltcommandshg: %s s0(use 'hg help -v' for a list of global options) ishg: unknown command '%s' t unknowncmdis'(use 'hg help' for a list of commands) (Rt callcatchR RR'RRRVt CommandErrortpagerRR_Rthelp_RR)RrRcRR t formattedhelpR;RqRURTRZR8Rvthandlecommandexception(RR,Rbtmsgbytestnocmdmsgt formattedt suggestedRR((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRmsT(  $&         c@sg}tj|ds-t|d|}n|rdjttj|}gfd}tjd||}gt D]\}}|kr|^qt j |}n|S(Nt _origfuncRR[c@sYt|jdd}j||tkr@|StjtddS(Nis#too few arguments for command alias(tinttgrouptappendRUR RqR(tmR(t givenargstnums(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pytreplacers  s \$(\d+|\$)( RR6RRVtmapRRdtretsubt enumerateRt shlexsplit(tfnRRRRtiRN((RRs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt aliasargssc@stdt|D|dss$0t$s$$R[s$@cs@s|]}tj|VqdS(N(RRd(ReR((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pys ss"$@"t|s\$c@s|jS(N(R(RN(t replacemap(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRPs(tdictRRVtkeystreplaceRtcompileR(RRRtregextr((Rs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pytaliasinterpolates  !tcmdaliascB@s>eZdZddZedZdZdZRS(c@s |__d_|_d_g_g_d_d_ t _ |_ y^t jj|\}}x3|jD]%\}} | |kr|_PqqWt_Wntjk rt _nXjstdj_ dSjjdrbjdt_fd} | _j||jdSytjj} Wn9tk r} tdjtj| f_ dSXt| \} } | rtdjdjtj| d f_ dS| j d _}| _y{t j||t d}t!|d krg|\__}n|\__d}j|||j|Wnhtjk rtd j|f_ t_ n0tj"k rtd j|f_ nXdS( Ntsno definition for alias '%s't!ic@sidjjfd6}fd}tjd|}tj|}j|d|ddjS(NR[tHG_ARGSc@s~|jddkr |jSt|jdtkrL|jSjdt|jdjfdSdS(NiRsLNo argument found for substitution of %i variable in alias '%s' definition. R(tgroupsRRRUtdebugR(R(RR R(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt _checkvars "  !s \$(\d+|\$)tenviront blockedtagsalias_%s(RVRRRRtsystem(RRtenvRR(R tshdef(RRs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRs   s&error in definition for alias '%s': %ssLerror in definition for alias '%s': %s may only be given on the command linet/iis+alias '%s' resolves to unknown command '%s's-alias '%s' resolves to ambiguous command '%s'(#RRtcmdnamet definitionRRRtoptsR tbadaliasRRRRRt iteritemsR)tshadowsR RRR`tshellt _populatehelpRRRRt forcebytestrt_earlysplitoptsRVtziplistR$RUR(R RRRtcmdtableRRRtaliasRCRRRbt earlyoptsRt tableentrytcmdhelp((R Rs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyR!sr                        c C@si}xud D]m}|jdd||fd}|dkrDq ntj|sptd||f|_dS|||wnWnttfk rXnX|jd|}t|||||}|||tjD]3} | j| d| d|| d| dfq$Wytj|| |dt}Wn1tjk r}tj|tj |nXx0tjD]%} | d} || || <|| =qW||r|dpd|||fS(NiiRtstricttdefaultsitgnu(R RRRRR RRRRRRRt configboolRRRRRRRtlistRR)( RRtoptionst cmdoptionsRbRRRRtctoR((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt_parses< 1  cC@sg}x|D]}yg|jddD]}|j^q)\}}|jdd\}}| sm| rvtn|j|||d|j|||fWq ttfk rtjtdt j |q Xq W|S(s0parse the --config options from the command linet=it.s--configs?malformed --config option: %r (use --config section.name=value)( tsplittstripRRpRRR RqRRR_(RRtconfigsRtcfgelemRROtsection((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRs . c C@sFi}tj|tj|d|jd dtdidgd6|S(NRt strictflagstearlyt optaliasesRt repository(R RRRR)(RRR!((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRos cC@s7d}ddddg}tj|||dtdtS(sCSplit args into a list of possible early options and remainder argssR:scwd=s repository=srepo=sconfig=Rtkeepsep(R t earlygetoptR)(Rt shortoptionst longoptions((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRsc C@stj||d|tddj|d|d|yTt||||} tj||d|tddj|d| d|d|WnItk rtj||d|tddj|d|d|nX| S( Nspre-%sRR[tpatsRspost-%stresultsfail-%s(RR)RVt _runcommandRt Exception( tluiRRtfullargsRR!tdtcmdpatsR"R}((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt runcommands( ( ( cC@s|dkrZytj}WqZtk rV}tjtdtj|jqZXnt j |pld}|s~|}n.|j }|j t jj|dd||r|j|}|j }|j t jj|dd|n||fS(spReturn (path, local ui object) for the given target path. Takes paths in [cwd]/.hg/hgrc into account." s+error getting current working directory: %sRs.hgthgrcN(RRtgetcwdtOSErrorR RqRR<R=RtfindrepoRt readconfigtostpathRVR(RtrpathtwdRCRDR9((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt _getlocals    " %c@siytjtjWntjk r9dSXsDdStj}dy1jdd}tj||\}}Wnt j t j fk rdSX|d|drt j drt\}fdfdSdS(s=Return the function to run the shell alias, if it is requiredNiRRRc@sdS(Ni(((RRR(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRP sc @s&tdd gi S(Ni(R=R((RRR;R9R!R(s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyRP!s(R RRRRRRRRR RRRR6R(R9RRRRRRt _earlyopts((RRR;RR9R!Rs8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pyt_checkshellaliass(    c@s|j|j|jd}|r5tj|n|jd}t|\}}|h}|jr|j|jjn|jds|jds|jdrxXd8D]M}tj t |j|}x(|D] }|j d||d|qWqWn|jdr;x'|D]}|j d d d d qWn|j d d } t j|d | } tj||j_t|tjt|} | r| S|jdd } | r| t_n} t|\}}}||_|d|jdkr-tjtdn|d|jdkr\tjtdn|d|jdkrtjtdn|d|jdkrtjtdn|dr|dt_n|dr|dt_n|dr/dfd}j|n|drF| j n|dsd|dsd|drxrd9D]g}|||j|krqkntj t ||}x(|D] }|j d||d|qWqkWn|dr x'|D]}|j ddddqWn|drAx'|D]}|j ddddqWn|j!d t"rpx|D]}t#|_$qZWn|d!}x:|D]2}|r|j dd!|d"nt%j&|qWt'j(|d#rj)d$|n.|d#d%kr x|D]}|j*qWn|d&r#tj+S|d'rItj,|d(|dk S|s_tj,d)Sd}}j.se| r| r|j}n|rj/|j_/j0|j_0j1|j_1nbyot2j3d*|d+|j4d,j5}|j6stjtd-|n|jj d.d/|j7d0Wntj8k rMntj9k r&|rinj:s'j;rr| rtj<t=j>}|d1}|r|j?|t@|krd2|g| |_||jdRTRZRcRgR4RtRRRRR RR%RRoRR=RRGRIRR7RR(((s8/usr/lib64/python2.7/site-packages/mercurial/dispatch.pytsX          j' "          J l 4  !  )        <