
    si                    z   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  \(       a  SSKJr  \r\(       a  SOSr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%\RL                  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)
PrefixData)DEBUG)	MatchSpec)PrefixRecordz
python.exez
bin/pythonu   ōγђ家固한áêñßôç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   .   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)Commands2   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   2   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>N   s     3\P[MMOOP[s   r   )r   r   loadtuplequerylenAssertionErrorr
   )prefixspecreload_recordsprefix_dataprefix_recss        r   package_is_installedrP   @   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   rK   is_file)menuinst.platforms.win_utils.knownfoldersrU   ImportErrormenuinst.win32rW   touchunlinkOSErrorr   osenvironNotImplementedError)prefix_for_unix	user_moderU   rW   non_admin_files        r   get_shortcut_dirrm   T   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)rK   zstr | os.PathLike | PathrL   zstr | MatchSpecrM   boolreturnzPrefixRecord | None)(__doc__
__future__r   rg   r^   loggingr   os.pathr   pathlibr   typingr   common.compatr	   	common.ior
   core.prefix_datar   gateways.loggingr   models.match_specr   models.recordsr   TEST_LOG_LEVELPYTHON_BINARYUNICODE_CHARACTERSUNICODE_CHARACTERS_RESTRICTEDwhich_or_where
cp_or_copy
env_or_setSPACER_CHARACTERr-   logr   r   rP   rK   rm   r,   r   r   <module>r      s    # 	 
      "   ) $ )- &L2  (  &GTV
 Ue
  # "  $
  	( &)ZZ (,r   