Release 4.91.0
1 Nov 2026 · pinned package [email protected]
- Buttons say they are working, then done or failed, with the mark (
ov-mark.js, which the navbar loads on every site; the plan's "buttons' busy, then done or failed, from the mark's states").OVMark.busy(button)→{ done(text?), fail(text?), reset() }: the button shows the mark busy beside its label, keeps its width and takes no second press; done turns the V into the green tick and says "Done" (or the text), fail into the red "!" and a word; then the label comes back.- A form posted the old way (POST) does this by itself until the next page arrives, and a second submit does nothing. Its submitter is never disabled, so its name and value still post. A GET form, a form whose own script took the submit, and
data-ov-busy="off"are left alone; the back/forward cache resets it. navbar.jsloads the newov-mark.jsby its content hash (SIBLING_REV).
PagesThe navbar
Rules96 The Pair is the only mark, and it does the waiting.31 One navbar per page, owned by the shared Frame.90 Assets are addressed by their content, so people always get the current one.