%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/python37/lib/python3.7/site-packages/alembic/__pycache__/
Upload File :
Create Path :
Current File : //opt/alt/python37/lib/python3.7/site-packages/alembic/__pycache__/command.cpython-37.pyc

B

�M!V	-�	@s�ddlZddlmZddlmZddlmZddlmZdd�Z	d$d
d�Z
d%dd�Zd&dd�Zd'dd�Z
d(dd�Zdd�Zd)dd�Zd*dd�Zd+dd�Zd,dd�Zd-d d!�Zd"d#�ZdS).�N�)�ScriptDirectory)�EnvironmentContext)�util)�autogeneratec
Cst|�d�xPt�|���D]>}ttj�|��|d���}t|�}WdQRX|�d||�qW|�d�|�d�dS)zList available templateszAvailable templates:
ZREADMENz%s - %sz1
Templates are used via the 'init' command, e.g.:z,
  alembic init --template generic ./scripts)�print_stdout�os�listdir�get_template_directory�open�path�join�next)�configZtempnameZreadmeZsynopsis�r�/command.py�list_templates	s


r�genericc
Cs8t�|tj�rt�d|��tj�|��|�}t�|tj�sJt�d|��t�dtj�	|�tj
|�tj�|d�}t�dtj�	|�tj
|�t|�}x�t�|�D]~}tj�||�}|dkr�tj�	|j
�}t�|tj�r�t�d|�n|j|||d�q�tj�|�r�tj�||�}	|�||	�q�Wt�d|�d	S)
z#Initialize a new scripts directory.zDirectory %s already existszNo such template %rzCreating directory %s�versionszalembic.ini.makoz File %s already exists, skipping)Zscript_locationzNPlease edit configuration/connection/logging settings in %r before proceeding.N)r�access�F_OKr�CommandErrorrr
r
Zstatus�abspath�makedirsrr	Zconfig_file_name�msgZ_generate_template�isfileZ
_copy_file)
rZ	directory�templateZtemplate_dirr�scriptZfile_Z	file_pathZconfig_fileZoutput_filerrr�inits:



rF�headc
s�t�|�}
t|||||||||	d�	}t�||
|��t�|�d��}|rfd}|rXt�d���fdd�}
n |rx�fdd�}
n|r�t�d��|r�t	||
|
|�j
�d	��|
��Wd
QRXdd����D�}t
|�d
kr�|dS|Sd
S)zCreate a new revision file.)	�messager�sqlr�splice�branch_label�version_path�rev_id�
depends_onZrevision_environmentTz7Using --sql with --autogenerate does not make any sensecs��||�gS)N)Zrun_autogenerate)�rev�context)�revision_contextrr�retrieve_migrations`sz%revision.<locals>.retrieve_migrationscs��||�gS)N)Zrun_no_autogenerate)r'r()r)rrr*dsziUsing --sql with the revision command when revision_environment is not configured does not make any sense)�fn�as_sql�
template_argsr)NcSsg|]}|�qSrr)�.0rrrr�
<listcomp>xszrevision.<locals>.<listcomp>rr)r�from_config�dict�autogenZRevisionContextrZasboolZget_main_optionrrr-�run_envZgenerate_scripts�len)rr rr!rr"r#r$r%r&Zscript_directoryZcommand_argsZenvironmentr*Zscriptsr)r)r�revisionDsF


r5cCs6t�|�}d|i}|j|p t��|fd||d�|��S)z�Merge two revisions together.  Creates a new migration file.

    .. versionadded:: 0.7.0

    .. seealso::

        :ref:`branches`

    rT)ZrefreshrZ
branch_labels)rr0Zgenerate_revisionrr%)rZ	revisionsr r#r%rr-rrr�merge�s
r6c	spt�|��d}d�kr4|s$t�d����dd�\}���fdd�}t|�|||�|d�����WdQRXdS)zUpgrade to a later version.N�:zRange revision not allowed�cs���|�S)N)Z
_upgrade_revs)r'r()r5rrr�upgrade�szupgrade.<locals>.upgrade)r+r,�starting_rev�destination_rev�tag)rr0rr�splitrr3)rr5r!r<r:r9r)r5rrr9�s 


r9c	s�t�|��d}d�kr6|s$t�d����dd�\}�n|rDt�d����fdd�}t|�|||�|d�����WdQRXdS)	zRevert to a previous version.Nr7zRange revision not allowedr8z/downgrade with --sql requires <fromrev>:<torev>cs���|�S)N)Z_downgrade_revs)r'r()r5rrr�	downgrade�szdowngrade.<locals>.downgrade)r+r,r:r;r<)rr0rrr=rr3)rr5r!r<r:r>r)r5rrr>�s&


r>c	sht����|dkrD��fdd�}t��|d�����WdQRXn x��|�D]}��|j�qPWdS)z1Show the revision(s) denoted by the given symbol.�currentcs$x��|�D]}��|j�qWgS)N)�
get_revisionsr�	log_entry)r'r(�sc)rrrr�show_current�szshow.<locals>.show_current)r+N)rr0rr3r@rrA)rr'rCrBr)rrr�show�s

rDcs�t�|�}|dk	r8d|kr$t�d��|���d�\}}nd}}�fdd��d�fdd�	}|dkrr||||d	�n&|dkr�||||d
�n�||||�dS)z.List changeset scripts in chronological order.Nr7z9History range requires [start]:[end], [start]:, or :[end]c	s<x6|j|pd|pdd�D]}|�|j�dddd��qWdS)N�base�heads)rErT)�verbose�include_branches�include_docZinclude_parents)�walk_revisionsr�
cmd_format)rrrErrB)rGrr�_display_history�sz!history.<locals>._display_historyc	s:�����fdd�}t��|d�����WdQRXdS)Ncs2�dkr����|�n�dkr.���|��gS)Nr)r'r()rLrErrrrr�_display_current_history�s
zMhistory.<locals>._display_history_w_current.<locals>._display_current_history)r+)rr3)rrrErrM)rL)rErrrr�_display_history_w_current�s
z+history.<locals>._display_history_w_currentr?)r)rE)NN)rr0rr�stripr=)rZ	rev_rangerGrrErrNr)rLrGr�history�s
	rPcCsPt�|�}|r|�d�}n|�|���}x"|D]}|�|j|ddd��q.WdS)z4Show current available heads in the script directoryrFTF)rHZtree_indicatorsN)rr0r@Z	get_headsrrK)rrGZresolve_dependenciesrrFr'rrrrFs

rFcsdt�|��xT���D]H��jr|�d�j�dd�d���fdd��fdd��jD�D���qWdS)	zShow current branch pointsz%s
%s
T)rH�
c3s4|],}ddtt�j��|jdd�d�fVqdS)z%s -> %s� FT)rHrIN)r4�strr5rK)r.Zrev_obj)rBrGrr�	<genexpr>'szbranches.<locals>.<genexpr>c3s|]}��|�VqdS)N)Zget_revision)r.r')rrrrT,sN)rr0rJZis_branch_pointrrKr
Znextrev)rrGr)rBrrGr�branchess
rUc	sNt����|rt�d����fdd�}t��|d�����WdQRXdS)z,Display the current revision for a database.z--head-only is deprecatedcsD�r��dt�|jjj��x"��|�D]}��|����q(WgS)NzCurrent revision(s) for %s:)rrZobfuscate_url_pwZ
connectionZengineZurlr@rK)r'r()rrrGrr�display_version9sz current.<locals>.display_version)r+N)rr0r�warnrr3)rrGZ	head_onlyrVr)rrrGrr?1s



r?c	spt�|��d}d�kr4|s$t�d����dd�\}���fdd�}t|�||�||d�����WdQRXdS)zQ'stamp' the revision table with the given revision; don't
    run any migrations.Nr7zRange revision not allowedr8cs���|�S)N)Z_stamp_revs)r'r()r5rrr�do_stampWszstamp.<locals>.do_stamp)r+r,r;r:r<)rr0rrr=rr3)rr5r!r<r:rXr)r5rr�stampKs 


rYc	s|t�|��|dkrB�fdd�}t|�|d�����WdQRXn6��|�}|s^t�d|��x|D]}t�|j�qdWdS)z%Edit revision script(s) using $EDITORr?cs2|st�d��x��|�D]}t�|j�qWgS)NzNo current revisions)rrr@�editr)r'r(rB)rrr�edit_currentls

zedit.<locals>.edit_current)r+Nz*No revision files indicated by symbol '%s')	rr0rr3r@rrrZr)rr'r[ZrevsrBr)rrrZfs




rZ)r)	NFFrFNNNN)NNN)FN)FN)NF)FF)F)FF)FN)rrrZruntime.environmentr�rrr2rrr5r6r9r>rDrPrFrUr?rYrZrrrr�<module>s&
,
:



-





Zerion Mini Shell 1.0