I actually kind of like the simplicity of wake() over changed()
A Rust implementation of the proposed IETF standard.
Specification Github