ó ïRec@@scddlmZddlZddlZddlZddlmZddlmZm Z m Z m Z ddl m Z ddlmZddlmZmZejdƒZejd ƒZejd ƒZejd ƒZer-dd lmZmZdd l mZddlmZddlmZmZneje ƒZ!defd„ƒYZ"ej#e"ƒdS(i(tabsolute_importN(t indent_log(t display_pathtis_console_interactivetrmtreetsplit_auth_from_netloc(t make_command(tMYPY_CHECK_RUNNING(tVersionControltvcss url="([^"]+)"scommitted-rev="(\d+)"s\s*revision="(\d+)"s(.*)(tOptionaltTuple(t CommandArgs(t HiddenText(tAuthInfot RevOptionst SubversioncB@sòeZdZdZdZdZed„ƒZed„ƒZ ed „ƒZ ed „ƒZ ed „ƒZ ed „ƒZ ed „ƒZed„ƒZed„ƒZdd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(tsvns.svntcheckoutssvn+sshssvn+https svn+httpsssvn+svncC@stS(N(tTrue(tclst remote_url((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytshould_add_vcs_url_prefix+scC@s d|gS(Ns-r((trev((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytget_base_rev_args/sc C@síd}xàtj|ƒD]Ï\}}}|j|krAg|(qn|j|jƒtjj||jdƒ}tjj|ƒs„qn|j|ƒ\}}||kr²|d}n$| sÉ|j|ƒ rÖg|(qnt ||ƒ}qW|S(sR Return the maximum revision for all files under a given location itentriest/( tostwalktdirnametremovetpathtjointexistst_get_svn_url_revt startswithtmax( Rtlocationtrevisiontbasetdirst_t entries_fntdirurltlocalrev((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyt get_revision3s"  cC@s/|dkr%tt|ƒj||ƒSt|ƒS(s™ This override allows the auth information to be passed to svn via the --username and --password options instead of via the URL. tssh(tsuperRtget_netloc_and_authR(Rtnetloctscheme((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyR0Os cC@sJtt|ƒj|ƒ\}}}|jdƒr=d|}n|||fS(Nsssh://ssvn+(R/Rtget_url_rev_and_authR#(RturlRt user_pass((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyR3\s! cC@s<g}|r|d|g7}n|r8|d|g7}n|S(Ns --usernames --password((tusernametpasswordt extra_args((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyt make_rev_argses cC@sw|}x]tjjtjj|dƒƒse|}tjj|ƒ}||kr tjd|ƒdSq W|j|ƒdS(Nssetup.pysGCould not find setup.py for directory %s (tried all parent directories)i( RRR!R RtloggertwarningtNoneR"(RR%t orig_locationt last_location((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytget_remote_urlps$ c C@sKddlm}tjj||jdƒ}tjj|ƒrat|ƒ}|jƒ}WdQXnd}|j dƒs”|j dƒs”|j dƒrt t t j |jdƒƒƒ}|dd=|dd }g|D]2}t|ƒd krÕ|d rÕt|d ƒ^qÕdg}n|j d ƒr tj|ƒ} | sVtd jtƒƒ‚n| jd ƒ}gtj|ƒD]} t| jd ƒƒ^qudg}n†ye|jdd|gƒ} tj| ƒjd ƒ}gtj| ƒD]} t| jd ƒƒ^qã}Wn|k r%dg}}nX|r;t|ƒ} nd} || fS(Ni(tSubProcessErrorRtt8t9t10s ii s! I;5 cC@stS(s&Always assume the versions don't match(tFalse(Rtdesttname((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytis_commit_id_equal·scC@sA|dkrtƒ}n||_d|_tt|ƒjƒdS(N(R<Rtuse_interactivet _vcs_versionR/Rt__init__(tselfRg((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyRi¼s     cC@s“d}|jdgƒ}|j|ƒs+dS|t|ƒjƒd}|jdƒdjdƒ}yttt|ƒƒ}Wntk rŽdSX|S(sQuery the version of the currently installed Subversion client. :return: A tuple containing the parts of the version information or ``()`` if the version returned from ``svn`` could not be parsed. :raises: BadCommand: If ``svn`` is not installed. s svn, version s --versionit-t.((( RXR#RNRMt partitionttupleRJRORR(Rjtversion_prefixtversiont version_listtparsed_version((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytcall_vcs_versionËs cC@s/|jdk r|jS|jƒ}||_|S(sReturn the version of the currently installed Subversion client. If the version of the Subversion client has already been queried, a cached value will be used. :return: A tuple containing the parts of the version information or ``()`` if the version returned from ``svn`` could not be parsed. :raises: BadCommand: If ``svn`` is not installed. N(RhR<Rs(Rjt vcs_version((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytget_vcs_versionés   cC@s3|jsdgS|jƒ}|dkr/dgSgS(sXReturn options to be used on calls to Subversion that contact the server. These options are applicable for the following ``svn`` subcommands used in this class. - checkout - export - switch - update :return: A list of command line arguments to pass to ``svn``. s--non-interactiveiis--force-interactive(ii(RgRu(Rjt svn_version((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pytget_remote_call_optionsþs   c C@sŒ|j|ƒ\}}tjd||ƒtƒUtjj|ƒrQt|ƒntd|j ƒ|j ƒ||ƒ}|j |ƒWdQXdS(s@Export the svn repository at the url to the destination locations!Exporting svn repository %s to %stexportN( tget_url_rev_optionsR:RERRRR!RRRwtto_argsRX(RjR%R4t rev_optionstcmd_args((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyRxs   cC@s`|jƒ}tjd||t|ƒƒtdd|jƒ|jƒ||ƒ}|j|ƒdS(NsChecking out %s%s to %sRs-q(t to_displayR:RERRRwRzRX(RjRdR4R{t rev_displayR|((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyt fetch_new0s  cC@s5td|jƒ|jƒ||ƒ}|j|ƒdS(Ntswitch(RRwRzRX(RjRdR4R{R|((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyR€?s cC@s2td|jƒ|jƒ|ƒ}|j|ƒdS(Ntupdate(RRwRzRX(RjRdR4R{R|((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyRGs (Rssvn+sshssvn+https svn+httpsssvn+svnN(t__name__t __module__ReRt repo_nametschemest classmethodRt staticmethodRR-R0R3R9R?R"RfR<RiRsRuRwRxRR€R(((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyR%s*   2    !   ($t __future__RtloggingRtretpip._internal.utils.loggingRtpip._internal.utils.miscRRRRtpip._internal.utils.subprocessRtpip._internal.utils.typingRt pip._internal.vcs.versioncontrolRR tcompileRPRVRZRYttypingR R R R RRt getLoggerR‚R:Rtregister(((s‹/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/vcs/subversion.pyts*   "ÿ,