A manual rebuild of a release dispatched from develop no longer tags :dev or
marks the image as the dev channel. The docs now say each :dev image is only
published when a merge touches that project.
Testers who want changes before a release can point at :dev. :latest and
the version tags still only come from releases on main. Dev images carry
RELEASE_CHANNEL=dev so the update checker compares them with develop.
Languages come from the locale files, named in themselves via Intl.DisplayNames, with missing keys falling back to English. The week start follows the locale, the Appearance picker switches to a Select past four languages, and docs/TRANSLATING.md plus an i18n:check script guide translators.
Work now merges into develop by pull request; main is the release branch, updated by pull requests from develop, and remains the only branch that publishes images and releases.
Extension versions are now derived from Conventional Commits that touch
extension/ (semantic-release-monorepo), instead of being bumped by hand.
The new "Extension store release" workflow runs every Friday at 13:00
Europe/Warsaw, or manually: it bumps package.json, writes CHANGELOG.md,
tags thingport-grab-v<version>, creates a non-latest GitHub release with
the store zips, and publishes to Edge Add-ons in a separately retryable
job.
The per-merge workflow keeps building the extension-latest zips and the
signed Firefox .xpi, but no longer publishes to Edge.