From f77720cfa5b6898e18ff2b701745be3a1da079fc Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 12 Jun 2015 20:23:08 -0400 Subject: [PATCH] fixed (?) pier-not-coming-up issue --- base/arvo/clay.hoon | 63 +++++++++++++++++++++++++++------------------ 1 file changed, 38 insertions(+), 25 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 9c8f89b06e..6597c592c2 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -793,7 +793,8 @@ == :: ++ apply-foreign-update :: apply subscription - |= $: gar=(map aeon tako) :: new ids + |= $: lem=(unit ,@da) :: complete up to + gar=(map aeon tako) :: new ids let=aeon :: next id lar=(set yaki) :: new commits bar=(set blob) :: new content @@ -838,6 +839,7 @@ ~ $(yon +(yon)) %= +>.$ + lim (max (fall lem lim) lim) hit.dom hit let.dom let hut.ran hut @@ -913,6 +915,8 @@ %nako !>(~|([%harding [&1 &2 &3]:q.r.u.rut] ((hard nako) q.r.u.rut))) == ?. ?=(%nako p.r.u.rut) +>+.$ + =+ rav=`rave`q.u.ruv + ?> ?=(%many -.rav) |- ^+ +>+.^$ =+ nez=[%w [%ud let.dom] ~] =+ nex=(~(get by haw.u.ref) nez) @@ -921,10 +925,15 @@ =. nak.u.ref `((hard nako) q.q.u.u.nex) =. +>+.^$ ?: =(0 let.dom) - => (apply-foreign-update (need nak.u.ref)) - ?>(?=(^ ref) .) - => (validate-plops [%ud let.dom] bar:(need nak.u.ref)) - ?>(?=(^ ref) .) + =< ?>(?=(^ ref) .) + %+ apply-foreign-update + ?.(?=(%da -.q.q.rav) ~ `p.q.q.rav) + (need nak.u.ref) + =< ?>(?=(^ ref) .) + %^ validate-plops + [%ud let.dom] + ?.(?=(%da -.q.q.rav) ~ `p.q.q.rav) + bar:(need nak.u.ref) %= $ haw.u.ref (~(del by haw.u.ref) nez) == @@ -989,11 +998,12 @@ wake(haw.u.ref (~(put by haw.u.ref) [car cas pax] `p.res)) :: ++ validate-plops - |= [cas=case pop=(set plop)] + |= [cas=case lem=(unit ,@da) pop=(set plop)] ^+ +> =- %_(+>.$ tag [- tag]) + =+ lum=(scot %da (fall lem *@da)) :* hen %pass - [%foreign-plops (scot %p who) (scot %p for) syd ~] + [%foreign-plops (scot %p who) (scot %p for) syd lum ~] %f %exec who [for syd cas] ~ %tabl ^- (list (pair silk silk)) %+ turn (~(tap in pop)) @@ -1012,7 +1022,7 @@ == :: ++ take-foreign-plops - |= res=gage + |= [lem=(unit ,@da) res=gage] ^+ +> ?> ?=(^ ref) ?> ?=(^ nak.u.ref) @@ -1029,9 +1039,11 @@ %indirect ~| %plop-indirect-not-implemented !! == %^ apply-foreign-update - gar.u.nak.u.ref - let.u.nak.u.ref - [lar.u.nak.u.ref (sa lat)] + lem + gar.u.nak.u.ref + :+ let.u.nak.u.ref + lar.u.nak.u.ref + (sa lat) :: ++ mabe :: maybe fire function |* [rov=rove fun=$+(@da _+>.^$)] @@ -1522,11 +1534,11 @@ :- -:!>(*arch) ^- arch =+ ^- descendants=(list (pair path lobe)) - :: ~& > %turning - :: =- ~& > %turned - + :: ~& %turning + :: =- ~& %turned - %+ turn - :: ~& > %skimming - :: =- ~& > %skimmed - + :: ~& %skimming + :: =- ~& %skimmed - %+ skim (~(tap by (~(del by q.yak) pax))) |= [paf=path lob=lobe] =(pax (scag len paf)) @@ -2627,12 +2639,13 @@ [mos ..^$] :: %foreign-plops - ?> ?=([@ @ @ ~] t.tea) + ?> ?=([@ @ @ @ ~] t.tea) =+ our=(slav %p i.t.tea) =+ her=(slav %p i.t.t.tea) =* syd i.t.t.t.tea + =+ lem=(slav %da i.t.t.t.t.tea) =+ zax=(do now hen [our her] syd ruf) - =+ zat=(take-foreign-plops:zax q.q.hin) + =+ zat=(take-foreign-plops:zax ?~(lem ~ `lem) q.q.hin) =^ mos ruf =+ zot=abet.zat [-.zot (posh her syd +.zot ruf)] @@ -2726,9 +2739,9 @@ |- ^- (list ,[p=path q=miso]) ?~ ank ?~ kan - :: ~& >> [pax %ank-kan-sig] + :: ~& [pax %ank-kan-sig] ~ - :: ~& >> [pax %ank-sig] + :: ~& [pax %ank-sig] =+ ?~ dir.u.kan ~ =+ (~(tap by u.dir.u.kan)) @@ -2741,16 +2754,16 @@ - ?~ u.fil.u.kan - - :: ~& >> [pax %ins-1] + :: ~& [pax %ins-1] [[(flop pax) %ins u.u.fil.u.kan] -] ?~ kan - :: ~& >> [pax %kan-sig] + :: ~& [pax %kan-sig] =+ =+ (~(tap by r.u.ank)) |-(?~(+< ~ (weld ^$(pax [p.i pax], ank `q.i) $(+< t)))) ?~ q.u.ank - [[(flop pax) %del q.u.q.u.ank] -] - :: ~& >> [pax %neither-sig] + :: ~& [pax %neither-sig] =+ ?~ dir.u.kan ~ %+ weld @@ -2760,15 +2773,15 @@ =+ (~(get by u.dir.u.kan) p.i) ?: ?=([~ ~] -) $(+< t) %- weld :_ $(+< t) - :: ~& >> [pax %ankhing p.i ?=(~ -)] + :: ~& [pax %ankhing p.i ?=(~ -)] ^$(pax [p.i pax], ank `q.i, kan ?~(- ~ `u.u.-)) =+ (~(tap by u.dir.u.kan)) - :: ~& > [%sdirukan pax=pax (~(run by dir.u.kan) (cury test ~))] + :: ~& [%sdirukan pax=pax (~(run by dir.u.kan) (cury test ~))] |- ^- (list ,[p=path q=miso]) ?~ +< ~ ?~ q.i $(+< t) ?: (~(has by r.u.ank) p.i) $(+< t) - :: ~& >> [pax %khaning p.i] + :: ~& [pax %khaning p.i] %- weld :_ $(+< t) ^$(pax [p.i pax], kan `u.q.i, ank ~) ?~ q.u.ank