Ë
    äØjj¿  ã                   óÂ   — d dl Z d dlmZmZmZ d dlmZmZ d dlm	Z	 d dl
mZ d dlmZmZmZmZmZ  e j$                  e«      Z G d„ de«      Z ej,                  e«       y)	é    N)ÚListÚOptionalÚTuple)Ú
HiddenTextÚdisplay_path)Úmake_command)Úpath_to_url)ÚAuthInfoÚRemoteNotFoundErrorÚ
RevOptionsÚVersionControlÚvcsc            
       ó  ‡ — e Zd ZdZdZdZdZedede	e   fd„«       Z
ded	ed
ededdf
d„Zded	ed
eddfd„Zded	ed
eddfd„Zed	edeeee   ef   fˆ fd„«       Zededefd„«       Zededefd„«       Zededee   defd„«       Zˆ xZS )ÚBazaarÚbzrz.bzrÚbranch)zbzr+httpz	bzr+httpszbzr+sshzbzr+sftpzbzr+ftpzbzr+lpzbzr+fileÚrevÚreturnc                 ó
   — d| gS )Nz-r© )r   s    úZ/opt/eval-harness/bench_task/venv/lib/python3.12/site-packages/pip/_internal/vcs/bazaar.pyÚget_base_rev_argszBazaar.get_base_rev_args    s   € à�cˆ{Ðó    ÚdestÚurlÚrev_optionsÚ	verbosityNc                 óô   — |j                  «       }t        j                  d||t        |«      «       |dk  rd}n|dk(  rd}ndd|z  › �}t	        dd	||j                  «       ||«      }| j                  |«       y )
NzChecking out %s%s to %sr   z--quieté   Ú ú-ÚvÚcheckoutz--lightweight)Ú
to_displayÚloggerÚinfor   r   Úto_argsÚrun_command)Úselfr   r   r   r   Úrev_displayÚflagÚcmd_argss           r   Ú	fetch_newzBazaar.fetch_new$   s‰   € ð "×,Ñ,Ó.ˆÜ�‰Ø%ØØÜ˜Óô		
ð ˜Š>Ø‰DØ˜!Š^Ø‰Dà�s˜9‘}�oÐ&ˆDÜØ˜¨¨{×/BÑ/BÓ/DÀcÈ4ó
ˆð 	×Ñ˜Õ"r   c                 ó>   — | j                  t        d|«      |¬«       y )NÚswitch©Úcwd)r(   r   )r)   r   r   r   s       r   r/   zBazaar.switch9   s   € Ø×Ñœ h°Ó4¸$ÐÕ?r   c                 óþ   — | j                  t        d«      dd|¬«      }|j                  d«      r t        dd|«      }| j                  ||¬«       t        d	d|j                  «       «      }| j                  ||¬«       y )
Nr&   FT©Úshow_stdoutÚstdout_onlyr1   zStandalone Úbindz-qr0   Úupdate)r(   r   Ú
startswithr'   )r)   r   r   r   Úoutputr,   s         r   r7   zBazaar.update<   s‚   € Ø×!Ñ!Ü˜Ó ¨eÀÈ4ð "ó 
ˆð ×Ñ˜]Ô+ô $ F¨D°#Ó6ˆHØ×Ñ˜X¨4ÐÔ0ä ¨$°×0CÑ0CÓ0EÓFˆØ×Ñ˜ tÐÕ,r   c                 ó`   •— t         ‰| �  |«      \  }}}|j                  d«      rd|z   }|||fS )Nzssh://zbzr+)ÚsuperÚget_url_rev_and_authr8   )Úclsr   r   Ú	user_passÚ	__class__s       €r   r<   zBazaar.get_url_rev_and_authI   s=   ø€ ô $™gÑ:¸3Ó?ÑˆˆS�)Ø�>‰>˜(Ô#Ø˜3‘,ˆCØ�C˜Ð"Ð"r   Úlocationc                 ó(  — | j                  dgdd|¬«      }|j                  «       D ]d  }|j                  «       }dD ]M  }|j                  |«      sŒ|j	                  |«      d   }| j                  |«      rt        |«      c c S |c c S  Œf t        ‚)Nr&   FTr3   )zcheckout of branch: zparent branch: r   )r(   Ú
splitlinesÚstripr8   ÚsplitÚ_is_local_repositoryr	   r   )r=   r@   ÚurlsÚlineÚxÚrepos         r   Úget_remote_urlzBazaar.get_remote_urlQ   s–   € à�‰ØˆH %°T¸xð ó 
ˆð —O‘OÓ%ò 	 ˆDØ—:‘:“<ˆDØ@ò  �Ø—?‘? 1Õ%ØŸ:™: a›=¨Ñ+�DØ×/Ñ/°Ô5Ü*¨4Ó0Ô0Ø”Kñ ð	 ô "Ð!r   c                 óT   — | j                  dgdd|¬«      }|j                  «       d   S )NÚrevnoFTr3   éÿÿÿÿ)r(   rB   )r=   r@   Úrevisions      r   Úget_revisionzBazaar.get_revision`   s9   € à—?‘?ØˆIØØØð	 #ó 
ˆð ×"Ñ"Ó$ RÑ(Ð(r   Únamec                  ó   — y)z&Always assume the versions don't matchFr   )r=   r   rP   s      r   Úis_commit_id_equalzBazaar.is_commit_id_equalj   s   € ð r   )Ú__name__Ú
__module__Ú__qualname__rP   ÚdirnameÚ	repo_nameÚschemesÚstaticmethodÚstrr   r   r   r   Úintr-   r/   r7   Úclassmethodr   r   r
   r<   rJ   rO   ÚboolrR   Ú__classcell__)r?   s   @r   r   r      sV  ø„ Ø€DØ€GØ€Ið€Gð ð˜sð  t¨C¡yò ó ðð#Øð#Ø(ð#Ø7Að#ØNQð#à	ó#ð*@˜3ð @ Zð @¸jð @ÈTó @ð-˜3ð - Zð -¸jð -ÈTó -ð ð# sð #¨u°S¸(À3¹-ÈÐ5QÑ/Rô #ó ð#ð ð" cð "¨cò "ó ð"ð ð) Cð )¨Cò )ó ð)ð ð cð °¸#±ð À4ò ó ôr   r   )ÚloggingÚtypingr   r   r   Úpip._internal.utils.miscr   r   Úpip._internal.utils.subprocessr   Úpip._internal.utils.urlsr	   Ú pip._internal.vcs.versioncontrolr
   r   r   r   r   Ú	getLoggerrS   r%   r   Úregisterr   r   r   ú<module>rg      sT   ðÛ ß (Ñ (ç =Ý 7Ý 0÷õ ð 
ˆ×	Ñ	˜8Ó	$€ô[ˆ^ô [ð| €‡�ˆVÕ r   