Skip to content

fix(packaging): .deb and .rpm of a beta sort before the final release (#1494) - #1708

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
fix/packaging-prerelease-versions
Oct 17, 2026
Merged

ZhuchkaTriplesix merged 1 commit into
devfrom
fix/packaging-prerelease-versions

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Closes #1494. Part of the Beta channel epic #1499.

build_deb.sh wrote Version: 0.5.0-beta.1, which dpkg reads as upstream 0.5.0 with revision beta.1, newer than 0.5.0; build_rpm.sh wrote 0.5.0.beta.1, also newer than 0.5.0. Beta users would never be upgraded to the final package.

  • scripts/linux/package_version.sh maps the pubspec version to the package version: the first - becomes ~ (which both dpkg and rpm sort before anything, even the end of the string), any further - becomes . (it would otherwise start a Debian revision or an RPM release). 0.5.0-beta.1 → 0.5.0~beta.1; a final 0.5.0 is unchanged.
  • build_deb.sh and build_rpm.sh use it for Version: / %{version}. The file names keep the tag form (Querya-Desktop-0.5.0-beta.1-linux.deb), so the updater's asset rules and SHA256SUMS.txt are unaffected.
  • Windows: AppVersion in querya.iss is free text and no VersionInfoVersion is derived from it, so -beta.1 is accepted. macOS takes the version from Flutter's build name; whether CFBundleShortVersionString with -beta.1 is accepted (and notarized) needs the dry run from ci(release): beta tags publish a pre-release, not latest, and skip AUR / APT / DNF #1492.

Behaviour change worth knowing: an old marketing suffix such as 0.4.11-b now becomes 0.4.11~b, which sorts before 0.4.11 (SemVer reading) instead of after it.

Tests (test/packaging/): the mapping; and, where the tools exist, that 0.4.19 < 0.5.0-beta.1 < 0.5.0-beta.2 < 0.5.0-beta.10 < 0.5.0 < 0.5.1 holds for dpkg --compare-versions (present on the Ubuntu CI runners) and for rpm.vercmp (skipped when rpm is not installed).

@github-actions github-actions Bot added bug Something isn't working P2 Medium priority / Parity & Refactoring labels Oct 17, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit 037ee35 into dev Oct 17, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working P2 Medium priority / Parity & Refactoring

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant