o
    uvXjó  ã                   @   sX   d dl Z d dlZd dlmZ d dlmZ d dlmZm	Z	 d dl
mZ G dd„ deƒZdS )é    N)Újoin)Úsettings)ÚBaseCommandÚCommandError)Úsignalcommandc                   @   s(   e Zd ZdZdZdd„ Zedd„ ƒZdS )ÚCommandz<Removes all python bytecode compiled files from the project.Fc              	   C   s0   |j dddddddd� |j d	d
dddd� d S )Nz
--optimizez-oz-OÚ
store_trueÚoptimizeFz&Remove optimized python bytecode files)ÚactionÚdestÚdefaultÚhelpz--pathz-pÚstoreÚpathzSpecify path to recurse into)r
   r   r   )Úadd_argument)ÚselfÚparser© r   úl/var/www/html/myproject/venv/lib/python3.10/site-packages/django_extensions/management/commands/clean_pyc.pyÚadd_arguments   s   ý
þzCommand.add_argumentsc                 O   s    |  dttdd ƒ¡}|sttdd ƒ}|d }|stdƒ‚|d r"dp#d}t |¡D ]$\}}}t ||¡D ]}	t||	ƒ}
|dkrG| j	 
d	|
 ¡ t |
¡ q4q)d S )
Nr   ÚBASE_DIRÚ	verbosityz=No --path specified and settings.py does not contain BASE_DIRr	   z*.py[co]z*.pycé   z%s
)ÚgetÚgetattrr   r   ÚosÚwalkÚfnmatchÚfilterÚ_jÚstdoutÚwriteÚremove)r   ÚargsÚoptionsÚproject_rootr   ÚextsÚrootÚdirsÚ	filenamesÚfilenameÚ	full_pathr   r   r   Úhandle   s   
üÿzCommand.handleN)Ú__name__Ú
__module__Ú__qualname__r   Úrequires_system_checksr   r   r,   r   r   r   r   r      s    r   )r   r   Úos.pathr   r   Údjango.confr   Údjango.core.management.baser   r   Ú"django_extensions.management.utilsr   r   r   r   r   r   Ú<module>   s   