Skip to main content

frus 0.2.1, on crates.io

ยท 2 min read
The frus team
frus contributors

A short release, and a milestone: from 0.2.1, the ten library crates are on crates.io, and an application depends on frus with one line.

cargo add frus

The release exists because a version number on crates.io cannot be rewritten. Since the 0.2.0 tag, master had gained web accessibility, and the crates had gained their publishing metadata. Publishing 0.2.0 from master would have shipped something other than the tag, so the new code went out as 0.2.1.

Ready to publishโ€‹

Ten crates carry their repository, documentation, keywords and categories, and every path dependency between them names a version. The sample applications stay unpublished. A dry run of cargo publish --workspace orders the crates by their dependencies (frus-core first, frus last) and builds each one from its packaged tarball.

Accessibility on the webโ€‹

A screen reader can now navigate the demo's task list in a browser, and operate it. Every semantic node is a real, focusable element placed in the canvas's fallback content, so Tab and assistive technology reach it. Announcements go through an aria-live region.

On the way, we found and fixed a bug on every platform. A clickable control merged with its caption was announced correctly, but did nothing when activated, through AccessKit on the desktop as much as on the web. This was checked against a real browser's computed accessibility tree.