
    <Bh                       S r SSKJr  SSKrSSKrSSKJr  SSKJr  SSK	J
r
  SSKJr  SS	KJr  SS
KJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  \(       a  SSKJr  \r\(       a  SOSr\R>                  " SSS\SS9  CSr Sr!\(       d  SOSr"\(       d  SOSr#\(       d  SOSr$S r%\" \&5      r'S! r( " S" S#5      r) S&       S'S$ jjr*\RV                  4S% jr,g)(z
These helpers were originally defined in tests/test_create.py,
but were refactored here so downstream projects can benefit from
them too.
    )annotationsN)	getLogger)join)Path)TYPE_CHECKING   )on_win)dashlist)BIN_DIRECTORY)
PrefixData)
deprecated)DEBUG)	MatchSpec)PrefixRecordz
python.exez
bin/pythonz25.3z25.9r   z.Use `conda.common.path.BIN_DIRECTORY` instead.)addendumu   ōγђ家固한áêñßôçabcdefwhichwherecpcopyenvset c                &    U R                  SS5      $ )N\z\\)replace)ps    9lib/python3.13/site-packages/conda/testing/integration.pyescape_for_winpathr   8   s    99T6""    c                  @    \ 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)Commands<   compareconfigcleancreateinfoinstalllistremovesearchupdaterun N)__name__
__module____qualname____firstlineno__COMPARECONFIGCLEANCREATEINFOINSTALLLISTREMOVESEARCHUPDATERUN__static_attributes__r/   r    r   r"   r"   <   s9    GFEFDGDFFF
Cr    r"   c                    [        U5      n[        U SS9nU(       a  UR                  5         [        UR	                  U5      5      nU(       d  g [        U5      S:  a  [        S[        S U5       5       35      eUS   $ )NT)interoperability   zMultiple packages installed.c              3  @   #    U  H  oR                  5       v   M     g 7f)N)dist_str).0precs     r   	<genexpr>'package_is_installed.<locals>.<genexpr>X   s     3\P[MMOOP[s   r   )r   r   loadtuplequerylenAssertionErrorr
   )prefixspecreload_recordsprefix_dataprefix_recss        r   package_is_installedrS   J   s    
 T?DVd;K))$/0K	[	A	*83\P[3\+\*]^
 	
 1~r    c                   [         R                  S:X  aB  [        [         R                  S5      R	                  5       (       a  SOSn SSKJn  X!   S   S   $ [        U S5      nUR	                  5       (       a  SnO# UR                  5         SnUR                  5         [         R                  S	:X  a$  US:X  a  [        [        R                  S
   S5      $ g[         R                  S:X  a&  US:X  a  [        [        R                  S
   SSS5      $ g[!        [         R                  5      e! [         a3     SSKJn  X!   S   S   s $ ! [         a    SSKJ	n  X1   S   s s $ f = ff = f! [         a    Sn Nf = f)Nwin32z	.nonadminusersystemr   )dirs_srcstart)dirsdarwinHOMEApplicationsz/Applicationslinuxz.localshareapplicationsz/usr/share/applications)sysplatformr   rN   is_file)menuinst.platforms.win_utils.knownfoldersrX   ImportErrormenuinst.win32rZ   touchunlinkOSErrorr   osenvironNotImplementedError)prefix_for_unix	user_moderX   rZ   non_admin_files        r   get_shortcut_dirrp   ^   s]   
||w"3::{;CCEEF8		0J&w/22 /;7N		$  " I!!#
||x

6*N;;
||w

6*Hg~NN(
cll
++A  	003*73A66 0/w//0	0$  	! I	!sB   D) <E) )
E&4EE&E"E&!E""E&)E87E8)T)rN   zstr | os.PathLike | PathrO   zstr | MatchSpecrP   boolreturnzPrefixRecord | None)-__doc__
__future__r   rj   ra   loggingr   os.pathr   pathlibr   typingr   common.compatr	   	common.ior
   common.pathr   core.prefix_datar   deprecationsr   gateways.loggingr   models.match_specr   models.recordsr   TEST_LOG_LEVELPYTHON_BINARYconstantUNICODE_CHARACTERSUNICODE_CHARACTERS_RESTRICTEDwhich_or_where
cp_or_copy
env_or_setSPACER_CHARACTERr0   logr   r"   rS   rN   rp   r/   r    r   <module>r      s    # 	 
      "   ' ) % $ )- &L 
  

= 2  (  &GTV
 Ue
  # "  $
  	( &)ZZ (,r    