Skip to content

Enable "Always suggest updating pull request branches" (align with py-libp2p) #131

Description

@acul71

Summary

multiformats/py-multiaddr and libp2p/py-libp2p use different GitHub repository settings for keeping PR branches in sync with the default branch.

Repo allow_update_branch Default branch
libp2p/py-libp2p true main
multiformats/py-multiaddr false master

(allow_update_branch is the API field for the UI option Settings → General → Pull Requests → Always suggest updating pull request branches.)

Why it matters

When this setting is disabled, GitHub often does not show the Update branch control on a PR—even if the branch is behind master and merges cleanly—unless branch protection requires branches to be up to date before merging.

Maintainers and contributors may still merge (squash/rebase/merge commit), but syncing the PR branch with the latest default branch is less discoverable: authors are more likely to rely on manual git fetch / git merge origin/master (or rebase) on their fork.

With the setting enabled (as on py-libp2p), GitHub suggests Update branch / Update with rebase when a PR is behind the base branch, has no conflicts, and the viewer has permission to update the head branch (docs).

This came up while reviewing fork PRs where local git rev-list showed divergence from origin/master, but the GitHub UI did not offer Update branch on py-multiaddr.

Proposal

Enable Always suggest updating pull request branches on multiformats/py-multiaddr to match libp2p/py-libp2p, unless there is a deliberate reason to keep it off.

Tasks (maintainers)

  • Repo Settings → General → Pull Requests → enable Always suggest updating pull request branches
  • (Optional) Note the convention in contributor docs if we document PR workflow anywhere

Notes

  • This does not force PRs to be up to date before merge; it only makes the update action easier to find when appropriate.
  • Update branch still requires write access to the repository that owns the PR head branch (fork authors, or upstream maintainers when Allow edits by maintainers is enabled on the PR).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions