[ANNOUNCE] urbit-os-v2.125

195 views
Skip to first unread message

Mark

unread,
Jul 28, 2022, 11:52:49 AM7/28/22
to urbit-dev
urbit-os-v2.125

This release will be pushed out to our pre-release moon (~doznec-dozzod-marzod) shortly.
We intend to release this to the rest of the network early next week.

Release notes:

- Enabled ames to let is negotiate the permanent closing of flows. Gall will
now request the flow corresponding to a subscription get closed as soon as
the subscription ends. This will prevent incorrect behavior, where gall might
deliver an acknowledgement to the wrong request, resulting in subscriptions
getting out of sync.
In other words: resolved issues with subscription reliability.
- Eyre now properly cleans up all inactive channels when notified of memory
pressure.

Contributions:

Ted Blackman (8):
gall: compiles with nonce in wire
dbug,spider: fix type errors; ship boots
gall: upgrades almost smoothly
dbug: fix type error from nonce change
gall: review cleanups
treaty: fix case upgrade issue
gall: kill subscriptions after agents reload
gall: fix +molt initialization

bacwyls (2):
eyre: fix for %trim bug
eyre: fix for %trim bug - addendum

fang (4):
aqua: add %aqua-effect mark file
pill: update
pill: update
tests: temporarily disable ames comet flow test

h5gq3 (2):
ames-flow-kill
style fixes

yosoyubik (51):
gall: WIP added sub-nonce to state and wire
ames: handles decoding old-format shut-packets
ames: style indentation
gall: style indentation
gall: include sub-nonce in unsubscribe wire
gall: add %cork to remote-request action
ames: remove %cork from |ack-meat
gall: handle %kicks for nonexistent subscriptions
ames: restore previous +decode-shut-packet
ames: add new state version in +stay
ames: retry sending a %cork if publisher is behind
ames: add tracing printf
ames: fixt 6-to-7 state update
pill: update solid
ames: don't relay acks for naxplanations of %corks
gall: print trace logs by agent
gall: add $beat map for subscription nonces
app: remove nonce from dbug and spider
gall: add %gn to scry the nonce of a subscription
gall: skip nonce in pre-nonce subs wires
gall: increment nonce after leaving pre-nonce subs
gall: remove $watches from egg/yoke
ames: add rift when inserting new peer state
ames: handle bounce %cork from old publisher
ames: use %$ as recipient vane for %corks
ames: remove misleading trace printf
gall: run +ap-kill-down on +molt
gall: run +ap-kill-down only once
ames: print bone if "hear last in-progress"
gall: fix condition to run +ap-kill-down
ames: ack last fragment from closing bone
Revert "gall: fix condition to run +ap-kill-down"
Revert "gall: run +ap-kill-down only once"
Revert "gall: run +ap-kill-down on +molt"
ames: resend %cork after a naxplanation in one day
gall: don't send %cork when leaving a subscription
gall: handle subscriber-side %cork
ames: add global daily timer for pending corks
ames: remove cork wire from state
ames: init cork timer on larval +take
ames: clean up nack flows after a cork
ames: add trace for %cork plea
gall: run +ap-kill-down on +molt
gall: run +ap-kill-down only once
gall: fix condition to run +ap-kill-down
gall: use spore tag for +molt subscription killing
gall: comment subscription kill
ames: add recork set
ames: fix predicate for detecting %cork acks
ames: delete naxplanation flows if bone is corked
gall: make spore-tag a @ud


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 3, 2022, 3:49:12 PM8/3/22
to urbit-dev
As you may have noticed, the network-wide release of this has been delayed. We identified an issue where superfluous timers were being set, resulting in unnecessary traffic in some cases.

A fix for that issue has been developed, and a second release candidate will be pushed to the pre-release moon shortly. We will provide an ETA for the network-wide release at a later point in time.

Additional contributions:

Ted Blackman (2):
ames: don't start pump timers on recork
ames: properly set recork flag in +on-wake

fang (6):
ames: correctly avoid setting pump timer
ames: account for corked flows during %stir
ames: make recork timer faster
ames: more detailed "future msg" trace
ames: correctly measure queue size
ames: unsent-fragments is a list, not a tree


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 5, 2022, 5:34:38 PM8/5/22
to urbit-dev
A third release candidate will be pushed to the pre-release moon shortly.

We have further simplified the logic we've been scrutinizing these past few days, and have not seen any issues in internal testing since. Unless anything new comes up, we intend to push this out to the broader network sometime next week.

Additional contributions:

Ted Blackman (3):
ames: simplify recork timer
ames: try next recork on cork ack
ames: invert busted conditional in recork timer


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 12, 2022, 4:45:49 PM8/12/22
to urbit-dev
A fourth release candidate will be pushed to the pre-release moon early next week.

We have improved the handling of post-update network traffic, ensured proper subscription cleanup, and included a couple small tools for getting debug information about the new behavior.

Additional contributions:

Joe Bryan (1):
base: adds generator for getting %ames timer counts

Ted Blackman (11):
ames: no-op on acks on corked bones
ames: clean up %cork plea handling
gall: kill old subscriptions on %doff (still has bug)
gall: update comment
ames: drop pleas on dead bones
gall: fix %doff handling
ames: clean up closing bone check and printfs
ames: fix no-op for messages on closing bones
tests: fix ames comet test
gall: add %f scry for sub-nonce's
gall: disable %doff for now

fang (13):
gall: cork a subscription's ames flow on-kick
gall: use correct wires in +ap-kill-down
gall: refactor sub-wire-with-nonce construction
gall: in/exclude the nonce from the wire as needed
gall: initialize sub-nonce as 1 during upgrade
gall: explain reason for strange conditional
gall: support %doff-ing specific apps and/or ships
gall: simplify +ap-doff filter conditional
doff: improve generator interface slightly
gall: in +ap-doff, process oldest subs first
gall: use a fully-formed wire when sending %cork
gall: print less during %doff
gall: fix the %doff conditional


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 16, 2022, 4:15:34 PM8/16/22
to urbit-dev
This release candidate has just been pushed out through the pre-release moon.


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 19, 2022, 7:14:27 PM8/19/22
to urbit-dev
A fifth release candidate will be pushed to the pre-release moon shortly.

We have identified and resolved what we believe to be the last remaining issues with this release. If no new issues arise over the coming days, we intend to push this release out to the broader network next week.

After this release goes out, we have another one queued up. It includes fixes for the Azimuth issues some of you have been experiencing. Thank you for your patience.

Additional contributions:

Ted Blackman (7):
gall: disable %doff for now
gall: force load %hood and %dojo on poke
gall: now restarts %hood, but not %dojo yet
gall: revive %hood and %dojo on poke
gall: roundtrip through arvo to revive %hood and %dojo
+ames-flows: diagnostic generator to count ames flows
gall: %rake task to clean up dead %leave's

fang (12):
gall: remove outdated fixme comment
gall: re-enable doff, only for old-style subs
gen: add +gall-nonces for reading all next nonces
gen: remove printf from +gall-nonces
ames-flows: more fine-grained open flow counting
gall: improve match detection in +ap-rake
gall: clean up big wire construction
gall: when kicked, register %cork as outstanding
ames: don't skip closing flows in +on-stir
gall: don't inject potentially-fake acks
ames: ensure larva initializes adult's state
ames: say "metamorphosis" in all relevant cases


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 23, 2022, 7:57:37 AM8/23/22
to urbit-dev
The final version of this release will be pushed to the entire network shortly.

The %cz hash of the %base desk for this release is:
0v1n.fofus.h069e.p0022.vro77.q6efn.6lluk.n6eev.aokeu.b7ctd.r7jdv

We have lightly improved one of the included recovery tools, but have otherwise found no further issues with this release. The release notes have been updated to call out an important fix that made it in along the way. For completeness, I will include them in their entirety below.

urbit-os-v2.125

Release notes:

- Enabled ames to let it negotiate the permanent closing of flows. Gall will
now request the flow corresponding to a subscription get closed as soon as
the subscription ends. This will prevent incorrect behavior, where gall might
deliver an acknowledgement to the wrong request, resulting in subscriptions
getting out of sync.
In other words: resolved issues with subscription reliability.
- Eyre now properly cleans up all inactive channels when notified of
memory pressure.
- Added a bandaid to keep a ship operable if it suffers a somewhat rare but
known issue during upgrade, where some desks fail to restart. Gall will now
revive %hood and %dojo if they failed to restart, keeping the command line
operational on afflicted ships, allowing the user to run commands to revive
any apps that failed to restart.

Contributions:

Joe Bryan (2):
base: adds generator for getting %ames timer counts
ames: refactor %stir, %rest stale/wrong timers

Ted Blackman (31):
gall: compiles with nonce in wire
dbug,spider: fix type errors; ship boots
gall: upgrades almost smoothly
dbug: fix type error from nonce change
gall: review cleanups
treaty: fix case upgrade issue
gall: kill subscriptions after agents reload
gall: fix +molt initialization
ames: don't start pump timers on recork
ames: properly set recork flag in +on-wake
ames: simplify recork timer
ames: try next recork on cork ack
ames: invert busted conditional in recork timer
ames: no-op on acks on corked bones
ames: clean up %cork plea handling
gall: kill old subscriptions on %doff (still has bug)
gall: update comment
ames: drop pleas on dead bones
gall: fix %doff handling
ames: clean up closing bone check and printfs
ames: fix no-op for messages on closing bones
tests: fix ames comet test
gall: add %f scry for sub-nonce's
gall: disable %doff for now
gall: force load %hood and %dojo on poke
gall: now restarts %hood, but not %dojo yet
gall: revive %hood and %dojo on poke
gall: roundtrip through arvo to revive %hood and %dojo
+ames-flows: diagnostic generator to count ames flows
gall: %rake task to clean up dead %leave's
ames: +on-stir clean up comments

bacwyls (2):
eyre: fix for %trim bug
eyre: fix for %trim bug - addendum

fang (35):
aqua: add %aqua-effect mark file
pill: update
pill: update
tests: temporarily disable ames comet flow test
ames: correctly avoid setting pump timer
ames: account for corked flows during %stir
ames: make recork timer faster
ames: more detailed "future msg" trace
ames: correctly measure queue size
ames: unsent-fragments is a list, not a tree
gall: cork a subscription's ames flow on-kick
gall: use correct wires in +ap-kill-down
gall: refactor sub-wire-with-nonce construction
gall: in/exclude the nonce from the wire as needed
gall: initialize sub-nonce as 1 during upgrade
gall: explain reason for strange conditional
gall: support %doff-ing specific apps and/or ships
gall: simplify +ap-doff filter conditional
doff: improve generator interface slightly
gall: in +ap-doff, process oldest subs first
gall: use a fully-formed wire when sending %cork
gall: print less during %doff
gall: fix the %doff conditional
gall: remove outdated fixme comment
gall: re-enable doff, only for old-style subs
gen: add +gall-nonces for reading all next nonces
gen: remove printf from +gall-nonces
ames-flows: more fine-grained open flow counting
gall: improve match detection in +ap-rake
gall: clean up big wire construction
gall: when kicked, register %cork as outstanding
ames: don't skip closing flows in +on-stir
gall: don't inject potentially-fake acks
ames: ensure larva initializes adult's state
ames: say "metamorphosis" in all relevant cases

h5gq3 (2):
ames-flow-kill
style fixes

hosted-fornet (1):
agentio: fix `+rest` typo

Mark

unread,
Aug 23, 2022, 11:20:28 AM8/23/22
to urbit-dev
Correction, the actual hash should be as follows:

0v18.q5kkj.20150.u9dl6.ah0go.8c9tq.6k2ou.kceo7.sesgh.k0f7r.ks39h

It's propagating across the network right now.


~palfun-foslup
https://urbit.org

Mark

unread,
Aug 23, 2022, 11:57:17 AM8/23/22
to urbit-dev
Heads up: you may see "gall: missing" printfs (paired with a bigger %gall-missing block). People who had run pre-release versions of this update may see more of these.

This print is known to be benign, and does not affect your ship outside of being loud and annoying. If you are getting a large stream of them, it will eventually resolve.


~palfun-foslup
https://urbit.org
Reply all
Reply to author
Forward
0 new messages