Skip to content

Update release guide with lessons from 9.1.0-RC1#11621

Merged
sensei-hacker merged 1 commit into
iNavFlight:release/9.1from
sensei-hacker:update_release_guide
Jun 5, 2026
Merged

Update release guide with lessons from 9.1.0-RC1#11621
sensei-hacker merged 1 commit into
iNavFlight:release/9.1from
sensei-hacker:update_release_guide

Conversation

@sensei-hacker

Copy link
Copy Markdown
Member

Summary

Updates docs/development/release-create.md with lessons learned during the 9.1.0-RC1 release process.

  • Version string format (new section): RC filenames must use lowercase rc with a hyphen (e.g., 9.1.0-rc1). The Configurator firmware flasher uses a case-sensitive regex; uppercase RC or underscore separators cause the target board name to be misread, making the firmware invisible in the flasher even after a successful upload.
  • Fix rename script: The output filename used _rc2_ (underscore) but the required format is -rc2_ (hyphen). This would have produced filenames that the Configurator cannot parse.
  • Fix configurator artifact download: The previous instructions used find . -mindepth 2 -type f -exec mv -t . {} + to flatten all files into one directory. This exact pattern caused a Windows .exe to be packaged inside a macOS DMG in the 9.0.0 release. Replaced with explicit per-platform mkdir/mv.
  • PR branch verification (changelog section): gh pr list returns PRs by merge date regardless of target branch, so PRs merged to maintenance-10.x appear in results even if they are not part of the current release. Added commands to verify each PR is actually on the release branch.
  • gh release create examples: Added --prerelease for RC releases and --target <commit-sha> to tag a specific commit atomically without needing local repo access.
  • Post-publish verification: Added a step to verify firmware appears in the Configurator Firmware Flasher tab (with "Show unstable releases" enabled) before publishing the Configurator release. This is the end-to-end validation that the filename format and release structure are correct.

Test plan

  • Read through the updated document for consistency
  • Verify the rename script example produces inav_9.1.0-rc1_TARGET.hex format
  • Confirm no other references to the old uppercase RC naming remain

- Add version string format section: lowercase rc + hyphen required by
  Configurator firmware flasher regex (uppercase RC causes firmware to
  be invisible in flasher after upload)
- Fix rename script: use hyphen separator in output filename to match
  the required inav_<version>-rc<n>_<TARGET>.hex pattern
- Replace directory-flattening find command with platform-organized
  mkdir/mv; flattening caused a Windows .exe inside macOS DMG in 9.0.0
- Add PR branch verification step in changelog section: gh pr list
  shows PRs by date regardless of target branch, so PRs on
  maintenance-10.x can appear falsely
- Update gh release create examples: add --prerelease for RC releases,
  use --target <sha> for atomic tagging at a specific commit
- Add post-publish verification: confirm firmware appears in Configurator
  Firmware Flasher before publishing the Configurator release
@qodo-code-review

Copy link
Copy Markdown
Contributor

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@github-actions

github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown

Branch Targeting Suggestion

You've targeted the master branch with this PR. Please consider if a version branch might be more appropriate:

  • maintenance-9.x - If your change is backward-compatible and won't create compatibility issues between INAV firmware and Configurator 9.x versions. This will allow your PR to be included in the next 9.x release.

  • maintenance-10.x - If your change introduces compatibility requirements between firmware and configurator that would break 9.x compatibility. This is for PRs which will be included in INAV 10.x

If master is the correct target for this change, no action is needed.


This is an automated suggestion to help route contributions to the appropriate branch.

@sensei-hacker sensei-hacker changed the base branch from master to release/9.1 June 5, 2026 19:26
@github-actions

github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown

Test firmware build ready — commit 289dd88

Download firmware for PR #11621

238 targets built. Find your board's .hex file by name on that page (e.g. MATEKF405SE.hex). Files are individually downloadable — no GitHub login required.

Development build for testing only. Use Full Chip Erase when flashing.

@sensei-hacker sensei-hacker merged commit 65dd80d into iNavFlight:release/9.1 Jun 5, 2026
25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant