/usr/local/lib/python3.9/site-packages/django/core/management/commands/__pycache__
a Ӱ�hh � @ s� d dl Z d dlZd dlmZ d dlmZmZ d dlmZ d dl m Z d dlmZ d dl mZ d dlmZ d d lmZ d d lmZ G dd� de�ZdS ) � N)�apps)�BaseCommand�CommandError)�run_formatters)� migrations)�AmbiguityError)�MigrationLoader)�MigrationOptimizer)�MigrationWriter)�get_docs_versionc @ s e Zd ZdZdd� Zdd� ZdS )�Commandz1Optimizes the operations for the named migration.c C s0 |j ddd� |j ddd� |j dddd � d S ) N� app_labelz;App label of the application to optimize the migration for.)�help�migration_namez.Migration name to optimize the operations for.z--check� store_truez>Exit with a non-zero status if the migration can be optimized.)�actionr )�add_argument)�self�parser� r �[/usr/local/lib/python3.9/site-packages/django/core/management/commands/optimizemigration.py� add_arguments s ���zCommand.add_argumentsc O s� |d }|d }|d }|d }zt �|� W n0 ty^ } ztt|���W Y d }~n d }~0 0 td �}||jvr�td|� d���z|�||�} W nN ty� td|� d|� d ���Y n( t y� td |� d|� d���Y n0 t � } | �| j| j �}t| j�t|�k�r&|d k�r"| j�d� d S |d k�rN| j�dt| j�t|�f � |�r^t�d� || _t| �}|�� } |j�r| j�r�tdt� ��tdtjf| j|| j | jfgd��}d| j }|||�}t|�}|�� } |d k�r| j�| j�d�d � t� d��r| j�| j�!d�� t"|j#ddd��}|�| � W d � n1 �sN0 Y t$|j#g� |d k�r�| j�| j�d|j#� ��� d S )N� verbosityr r �checkzApp 'z' does not have migrations.z!More than one migration matches 'z ' in app 'z'. Please be more specific.z"Cannot find a migration matching 'z' from app 'z'.r zNo optimizations possible.z/Optimizing from %d operations to %d operations.� z�Migration will require manual porting but is already a squashed migration. Transition to a normal migration first: https://docs.djangoproject.com/en/%s/topics/migrations/#squashing-migrations� Migration)�dependencies� operations�replacesz%s_optimizedzManual porting requiredz� Your migrations contained functions that must be manually copied over, as we could not safely copy their implementation. See the comment at the top of the optimized migration for details.�blackz^Optimized migration couldn't be formatted using the "black" command. You can call it manually.�wzutf-8)�encodingzOptimized migration )%r Zget_app_config�LookupErrorr �strr Z migrated_appsZget_migration_by_prefixr �KeyErrorr �optimizer r �len�stdout�write�sys�exitr � as_stringZneeds_manual_portingr r �typer r r �name�styleZMIGRATE_HEADING�shutil�which�WARNING�open�pathr )r �args�optionsr r r r �err�loaderZ migrationZ optimizerZnew_operations�writerZmigration_file_string�subclassZoptimized_migration_nameZoptimized_migration�fhr r r �handle s� " ���� �� ���� ���* �zCommand.handleN)�__name__� __module__�__qualname__r r r; r r r r r s r )r/ r) Zdjango.appsr Zdjango.core.management.baser r Zdjango.core.management.utilsr Z django.dbr Zdjango.db.migrations.exceptionsr Zdjango.db.migrations.loaderr Zdjango.db.migrations.optimizerr Zdjango.db.migrations.writerr Zdjango.utils.versionr r r r r r �<module> s
.
Edit
..
Edit
__init__.cpython-39.pyc
Edit
check.cpython-39.pyc
Edit
compilemessages.cpython-39.pyc
Edit
createcachetable.cpython-39.pyc
Edit
dbshell.cpython-39.pyc
Edit
diffsettings.cpython-39.pyc
Edit
dumpdata.cpython-39.pyc
Edit
flush.cpython-39.pyc
Edit
inspectdb.cpython-39.pyc
Edit
loaddata.cpython-39.pyc
Edit
makemessages.cpython-39.pyc
Edit
makemigrations.cpython-39.pyc
Edit
migrate.cpython-39.pyc
Edit
optimizemigration.cpython-39.pyc
Edit
runserver.cpython-39.pyc
Edit
sendtestemail.cpython-39.pyc
Edit
shell.cpython-39.pyc
Edit
showmigrations.cpython-39.pyc
Edit
sqlflush.cpython-39.pyc
Edit
sqlmigrate.cpython-39.pyc
Edit
sqlsequencereset.cpython-39.pyc
Edit
squashmigrations.cpython-39.pyc
Edit
startapp.cpython-39.pyc
Edit
startproject.cpython-39.pyc
Edit
test.cpython-39.pyc
Edit
testserver.cpython-39.pyc
Edit