fixed %cy hashes and allow de-sync from unix

This commit is contained in:
Philip C Monk 2015-04-28 17:36:37 -04:00
parent 7a21ebcd85
commit f073b515f6
3 changed files with 68 additions and 17 deletions

View File

@ -62,6 +62,7 @@
++ note-clay :: filesystem command
$% [%font p=@p q=@tas r=@p s=@tas] ::
[%info p=@p q=@tas r=nori] ::
[%lynx p=@p q=@tas r=(unit ,?)] ::
[%merg p=@p q=@tas r=@p s=@tas t=germ] ::
== ::
++ note-dill :: system command
@ -157,13 +158,21 @@
[ost %pass /reload %d %flog %veer tip pax txt]
::
++ he-wish-sync
|= [syd=@tas her=@p sud=@tas ~]
|= [syd=desk her=ship sud=desk ~]
%_ .
moz
:_ moz
[ost %pass /sync %c %font our.hid syd her sud]
==
::
++ he-wish-unix
|= [syd=desk syn=(unit ,?)]
%_ .
moz
:_ moz
[ost %pass /unix %c %lynx our.hid syd syn]
==
::
++ he-wish-verb
%_ .
moz
@ -436,10 +445,15 @@
he-abet:merge-abet:(start:(he-wish-merge:(hoke ost her) syd) ali sud gem)
::
++ poke-helm-sync
|= [ost=bone her=ship all=[@tas @p @tas ~]]
|= [ost=bone her=ship all=[desk ship desk ~]]
~& %poke-helm-sync
he-abet:(he-wish-sync:(hake ost her) all)
::
++ poke-helm-unix
|= [ost=bone her=ship all=[desk (unit ,?)]]
~& %poke-helm-unix
he-abet:(he-wish-unix:(hake ost her) all)
::
++ poke-helm-begin
|= [ost=bone you=ship begs]
~& %poke-helm-begin

View File

@ -15,6 +15,7 @@
dom=dome :: desk data
dok=(unit dork) :: outstanding diffs
mer=(map (pair ship desk) mery) :: outstanding merges
syn=? :: sync to unix
== ::
++ gift :: out result <-$
$% [%ergo p=@p q=@tas r=@ud s=(list ,[path (unit mime)])]
@ -33,6 +34,7 @@
[%info p=@p q=@tas r=nori] :: internal edit
[%init p=@p] :: report install
[%into p=@p q=@tas r=khan] :: external edit
[%lynx p=@p q=@tas r=(unit ,?)] :: sync to unix
[%merg p=@p q=@tas r=@p s=@tas t=germ] :: merge desks
[%plug p=@p q=@tas r=@p s=@tas] :: unset upstream
[%wart p=sock q=@tas r=path s=*] :: network request
@ -132,6 +134,7 @@
dom=dome :: revision state
dok=(unit dork) :: outstanding diffs
mer=(map (pair ship desk) mery) :: outstanding merges
syn=? :: sync to unix
== ::
++ riff ,[p=desk q=(unit rave)] :: request/desist
++ rind :: request manager
@ -165,13 +168,13 @@
mim=(map path mime) :: mime cache
== ::
-- =>
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: section 4cA, filesystem logic ::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: section 4cA, filesystem logic ::
::
::
::
|%
++ de :: per desk
++ de :: per desk
|= [now=@da hen=duct hun=duct hez=(unit duct)]
|= [[who=@p for=@p] syd=@ta rede ran=rang]
=* red +<+>-
@ -296,6 +299,11 @@
fod.u.ref (~(put by fod.u.ref) hen inx)
==
::
++ lynx
|= sun=(unit ,?)
^+ +>
+>.$(syn ?~(sun !syn u.sun))
::
++ ease :: release request
^+ .
?~ ref
@ -722,6 +730,7 @@
=. ank.dom (checkout-ankh:ze (mo can))
:: ~& %checked-out
?~ hez +>.$(dok ~)
?. syn +>.$(dok ~)
=+ ^= ceq
|= a=miso
?| ?=(%del -.a)
@ -758,7 +767,8 @@
yel
[[hen %note '!' %rose [" " "" ""] leaf/"clay ergo failed" p.res] yel]
==
?~ hez ~& %no-sync-duct !!
?~ hez ~|(%no-sync-duct !!)
?. syn ~|(%sync-off !!)
=+ cay=p.res
?@ p.cay ~| %patch-bad-marc !!
%= +>.$
@ -1440,16 +1450,26 @@
:^ ~ ~ %arch
:- -:!>(*arch)
^- arch
:+ *@uvI
?.((~(has by q.yak) pax) ~ `0vfak.ehash) :: XX hash of lobes
=+ ^- descendants=(list (pair path lobe))
%+ turn
%+ skim (~(tap by (~(del by q.yak) pax)))
|= [paf=path lob=lobe]
=(pax (scag len paf))
|= [paf=path lob=lobe]
[(slag len paf) lob]
=+ us=(~(get by q.yak) pax)
:+ ?: &(?=(~ descendants) ?=(~ us))
*@uvI
%+ roll
^- (list (pair path lobe))
[[~ ?~(us *lobe u.us)] descendants]
|=([[path lobe] @uvI] (shax (jam +<)))
us
^- (map span ,~)
%- mo ^- (list (pair span ,~))
%+ turn
%+ skim (~(tap by (~(del by q.yak) pax)))
|= [paf=path lob=lobe]
=(pax (scag len paf))
%+ turn descendants
|= [paf=path lob=lobe]
[(snag len paf) ~]
[?>(?=(^ paf) i.paf) ~]
::
++ read-at-aeon :: read-at-aeon:ze
|= [yon=aeon mun=mood] :: seek and read
@ -2132,6 +2152,8 @@
=. ank.dom ank.dat
?~ hez
(done:he ~)
?. syn
(done:he ~)
ergo
::
++ ergo
@ -2185,6 +2207,8 @@
==
?~ hez
(error:he %ergo-no-hez ~)
?. syn
(error:he %ergo-sync-off ~)
?: ?=(%| -.gon.dat)
+>.$
%= +>.$
@ -2270,7 +2294,7 @@
?^(rug u.rug *rung)
=+ ^= red ^- rede
=+ yit=(~(get by rus.rug) syd)
?^(yit u.yit `rede`[~2000.1.1 ~ [~ *rind] *dome ~ ~])
?^(yit u.yit `rede`[~2000.1.1 ~ [~ *rind] *dome ~ ~ %|])
((de now hen ~ ~) [who him] syd red ran.ruf)
::
++ posh
@ -2293,7 +2317,7 @@
%_ +>
ran.ruf run
dos.yar
(~(put by dos.yar) syd [qyx.red dom.red dok.red mer.red])
(~(put by dos.yar) syd [qyx.red dom.red dok.red mer.red syn.red])
==
::
++ wake
@ -2313,7 +2337,7 @@
%^ (de now hen hun.yar hez.yar)
[who who]
syd
[[now qyx.saq ~ dom.saq dok.saq mer.saq] ran.ruf]
[[now qyx.saq ~ dom.saq dok.saq mer.saq syn.saq] ran.ruf]
--
--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@ -2406,6 +2430,19 @@
:~ [hen %slip %c %info p.q.hic q.q.hic %& p.cos one]
[hen %slip %c %info p.q.hic q.q.hic %& p.cos two]
==
::
%lynx
?: =(%$ q.q.hic)
[~ ..^$]
=^ mos ruf
=+ une=(un p.q.hic now hen ruf)
=+ ^= zat
(lynx:(di:wake:une q.q.hic) r.q.hic)
=+ zot=abet.zat
:- -.zot
=. une (pish:une q.q.hic +.zot ran.zat)
abet:une
[mos ..^$]
::
%merg :: direct state up
?: =(%$ q.q.hic)
@ -2474,6 +2511,7 @@
++ scry :: inspect
|= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path]
^- (unit (unit cage))
~& > [%scrying ren=ren his=his syd=syd lot=lot tyl=tyl]
=+ got=(~(has by fat.ruf) his)
=+ luk=?.(?=(%$ -.lot) ~ ((soft case) p.lot))
?~ luk [~ ~]

View File

@ -331,7 +331,6 @@
:^ %pass
[(scot %p our) (scot %ud num) (scot %ud p.kig) (tope bek ~)]
%c
~& >> [%camping bem]
[%warp [our p.bem] q.bem [~ %sing ren r.bem (flop s.bem)]]
==
::