The 0.11.0 upload failed only after the release was tagged and
published, which burned the version number due to immutable releases
(see #1779).
- Add a local `build-packages` action that builds the packages with the
release build constraints and runs `twine check --strict` on them.
- Run it in the lint job, so packaging issues are caught on every PR.
- Use the same action in the publish workflow.