-=[ Mr. Bumblebee ]=-
_Indonesia_

Path : /usr/lib/python2.7/dist-packages/bzrlib/repofmt/
File Upload :
Current File : //usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyc


X`Oc@@s[ddlmZddlmZeedddlmZmZddlm	Z	m
Z
mZddlm
Z
mZmZmZmZddlmZdefd	YZd
efdYZdefd
YZdefdYZdefdYZdefdYZdefdYZde
fdYZe	jedS(i(tabsolute_import(tlazy_imports
import itertools

from bzrlib import (
    controldir,
    errors,
    knit as _mod_knit,
    lockable_files,
    lockdir,
    osutils,
    revision as _mod_revision,
    trace,
    transactions,
    versionedfile,
    xml5,
    xml6,
    xml7,
    )
(tneeds_read_locktneeds_write_lock(tInterRepositorytIsInWriteGroupErrortRepositoryFormatMetaDir(tInterSameDataRepositorytMetaDirVersionedFileRepositoryt$MetaDirVersionedFileRepositoryFormattVersionedFileCommitBuildertVersionedFileRootCommitBuilder(tsymbol_versioningt_KnitParentsProvidercB@s#eZdZdZdZRS(cC@s
||_dS(N(t_knit(tselftknit((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt__init__9scC@sd|jS(NsKnitParentsProvider(%r)(R(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt__repr__<scC@si}x|D]}|dkr.tdn|tjkrJd||<q
yt|jj|}Wntjk
rq
n"Xt	|dkrtjf}n|||<q
W|S(s/See graph.StackedParentsProvider.get_parent_maps!get_parent_map(None) is not validiN((
tNonet
ValueErrort
_mod_revisiont
NULL_REVISIONttupleRtget_parents_with_ghoststerrorstRevisionNotPresenttlen(Rtkeyst
parent_maptrevision_idtparents((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pytget_parent_map?s

(t__name__t
__module__RRR (((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR
7s		t_KnitsParentsProvidercB@s&eZddZdZdZRS(cC@s||_||_dS(s>Create a parent provider for string keys mapped to tuple keys.N(Rt_prefix(RRtprefix((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRVs	cC@sd|jS(NsKnitsParentsProvider(%r)(R(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR[scC@s|jjg|D]}|j|f^q}i}xe|jD]W\}}|d}t|dkrytjf}ntd|D}|||<qBWx*|D]"}|tjkrd||<qqW|S(s/See graph.StackedParentsProvider.get_parent_mapiics@s|]}|dVqdS(iN((t.0tparent((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pys	<genexpr>hs((RR R$titemsRRRR(RRtkeyRtresultRtrevidR((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR ^s	&

((R!R"RRR (((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR#Ts	tKnitRepositorycB@seZdZdZdZdZedZdZ	dZ
dZdZdZ
edZd	Zeded
ZdZRS(
sKnit format repository.cC@s;tt|j|||||_||_t|_dS(N(tsuperR,Rt_commit_builder_classt_serializertTruet_reconcile_fixes_text_parents(Rt_formatta_bzrdirt
control_filesR.R/((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRzs		cC@s$g|jjD]}|d^qS(s"See Repository.all_revision_ids().i(t	revisionsR(RR)((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_all_revision_idsscC@s|j}|jddy|jddWn!tjk
rP|jdnX|jdy|jdWntjk
rnX|jjj|jjdS(s8Put a replacement inventory.new into use as inventories.sinventory.new.kndxsinventory.kndxsinventory.new.knitsinventory.knitN(	t
_transporttcopyRt
NoSuchFiletdeletetinventoriest_indext_reset_cacheR(Rtt((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_activate_new_inventorys	
cC@s-|j}|jdd|jdddS(Nsinventory.kndxsinventory.backup.kndxsinventory.knitsinventory.backup.knit(R7R8(RR>((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_backup_inventorys	cC@s{|jjd}|jjjj|df}|jjjj|df}x&dD]}|j||||qUWdS(Ntknitss.knits.kndx(s.knits.kndx(R7tclonettextsR<t_mappertmapRtrename(Rtfrom_idtto_idR>tfrom_rel_urlt
to_rel_urltsuffix((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt
_move_file_ids

cC@sq|jjd}|jjjj|df}x:dD]2}y|j||Wq7tj	k
rhq7Xq7WdS(NRAs.kndxs.knit(s.kndxs.knit(
R7RBRCR<RDRERR:RR9(Rtfile_idR>trel_urlRK((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_remove_file_ids
cC@s/|jj|j|d}|jdg|S(Ns
inventory.newtA(RP(R2t_get_inventoriesR7R (RR*((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_temp_inventoriess	cC@stj|}|j|S(s/Return the Revision object for a named revision(tosutilstsafe_revision_idtget_revision_reconcile(RR((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pytget_revisionscC@se|jsdS|jr+t|n|jj|jrT|jjn
|jjdS(N(t	is_lockedtis_in_write_groupRR4t_finish_transactiontis_write_lockedt_set_write_transactiont_set_read_transaction(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt
_refresh_datas
cC@s0ddlm}||d|}|j|S(sReconcile this repository.i(tKnitReconcilertthorough(tbzrlib.reconcileR^t	reconcile(RtotherR_R^t
reconciler((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRas
cC@s
t|jS(N(R#R5(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_make_parents_providersN(R!R"t__doc__RR.R/RRR6R?R@RLRORRRVR]RtFalseRaRd(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR,ps									
tRepositoryFormatKnitcB@seZdZd
Zd
ZedZeZ	e
Ze
ZdZ
eZe
ZeZeZddZdZdZdZe
dZe
d
d	ZRS(sBzr repository knit format (generalized).

    This repository format has:
     - knits for file texts and inventory
     - hash subdirectory based stores.
     - knits for revisions and signatures
     - TextStores for revisions and signatures.
     - a format marker of its own
     - an optional 'shared-storage' flag
     - an optional 'no-working-trees' flag
     - a LockDir lock
    cC@stjS(N(txml5t
serializer_v5(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR/sttopologicalt	inventorycC@s[tj|}tj|||j|j|j}tj||}tj||dt	S(Nt	annotated(
t
versionedfiletConstantMappert	_mod_knitt
_KndxIndextget_transactionRZRWt_KnitKeyAccesstKnitVersionedFilesRf(Rtrepo_transporttrepotnametmappertindextaccess((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRQs
cC@satjd}tj|||j|j|j}tj||}tj||dddt	S(NR5tmax_delta_chainiRl(
RmRnRoRpRqRZRWRrRsRf(RRtRuRwRxRy((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_get_revisionsscC@satjd}tj|||j|j|j}tj||}tj||dddt	S(Nt
signaturesRziRl(
RmRnRoRpRqRZRWRrRsRf(RRtRuRwRxRy((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_get_signaturesscC@smtj}|jd}tj|||j|j|j}tj||}tj	||dddt
S(NRARziRl(RmtHashEscapedPrefixMapperRBRoRpRqRZRWRrRsR0(RRtRuRwtbase_transportRxRy((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt
_get_textssc
C@stjd|jjdg}g}d|jfg}|j||||||jd}tj	|dt
j}tj
}|jd|dt}	|	j|	jjd	g|	jjd
g|	jjdg|	j|j|	|||	S(sCreate a knit format 1 repository.

        :param a_bzrdir: bzrdir to contain the new repository; must already
            be initialized.
        :param shared: If true the repository will be initialized as a shared
                       repository.
        screating repository in %s.RAtformattlockR3t_foundRPN(RP(RP(RP(ttracetmuttert	transporttbasetget_format_stringt_upload_blank_contenttget_repository_transportRtlockable_filest
LockableFilestlockdirtLockDirttransactionstWriteTransactiontopenR0t
lock_writeR;R R5R|tunlockt_run_post_repo_init_hooks(
RR3tsharedtdirstfilest
utf8_filesRtR4ttransactionR*((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt
initialize!s"		

cC@s|stj|}n|dk	r-|}n|jd}tj|dtj}|jd|d|d|d|j	d|j
}|j|||_|j
|||_|j|||_|j|||_d|_||_|S(sSee RepositoryFormat.open().

        :param _override_transport: INTERNAL USE ONLY. Allows opening the
                                    repository at a slightly different url
                                    than normal. I.e. during 'upgrade'.
        RR2R3R4R.R/N(Rtfind_formatRRRRRRtrepository_classR.R/R{R5R}R|RQR;RRCt	chk_bytesR7(RR3Rt_override_transportRRtR4Ru((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR>s&					N(R!R"ReRRR.tpropertyR/R0tsupports_ghostsRftsupports_external_lookupst
supports_chkst_fetch_ordert_fetch_uses_deltastfast_deltastsupports_funky_characterst%revision_graph_can_have_wrong_parentsRQR{R}RRR(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRgs$				tRepositoryFormatKnit1cB@sJeZdZeZeZedZdZ	e
dZdZRS(sBzr repository knit format 1.

    This repository format has:
     - knits for file texts and inventory
     - hash subdirectory based stores.
     - knits for revisions and signatures
     - TextStores for revisions and signatures.
     - a format marker of its own
     - an optional 'shared-storage' flag
     - an optional 'no-working-trees' flag
     - a LockDir lock

    This format was introduced in bzr 0.8.
    cC@stjS(N(RhRi(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR/mscC@s|j|jk	S(N(t	__class__(RRb((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt__ne__qscC@sdS(s)See RepositoryFormat.get_format_string().s"Bazaar-NG Knit Repository Format 1((tcls((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRtscC@sdS(s.See RepositoryFormat.get_format_description().sKnit repository format 1((R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pytget_format_descriptionys(
R!R"ReR,RR
R.RR/RtclassmethodRR(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR[s	tRepositoryFormatKnit3cB@steZdZeZeZeZeZ	eZ
edZdZ
dZee
eZedZdZRS(sBzr repository knit format 3.

    This repository format has:
     - knits for file texts and inventory
     - hash subdirectory based stores.
     - knits for revisions and signatures
     - TextStores for revisions and signatures.
     - a format marker of its own
     - an optional 'shared-storage' flag
     - an optional 'no-working-trees' flag
     - a LockDir lock
     - support for recording full info about the tree root
     - support for recording tree-references
    cC@stjS(N(txml7t
serializer_v7(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR/scC@stjjdS(Nsdirstate-with-subtree(t
controldirtformat_registrytmake_bzrdir(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_get_matching_bzrdirscC@sdS(N((RR((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_ignore_setting_bzrdirscC@sdS(s)See RepositoryFormat.get_format_string().s+Bazaar Knit Repository Format 3 (bzr 0.15)
((R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRscC@sdS(s.See RepositoryFormat.get_format_description().sKnit repository format 3((R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRs(R!R"ReR,RRR.R0trich_root_datatexperimentaltsupports_tree_referenceRR/RRt_matchingbzrdirRRR(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR~s		tRepositoryFormatKnit4cB@sneZdZeZeZeZe	Z
edZdZ
dZee
eZedZdZRS(sBzr repository knit format 4.

    This repository format has everything in format 3, except for
    tree-references:
     - knits for file texts and inventory
     - hash subdirectory based stores.
     - knits for revisions and signatures
     - TextStores for revisions and signatures.
     - a format marker of its own
     - an optional 'shared-storage' flag
     - an optional 'no-working-trees' flag
     - a LockDir lock
     - support for recording full info about the tree root
    cC@stjS(N(txml6t
serializer_v6(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyR/scC@stjjdS(Ns	rich-root(RRR(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRscC@sdS(N((RR((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRscC@sdS(s)See RepositoryFormat.get_format_string().s*Bazaar Knit Repository Format 4 (bzr 1.0)
((R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRscC@sdS(s.See RepositoryFormat.get_format_description().sKnit repository format 4((R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRs(R!R"ReR,RRR.R0RRfRRR/RRRRRR(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRs		t
InterKnitRepocB@sGeZdZedZedZeeddddZ
RS(s5Optimised code paths between Knit based repositories.cC@stS(N(R(R((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt_get_repo_format_to_testscC@sSy(t|jto$t|jt}Wntk
r<tSX|oRtj||S(sBe compatible with known Knit formats.

        We don't test for the stores being of specific types because that
        could lead to confusing results, and there is no need to be
        overly general.
        (t
isinstanceR2RgtAttributeErrorRfRt_same_model(tsourcettargett	are_knits((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt
is_compatibles
cC@s|j||}t|jj}|j|}t|jj|}|j|}	|dk	rr|	}
nt|jj|	}
|dk	r|jj	j
|
}ttj||}
n|jj
|
S(s2See InterRepository.search_missing_revision_ids().N(t_present_source_revisions_fortsetRtall_revision_idstintersectiont _eliminate_revisions_not_presentt
differenceRRt	get_graphtiter_topo_ordert	itertoolstislicetrevision_ids_to_search_result(Rtfind_ghoststrevision_idstif_present_idstlimittsource_ids_sett
target_idstpossibly_present_revisionstactually_present_revisionstrequired_revisionst
result_setttopo_ordered((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pytsearch_missing_revision_idss	N(R!R"ReRRtstaticmethodRRR0RR(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyRs	N(t
__future__Rtbzrlib.lazy_importRtglobalstbzrlib.decoratorsRRtbzrlib.repositoryRRRtbzrlib.vf_repositoryRRR	R
RtbzrlibRtobjectR
R#R,RgRRRRtregister_optimiser(((s;/usr/lib/python2.7/dist-packages/bzrlib/repofmt/knitrepo.pyt<module>s 	(i#+*7

Copyright © 2017 || Recoded By Mr.Bumblebee