HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: //usr/lib/python2.7/dist-packages/hgext/journal.pyc
ó
ÛXc@@sÖdZddlmZddlZddlZddlZddlZddlmZddl	m
Z
mZmZm
Z
mZmZmZmZmZmZmZddlmZiZejeƒZdZdZd	Zd
Zieje6Zd„Zd„Z d
„Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd„Z(dej)ddƒfd„ƒYZ*de+fd„ƒYZ,d&Z-edd'd(ggej/D]Z0e0de-kr e0^q d$ƒd%„ƒZ1dS()s¡Track previous positions of bookmarks (EXPERIMENTAL)

This extension adds a new command: `hg journal`, which shows you where
bookmarks were previously located.

i(tabsolute_importN(t_(t	bookmarkstcmdutiltcommandstdispatchterrort
extensionsthgt	localrepotlocktnodetutili(tsharesships-with-hg-coretbookmarkt
wdirparentcC@sltjtdtƒtjtjdtƒtjtjj	dt
ƒtjtdtƒtjtdt
ƒdS(Nt
runcommandt_writetfunct	postsharet	copystore(RtwrapfunctionRRRtbmstoretrecordbookmarksR	tlocalrepositorytdirstatetwrapdirstateRt
wrappostsharetunsharejournal(tui((s1/usr/lib/python2.7/dist-packages/hgext/journal.pytextsetup=scC@s"|jƒrt|ƒ|_ndS(N(tlocaltjournalstoragetjournal(Rtrepo((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt	reposetupEscG@s#tj|Œ||||||ŒS(s;Track the command line options for recording in the journal(R t
recordcommand(torigtluiR"tcmdtfullargstargs((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyRIs
cC@sA||ƒ}tj|dƒr=|j|_|jdtƒn|S(s5Make journal storage available to the dirstate objectR!(RtsafehasattrR!R taddparentchangecallbacktrecorddirstateparents(R%R"R((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyROs
cC@st|ƒ}t|ƒ}tj|dƒrŒ|dtjkrG|d n|}|dtjkrj|d n|}|jjtd||ƒndS(s3Records all dirstate parent changes in the journal.R it.N(tlistRR*RtnullidR trecordtwdirparenttype(Rtoldtnewt	oldhashest	newhashes((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR,Ws##	cC@s”|j}tj|dƒr‡tj|ƒ}xZ|jƒD]I\}}|j|tjƒ}||kr7|j	j
t|||ƒq7q7Wn|||ƒS(s,Records all bookmark changes in the journal.R!(t_repoRR*RRt	iteritemstgetRR/R!R0tbookmarktype(R%tstoretfpR"toldmarkstmarktvaluetoldvalue((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyRcs	#cC@sVy t|jjdƒjƒƒSWn/tk
rQ}|jtjkrJ‚ntƒSXdS(s,A set of shared features for this repositorytsharedN(tsettvfstreadt
splitlinestIOErrorterrnotENOENT(R"tinst((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt_readsharedfeaturesos co@sé|jdtƒ}g|D]}t|ƒ^q}i}xKt|ƒD]=\}}yt|ƒ||g||<WqDtk
r€qDXqDWx]|rä||jƒƒ\}}}|Vyt|ƒ||d<Wqˆtk
rà||=qˆXqˆWdS(s‹Given a set of sorted iterables, yield the next entry in merged order

    Note that by default entries go from most recent to oldest.
    torderiN(tpoptmaxtitert	enumeratetnextt
StopIterationt
itervalues(t	iterablestkwargsRJtittiterable_maptkeyR>((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt_mergeentriesiterxs
	
c
K@sO|jƒ=|||||jddƒ}|jdƒWdQXWdQXdS(s<Mark this shared working copy as sharing journal informationR@tasjournal
N(twlockRBtwrite(R%t
sourcerepotdestrepoRSR;((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR”s
c
@s3|j|kr#|jƒr#tj|dƒr#tj|ƒ}t|ƒ‰|r#ˆtdgƒkr#|jj	dƒr›|j
dƒ}tj||dƒn|j}|j
|jdddtƒ}‡fd†|j
|jdtƒDƒ}x3t||dtƒD]}	|j|j|	ƒqWq#n||||ƒS(	s9Copy shared journal entries into this repo when unsharingR!tnamejournals.baktfilenamesnamejournal.bakt_newestfirstc3@s-|]#}tj|jƒˆkr|VqdS(N(tsharednamespacesR8t	namespace(t.0te(tsharedfeatures(s1/usr/lib/python2.7/dist-packages/hgext/journal.pys	<genexpr>¬sRJ(tpathR@RR*R
t_getsrcrepoRIRARBtexiststjointrenameR!t_opentFalseRWtminR(
R%RR"trepopatht
sharedrepotjournalpathtstorageRR@tentry((Rds1/usr/lib/python2.7/dist-packages/hgext/journal.pyR›s	(tjournalentryujournalentryu9timestamp user command namespace name oldhashes newhashescB@s&eZdZed„ƒZd„ZRS(s¬Individual journal entry

    * timestamp: a mercurial (time, timezone) tuple
    * user: the username that ran the command
    * namespace: the entry namespace, an opaque string
    * name: the name of the changed item, opaque string with meaning in the
      namespace
    * command: the hg command that triggered this record
    * oldhashes: a tuple of one or more binary hashes for the old location
    * newhashes: a tuple of one or more binary hashes for the new location

    Handles serialisation from and to the storage format. Fields are
    separated by newlines, hashes are written out in hex separated by commas,
    timestamp and timezone are separated by a space.

    cC@s¯|jdƒ\}}}}}}}|jƒ\}	}
t|	ƒt|
ƒ}	}
td„|jdƒDƒƒ}td„|jdƒDƒƒ}||	|
f||||||ƒS(Ns
cs@s|]}tj|ƒVqdS(N(Rtbin(Rbthash((s1/usr/lib/python2.7/dist-packages/hgext/journal.pys	<genexpr>Ìst,cs@s|]}tj|ƒVqdS(N(RRs(RbRt((s1/usr/lib/python2.7/dist-packages/hgext/journal.pys	<genexpr>Ís(tsplittfloattintttuple(tclstlinettimetusertcommandRatnameR4R5t	timestampttz((s1/usr/lib/python2.7/dist-packages/hgext/journal.pytfromstorageÆs$cC@s¥djtt|jƒƒ}djg|jD]}tj|ƒ^q+ƒ}djg|jD]}tj|ƒ^qYƒ}dj||j|j	|j
|j||fƒS(s!String representation for storaget Rus
(RhtmaptstrR€R4RthexR5R}R~RaR(tselfR|RtR4R5((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt__str__Òs..(t__name__t
__module__t__doc__tclassmethodR‚Rˆ(((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyRr³sR cB@sŒeZdZdZd
Zd„Zed„ƒZe	d„ƒZ
d„Zd„Zd„Z
d„Zd
d
d„Zd	„Zd
ed„ZRS(seStorage for journal entries

    Entries are divided over two files; one with entries that pertain to the
    local working copy *only*, and one with entries that are shared across
    multiple working copies when shared using the share extension.

    Entries are stored with NUL bytes as separators. See the journalentry
    class for the per-entry structure.

    The file format starts with an integer version, delimited by a NUL.

    This storage uses a dedicated lock; this makes it easier to avoid issues
    with adding entries that added when the regular wlock is unlocked (e.g.
    the dirstate).

    cC@s•tjƒ|_|j|_|j|_d|_|_|jƒr‘t	|ƒ}t
j|ƒ}|dk	r‘d|kr‘|j|_||_q‘ndS(NR!(RtgetuserR}RRBtNoneRdt	sharedvfsR@RIR
Rf(R‡R"tfeaturesRn((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt__init__ïscC@sHdjttjtjƒƒ}d|krD|jdƒdd}n|S(NRƒs
is ...(RhR„Rt
shellquoteR t_currentcommandt	partition(R‡t
commandstr((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR~þs
cG@s
||_dS(s:Set the current hg arguments, stored with recorded entriesN(R“(RzR(((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR$scC@s7|dkrdS|ƒ}|dks/|jr3dS|S(soReturns the lock if it's held, or None if it's not.

        (This is copied from the localrepo class)
        N(RŽtheld(R‡tlockreftl((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt_currentlocks	cC@s|j|jƒdk	r0tjtdƒƒ‚ntdƒ|j}ytj|ddd|ƒ}Wn‰tjk
rí}|j	j
tdƒ||jfƒtj|dt|j	j
ddd	ƒƒd|ƒ}|j	j
td
ƒ|jƒnXtj|ƒ|_|S(s"Create a lock for the journal files%journal lock does not support nestings
journal of %ssnamejournal.lockitdescs"waiting for lock on %s held by %r
Rttimeoutt600sgot lock after %s seconds
N(R™t_lockrefRŽRtAbortRtbaseR
tLockHeldRtwarntlockerRxtconfigtdelaytweakreftref(R‡RBRšR˜RH((s1/usr/lib/python2.7/dist-packages/hgext/journal.pytjlocks	'!cC@s³t|tƒs|g}nt|tƒs6|g}nttjƒ|j|j||||ƒ}|j}|jdk	rŸt
j|ƒ|jkrŸ|j}qŸn|j
||ƒdS(sÊRecord a new journal entry

        * namespace: an opaque string; this can be used to filter on the type
          of recorded entries.
        * name: the name defining this entry; for bookmarks, this is the
          bookmark name. Can be filtered on when retrieving entries.
        * oldhashes and newhashes: each a single binary hash, or a list of
          binary hashes. These represent the old and new position of the named
          item.

        N(t
isinstanceR.RrRtmakedateR}R~RBRRŽR`R8RdR(R‡RaRR4R5RqRB((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR0,s	cC@sð|j|ƒÛd}|ddddtƒ¶}|jdtjƒ|jdƒjdƒd}|r–|tt	ƒkr–|j
jtdƒ|ƒdS|s¶|j
tt	ƒdƒn|jdtjƒ|j
t|ƒdƒWdQXWdQXdS(	NR]tmodesa+bt
atomictempiiss&unsupported journal file version '%s'
(R§RŽtTruetseektostSEEK_SETRCR”R…tstorageversionRR¡RRZtSEEK_END(R‡RBRqtversiontf((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyRJs	cc@s¢|dk	r"tj|ƒd}n|dk	rDtj|ƒd}nxW|D]O}|dk	rs||jƒrsqKn|dk	r•||jƒr•qKn|VqKWdS(sUYield all journal entries with the given namespace or name

        Both the namespace and the name are optional; if neither is given all
        entries in the journal are produced.

        Matching supports regular expressions by using the `re:` prefix
        (use `literal:` to match names or namespaces that start with `re:`)

        iÿÿÿÿN(RŽRt
stringmatcherRaR(R‡RaRRq((s1/usr/lib/python2.7/dist-packages/hgext/journal.pytfilteredas

c@sTˆjˆjƒ}ˆjdkr%|S‡fd†ˆjˆjƒDƒ}t||ƒS(slIterate over the storage

        Yields journalentry instances for each contained journal record.

        c3@s0|]&}tj|jƒˆjkr|VqdS(N(R`R8RaRd(RbRc(R‡(s1/usr/lib/python2.7/dist-packages/hgext/journal.pys	<genexpr>„sN(RjRBRRŽRW(R‡RR@((R‡s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt__iter__vs
"R]c	c@sá|j|ƒsdS||ƒ}|jƒ}WdQX|jdƒ}|oP|d}|ttƒkr“|pttdƒ}tjtdƒ|ƒ‚n|d}|r²t|ƒ}nx(|D] }|sËq¹nt	j
|ƒVq¹WdS(Nsis
not availables!unknown journal file version '%s'i(RgRCRvR…R°RRRžtreversedRrR‚(	R‡RBR^R_R³trawtlinesR²R{((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyRjˆs 

(N(R‰RŠR‹R“RŽRR‘tpropertyR~RŒR$R™R§R0RRµR¶R¬Rj(((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR Ûs							s	no-mergestgraphR!ttallsshow history for all namestctcommitssshow commit metadatas[OPTION]... [BOOKMARKNAME]cO@séd}|jdƒr<|r3tjtdƒƒ‚nd!}n|rO|d}n|jd|ƒ}|jdƒdkrµ|d!kr‘tdƒ}n
d	|}|jtd
ƒ|ƒntj|ƒ}d!}xìt	|j
jd|ƒƒD]Ï\}	}|	|krPn|jt
|j|jƒddd
dƒ}
|jt
|j|jƒddd
dƒ}|jƒ|j|jdd|ƒ|jdd|
ƒ|j|jdd|jƒ|j|jdƒpÉ|jdƒdd|jƒ|j|jdƒ}|j|jdd|ƒ|jdd|jƒ|jdƒrætj|||dtƒ}
x^|jD]S}y||}|
j|ƒWqQtjk
r£}|jddt|ƒƒqQXqQW|
j ƒqæqæW|j!ƒ|d!krå|jtd ƒƒnd!S("szshow the previous position of bookmarks and the working copy

    The journal is used to see the previous commits that bookmarks and the
    working copy pointed to. By default the previous locations for the working
    copy.  Passing a bookmark name will show all the previous positions of
    that bookmark. Use the --all switch to show previous locations for all
    bookmarks and the working copy; each line will then include the bookmark
    name, or '.' for the working copy, as well.

    If `name` starts with `re:`, the remainder of the name is treated as
    a regular expression. To match a name that actually starts with `re:`,
    use the prefix `literal:`.

    By default hg journal only shows the commit hash and the command that was
    running at that time. -v/--verbose will show the prior hash, the user, and
    the time at which it happened.

    Use -c/--commits to output log information on each commit hash; at this
    point you can use the usual `--patch`, `--git`, `--stat` and `--template`
    switches to alter the log output for these.

    `hg journal -T json` can be used to produce machine readable output.

    R-R½s/You can't combine --all and filtering on a nameiR!ttemplatetjsonsthe working copy and bookmarkss'%s'sprevious locations of %s:
RRtsepRuR4s%s -> R5s%sR}s %-8ssre:s  %-8ss%Y-%m-%d %H:%M %1%2tdates %sR~s  %s
R¿tbufferedtrepolookuperrors%s

sno recorded locations
N("R8RRžRRŽt	formattertstatusRtloglimitRNR!Rµt
formatlistR„thexfuncR5R4t	startitemt	condwritetverboseRZR}t
startswithRt
formatdateR€R~tshow_changesetRktshowtRepoLookupErrorR…tclosetend(RR"R)toptsRtfmtdisplaynametlimitRqtcounttnewhashesstrtoldhashesstrt
timestringt	displayerRttctxRc((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyR!£sZ	

(

!
(s	no-mergesR»(R¼R½Nsshow history for all names(R¾R¿Nsshow commit metadata(2R‹t
__future__RtcollectionsRFR®R¥tmercurial.i18nRt	mercurialRRRRRRRR	R
RRR¼R
tcmdtableR~t
testedwithR°R9R1tsharedbookmarksR`RR#RRR,RRIRWRRt
namedtupleRrtobjectR t_ignoreoptsRŽtlogoptstoptR!(((s1/usr/lib/python2.7/dist-packages/hgext/journal.pyt<module>sJL
												&Ç*