Skip to content

v0.1.19

Choose a tag to compare

@QuiteYellow QuiteYellow released this 25 Sep 19:49
· 3 commits to main since this release
2fe36db

Two behaviour changes to the OBSERVE path, both measured on hardware.

OBSERVE tokens widen from 1 byte to 8. The appliance firmware matches an
observer on the incoming token's length alone, across one global list, and
never clears relations when a DTLS session ends. A registration whose token
is already held is dropped in silence while the old relation keeps it, so
its notifications then arrive labelled with whatever href the token has
since been mapped to. Reproduced on hardware before the change; reported by
mbillow on mbillow/localthings#509.

OBSERVE notifications are merged into the cached representation rather than
assigned over it. A notification on these appliances can be a sparse delta
naming only what changed, and assigning one dropped every key it omitted
until the next sweep. Polls, sweeps, seeds and fetchbacks still replace, so
a key that really disappears is still honoured.

Tokens stay randomly allocated. Deriving them from the href is a second
change and waits for this one to be seen in the field.