This Kelvin requires more work to update than some previous Kelvins because the $foam
type was deleted from Lull. This means if your app imports the full base-dev
folder as a dependency the way most apps do and your app imports /sur/hood/hoon
(as a lot of apps do), you will need to update that dependency for 414 by copying in the most recent files, and also drop support for older Kelvins by deleting their entries from /sys/kelvin
and replacing them all with just [%zuse 414]
. If your app does not have any files that import /sur/hood/hoon
with Ford runes, you might be able to support 414 and 415 without modifying code -- if so, please test your app to be sure.
Note that Clay can still handle later commits targeted at 415, so as an app dev, you can maintain both 414 and 415 -- the constraint is that each commit to your app desk can only support one or the other if you are using the standard /sur/hood/hoon
. Supporting both in the same stream of commits to the same desk is admittedly awkward, so if anybody has an idea of how to simplify the management of multi-Kelvin releases, please share that with me and the community.
If you don't need the full /sur/hood/hoon
, an alternative approach to supporting this new Kelvin is to replace /sur/hood/hoon
and a couple other related files with smaller versions that just include the type definitions. See ~nocsyx-lassul
's version of this in the %garden
desk. If you take this route, you should still be able to maintain support for older Kelvins. The important thing is to test your app on both old and new Kelvins if you want to be able to support both.
You can check whether your app compiles at the new Kelvin by running a moon, upgrading the kernel on that moon by running |ota ~binnec-dozzod-marzod
and waiting until it completes (check by running zuse
in the Dojo and seeing %414
in response), then try to copy your app folder in and run it. If you see stack traces, it didn't work. If it did work, running +vat %my-app
should show status: running
, and +agents %my-app
should list all the agents in your /desk/bill
.
If you see /sur/hood/hoon
fail to compile at the new Kelvin (414), complaining about $foam
, that means your app is still referring to the old /sur/hood/hoon
, so your app will not build unless you update it. Conversely, if you see /sur/hood/hoon
fail to compile at the old Kelvin (415), then that means your app is still signaling compatibility with the old Kelvin despite not actually being able to be built at that Kelvin.