mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-11-24 10:33:22 +03:00
clay: fix failure to load apps
When you loaded an app with an error, then fixed the error, it would create the main gall %mult subscription at a time in the past. Then, clay would never fill the subscription since it couldn't get the old %a entries for the apps. This fixes the issue in two ways: first, don't subscribe in the past. Second, if clay can't get the old versions, just fire the subscription anyway.
This commit is contained in:
parent
a51314185a
commit
a94e17915f
@ -3444,6 +3444,19 @@
|
||||
[new-cach.rov fod.dom]
|
||||
(read-unknown mool.rov(case [%ud u.aeon.rov]) new-cach.rov)
|
||||
=. new-cach.rov n
|
||||
?: ?& !(complete old-cach.rov)
|
||||
(complete new-cach.rov)
|
||||
==
|
||||
:_ fod.dom :- %&
|
||||
%- malt
|
||||
%+ murn ~(tap in paths.mool.rov)
|
||||
|= [=care =path]
|
||||
^- (unit [mood (unit (each cage lobe))])
|
||||
=/ cached (~(get by new-cach.rov) [care path])
|
||||
?. ?=([~ ~ *] cached)
|
||||
%- (slog 'clay: strange new-cache' >[care path cached]< ~)
|
||||
~
|
||||
`u=[[care [%ud let.dom] path] u.u.cached]
|
||||
:: if they're still not both complete, wait again.
|
||||
::
|
||||
?. ?& (complete old-cach.rov)
|
||||
|
@ -555,8 +555,7 @@
|
||||
::
|
||||
?> ?=([%cor @ @ @ @ ~] wire)
|
||||
=/ [dap=term her=@ta desk=@ta dat=@ta ~] t.wire
|
||||
=/ tim (slav da+dat)
|
||||
=/ =beak [(slav %p her) desk da+tim]
|
||||
=/ =beak [(slav %p her) desk da+now]
|
||||
?> ?=([?(%behn %clay) %writ *] sign-arvo)
|
||||
?~ p.sign-arvo
|
||||
(mean leaf+"gall: failed to build agent {<dap>}" ~)
|
||||
@ -567,7 +566,7 @@
|
||||
?: ?=(%| -.res)
|
||||
(mean leaf+["gall: bad agent {<dap>}"] p.res)
|
||||
=. mo-core (mo-receive-core dap beak p.res)
|
||||
(mo-subscribe-to-agent-builds tim)
|
||||
(mo-subscribe-to-agent-builds now)
|
||||
:: +mo-handle-sys-lyv: handle notice that agents have been rebuilt
|
||||
::
|
||||
++ mo-handle-sys-lyv
|
||||
|
Loading…
Reference in New Issue
Block a user