[ANNOUNCE] urbit-os-v2.136

307 views
Skip to first unread message

Josh Lehman

unread,
Mar 22, 2023, 11:28:56 AM3/22/23
to urbit-dev

This release is planned for deployment to the network on Tuesday of next week (March 28th). 

  • This release decrements the Kelvin version because it contains breaking changes.
  • The new Kelvin version is Zuse 414, Lull 325, Arvo 239, Hoon 139
  • App developers will need to account for the breaking changes by updating their `base-dev` dependencies and signaling support. Read this guide for instructions.
  • Most apps are affected by these changes.

What you need to do

  1. You must signal compatibility for %zuse 414 by adding the following line to your sys.kelvin file: `[%zuse 414]`
  2. You must update the `base-dev` files in your app’s desk. For details, read here.

What you can do to test

You can confirm your app works with the new changes you can get the pre-release by following the instructions below:

  • Spin up a new moon.
  • Update the pace file in <pier>/.bin/pace from `live` to `soon` (without backticks)
  • If you don't have a pace file in .bin you can create one with the word soon in it
  • If you don't have a .bin directory, you need to dock your binary (see: https://operators.urbit.org/manual/running/vere#dock)
  • Once the soon runtime release channel is set, upgrade your runtime to the pre-release via next
  • <pier>/.run next
  • Starting your urbit back up should show 2.1-8379b52 as the version number
  • Update the sources for base, webterm and landscape (which is deprecated but still necessary for the time-being) to the marnec pre-release moon
  • |install ~marnec-dozzod-marzod %landscape
  • |install ~marnec-dozzod-marzod %webterm
  • |ota ~marnec-dozzod-marzod
  • |bump (you can also suspend and upgrade via the landscape UI)
  • Check to ensure that the upgrade is actually completed by verifying that entering `zuse` in the dojo produces `414`
  • Install your app and verify that it succeeds.

With that you should have the pre-release running and you should be able to confirm your app works as expected on the new Kelvin.

Breaking changes

  • adds the $flue scry to clay, enabling %pyro to quickly build desks on ships.
  • adds the /~/name endpoint in full by reverting the adapters that were previously added.

Full changelog

Pyry Kovanen

unread,
Apr 4, 2023, 11:27:41 AM4/4/23
to urbit-dev, Josh Lehman
This release has been deployed and is propagating across the network.

%base hash (check with +vat %base):  0vo.iterm.irj8b.oeia4.vd1j0.eea4p.thqf9.gt016.80h5e.a3orh.4c50r

John Franklin

unread,
Apr 5, 2023, 2:06:54 AM4/5/23
to urbit-dev, Pyry Kovanen, Josh Lehman
I have 2 planets and a comet synced to `~wanzod`.
```
+vat %base
%base
  /sys/kelvin:      [%zuse 415]
  base hash:        0v13.gb7b2.v1h24.upgv3.o743l.jjc2k.8ellh.8keur.4osot.1si86.rll9k
  %cz hash:         0v13.gb7b2.v1h24.upgv3.o743l.jjc2k.8ellh.8keur.4osot.1si86.rll9k
  app status:       running
  force on:         ~
  force off:        ~
  publishing ship:  ~
  updates:          remote
  source ship:      ~wanzod
  source desk:      %kids
  source aeon:      136
  kids desk:        %kids
  pending updates:  ~
::
```
(Same output for all 3 ships.)
I can successfully `|hi ~wanzod` from all 3 ships but still no update 15 hours from deploy.
I used the System Update UX to unsync and resync to `~wanzod` and got this:
```
kiln: cancelling sync from %kids on ~wanzod to %base then %kids
kiln: beginning install into %base from ~wanzod/%kids
kiln: activated install into %base from ~wanzod/%kids
kiln: downloading update for %base from ~wanzod/%kids
kiln: finished downloading update for %base from ~wanzod/%kids
kiln: remote is identical to %base from ~wanzod/%kids, skipping
```
It seems that `~wanzod` has not got the update yet.

John Franklin

unread,
Apr 5, 2023, 2:29:14 AM4/5/23
to urbit-dev, John Franklin, Pyry Kovanen, Josh Lehman
I also have a planet and comet synced to `~marzod`.  They successfully downloaded, but:
```
kiln: downloading update for %base from ~marzod/%kids
kiln: finished downloading update for %base from ~marzod/%kids
clay: wait-for-kelvin, [need=[%zuse %415] have=[n=[lal=%zuse num=414] l={} r={}]]
kiln: merge into %base succeeded
kiln: kids merge into %kids
clay: wait-for-kelvin, [need=[%zuse %415] have=[n=[lal=%zuse num=414] l={} r={}]]
kiln: kids merge to %kids succeeded
clay: wait-for-kelvin, [need=[%zuse %415] have=[n=[lal=%zuse num=414] l={} r={}]]

> +vat %base
%base
  /sys/kelvin:      [%zuse 415]
  base hash:        0v13.gb7b2.v1h24.upgv3.o743l.jjc2k.8ellh.8keur.4osot.1si86.rll9k
  %cz hash:         0v13.gb7b2.v1h24.upgv3.o743l.jjc2k.8ellh.8keur.4osot.1si86.rll9k
  app status:       running
  force on:         ~
  force off:        ~
  publishing ship:  ~
  updates:          remote
  source ship:      ~marzod
  source desk:      %kids
  source aeon:      138
  kids desk:        %kids
  pending updates:  ~[[%zuse 414]]
::
```
I had to manually `|bump` from the dojo to get it to build and install.  Is this how it's
supposed to work, or is it supposed to automatically build and install on download?
Reply all
Reply to author
Forward
0 new messages