
    ϶vg                        d dl mZ d dlZd dlZd dlmZmZ ddlmZ ddl	m
Z
 d dlmc mZ  G d dej                  ZdS )	    )annotationsN)productstarmap   )StrPath)Distributionc                  |    e Zd ZU dZded<   ddZd Zd Zed	             Z	d
 Z
ed             Z	 	 	 	 dddZd ZdS ) install_libz9Don't add compiled flags to filenames of non-Python filesr   distributionreturnNonec                    |                                   |                                 }||                     |           d S d S N)buildinstallbyte_compile)selfoutfiless     [/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/setuptools/command/install_lib.pyrunzinstall_lib.run   sD    

<<>>h'''''      c                      fd                                  D             }t          |                                           }t          t	           j        |                    S )z
        Return a collections.Sized collections.Container of paths to be
        excluded for single_version_externally_managed installations.
        c              3  L   K   | ]}                     |          D ]}|V  d S r   )_all_packages).0ns_pkgpkgr   s      r   	<genexpr>z-install_lib.get_exclusions.<locals>.<genexpr>   s\       
 
))&11
 
  
 
 
 
 
 
 
r   )_get_SVEM_NSPsr   _gen_exclusion_pathssetr   _exclude_pkg_path)r   all_packages
excl_specss   `  r   get_exclusionszinstall_lib.get_exclusions   so    

 
 
 
--//
 
 
 \4+D+D+F+FGG
741:>>???r   c                l    |                     d          |gz   }t          j        j        | j        g|R  S )zw
        Given a package name and exclusion path within that package,
        compute the full exclusion path.
        .)splitospathjoininstall_dir)r   r   exclusion_pathpartss       r   r"   zinstall_lib._exclude_pkg_path'   s8    
 		#.!11w|D,5u5555r   c              #  P   K   | r!| V  |                      d          \  } }}| dS dS )zn
        >>> list(install_lib._all_packages('foo.bar.baz'))
        ['foo.bar.baz', 'foo.bar', 'foo']
        r'   N)
rpartition)pkg_name_sep_childs      r   r   zinstall_lib._all_packages/   sQ        	>NNN%-%8%8%=%="HdF  	> 	> 	> 	> 	>r   c                v    | j         j        sg S |                     d          }|j        }|r| j         j        ng S )z
        Get namespace packages (list) but only for
        single_version_externally_managed installations and empty otherwise.
        r   )r   namespace_packagesget_finalized_command!single_version_externally_managed)r   install_cmdsvems      r   r   zinstall_lib._get_SVEM_NSPs9   sH      3 	I00;;<7;Ct 33Cr   c               #     K   dV  dV  dV  t          t          d          sdS t          j                            ddt          j        j        z             } | dz   V  | d	z   V  | d
z   V  | dz   V  dS )zk
        Generate file paths to be excluded for namespace packages (bytecode
        cache files).
        z__init__.pyz__init__.pycz__init__.pyoimplementationN__pycache__z	__init__.z.pycz.pyoz
.opt-1.pycz
.opt-2.pyc)hasattrsysr)   r*   r+   r;   	cache_tag)bases    r   r    z install_lib._gen_exclusion_pathsI   s       s,-- 	Fw||M;9K9U+UVVVmVm\!!!!\!!!!!!r   TF   infiler   outfilestrpreserve_modeboolpreserve_timespreserve_symlinkslevelobject	list[str]c                   	
 |sJ |sJ |rJ |                                  		s!t          j                            | ||          S ddlm} ddlm
 g d	
fd} ||||           S )	Nr   )unpack_directory)logsrcrD   dstc                    |v r                     d|           dS                     d| t          j                            |                                         |           |S )Nz/Skipping installation of %s (namespace package)Fzcopying %s -> %s)warninfor)   r*   dirnameappend)rO   rP   excluderN   r   s     r   pfz!install_lib.copy_tree.<locals>.pfx   sb    g~~JCPPPuHH'bgooc.B.BCCCOOC   Jr   )rO   rD   rP   rD   )r%   origr
   	copy_treesetuptools.archive_utilrM   	distutilsrN   )r   rB   rC   rE   rG   rH   rI   rM   rW   rV   rN   r   s            @@@r   rY   zinstall_lib.copy_tree^   s     $$$$%%'' 	E#--dFGDDD 	=<<<<<!!!!!! 	 	 	 	 	 	 	 	 	"---r   c                    t           j                            |           }|                                 rfd|D             S |S )Nc                    g | ]}|v|	S  r^   )r   frV   s     r   
<listcomp>z+install_lib.get_outputs.<locals>.<listcomp>   s#    ;;;!!7*:*:A*:*:*:r   )rX   r
   get_outputsr%   )r   outputsrV   s     @r   ra   zinstall_lib.get_outputs   sQ    "..t44%%'' 	<;;;;w;;;;r   N)r   r   )TTFrA   )rB   r   rC   rD   rE   rF   rG   rF   rH   rF   rI   rJ   r   rK   )__name__
__module____qualname____doc____annotations__r   r%   r"   staticmethodr   r   r    rY   ra   r^   r   r   r
   r
      s         CC( ( ( (@ @ @6 6 6 > > \>D D D  " " \"2 ##"'$ $ $ $ $L    r   r
   )
__future__r   r)   r>   	itertoolsr   r   _pathr   distr   distutils.command.install_libcommandr
   rX   r^   r   r   <module>ro      s    " " " " " " 				 



 & & & & & & & &             , , , , , , , , ,| | | | |$" | | | | |r   