Skip to content

Conversation

@sensei-hacker
Copy link
Member

@sensei-hacker sensei-hacker commented Dec 19, 2025

User description

Summary

Updates the "Branching and release workflow" section in Development.md to reflect the current maintenance branch strategy instead of the outdated release branch workflow.

Changes

  • Replaced outdated workflow: Removed references to old release_x.y.z branches and "all development occurs on master"
  • Documented maintenance branches: Explains current version (e.g., maintenance-9.x) and next major version (e.g., maintenance-10.x) branches
  • Generic terminology: Uses "current version" and "next major version" with examples, so documentation remains valid when version 11, 12, etc. arrive
  • Target branch guidance: Clear criteria for choosing between current version vs next major version branches
  • Updated workflow examples: Git commands now show branching from upstream/maintenance-9.x instead of master

Motivation

The existing documentation was misleading contributors:

  • Stated "Normally, all development occurs on the master branch" (no longer true)
  • Described release_x.y.z branches that aren't used in current workflow
  • Didn't mention maintenance-X.x branches that are actively used
  • Contributed to PRs being incorrectly targeted at master instead of maintenance branches

Testing

  • Documentation builds correctly (Markdown format)
  • Examples use current branch names (maintenance-9.x, maintenance-10.x)
  • Future-proof terminology ensures docs won't need rewriting for version 11+

Related

🤖 Generated with Claude Code


PR Type

Documentation


Description

  • Replaces outdated release branch workflow with current maintenance branch strategy

  • Documents maintenance-X.x branches for backward-compatible and breaking changes

  • Provides clear guidance on choosing correct target branch for contributions

  • Updates workflow examples to branch from maintenance branches instead of master

  • Adds emphasis that most contributions should target maintenance branches


Diagram Walkthrough

flowchart LR
  A["Contributor"] -->|"Creates feature branch from"| B["maintenance-9.x<br/>Current Version"]
  A -->|"Creates feature branch from"| C["maintenance-10.x<br/>Next Major Version"]
  B -->|"Bug fixes &<br/>backward-compatible changes"| D["Release Candidate"]
  C -->|"Breaking changes &<br/>new major features"| E["Future Major Release"]
  D -->|"Periodic merge"| F["master"]
  E -->|"Periodic merge"| F
Loading

File Walkthrough

Relevant files
Documentation
Development.md
Update branching documentation to maintenance branch workflow

docs/development/Development.md

  • Replaced outdated release_x.y.z branch references with current
    maintenance-X.x strategy
  • Added comprehensive branching section explaining current version and
    next major version branches
  • Documented decision criteria for targeting appropriate maintenance
    branch
  • Included practical git command examples for working with maintenance
    branches
  • Added warning that most contributions should target maintenance
    branches, not master
+86/-6   

Replace outdated branching documentation with current maintenance
branch strategy. Uses generic terminology (current/next version)
with examples so documentation remains valid across versions.

Changes:
- Document maintenance-X.x branches for backward-compatible changes
- Document maintenance-(X+1).x for breaking changes
- Update workflow examples to branch from maintenance branches
- Remove outdated release_x.y.z branch references
- Add guidance on choosing correct target branch

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@qodo-code-review
Copy link
Contributor

qodo-code-review bot commented Dec 19, 2025

PR Compliance Guide 🔍

All compliance sections have been disabled in the configurations.

Apply Qodo bot suggestions to improve documentation:

1. Add "Propagating Changes Between Maintenance Branches" section
   - Explains how changes should be merged forward from current to next version
   - Prevents regressions and lost fixes in future major versions
   - Provides clear example for maintainers

2. Simplify fork update workflow
   - Replace multi-step checkout/merge/push with direct push command
   - More efficient: git push origin upstream/maintenance-9.x:maintenance-9.x
   - No local checkout needed
@sensei-hacker sensei-hacker merged commit f644fa2 into iNavFlight:maintenance-9.x Dec 21, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant