Skip to content

Add backport tips and PR title convention to CLAUDE.md#7493

Open
gerrod3 wants to merge 1 commit intopulp:mainfrom
gerrod3:update-claude-md
Open

Add backport tips and PR title convention to CLAUDE.md#7493
gerrod3 wants to merge 1 commit intopulp:mainfrom
gerrod3:update-claude-md

Conversation

@gerrod3
Copy link
Contributor

@gerrod3 gerrod3 commented Mar 18, 2026

Summary

  • Add a "Fixing failed backports" section to CLAUDE.md with tips on handling patchback cherry-pick failures (e.g. older branches using requirements.txt vs pyproject.toml).
  • Document the [<version>] PR title convention for backport PRs.
  • Add notes about AI attribution and changelog formatting to the Contributing section.

Made with Cursor

CLAUDE.md Outdated
## Contributing

When preparing to commit and create a PR you **must** follow our [PR checklist](https://pulpproject.org/pulpcore/docs/dev/guides/pull-request-walkthrough/)
When preparing to commit and create a PR you **must** follow our [PR checklist](https://pulpproject.org/pulpcore/docs/dev/guides/pull-request-walkthrough/) Important to note is the AI attribution requirement in our commit messages. Also, note that our changelog entries use single ticks for code related text.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was about to create a PR to add the single ticks observation to CLAUDE.md 😅
But I guess it's useful to state that the changes fragments are markdown documents (which implicitly means single ticks, as opposed to rst double ticks).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'changelog entries are rendered into markdown' or 'changelog entries are markdown'?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the latter

When patchback fails to cherry-pick a PR into an older branch, you need to manually apply the equivalent change. Key things to know:

- Older branches (e.g. 3.49, 3.63) may use `requirements.txt` for dependencies, while newer branches use `pyproject.toml`. Always check which file the target branch uses before applying changes.
- When creating a PR include `[<version>]` in the PR title (e.g. `[3.49] Update pyopenssl requirement from <26.0 to <27.0`).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think any of our documents mention that we prefer to use git cherry-pick -x when doing backports

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Usually it'll choose -x since it reads the patchback bot's comments (at least it does when I prompt it) and sees the command the bot failed to finish. Let me test another backport without the explicit mention.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, with the prompt "Let's backport the new datarepair management command to 3.85 and 3.105" it produced this: #7494 and didn't use -x option. Let me add it to the tips.

Co-authored-by: Claude <noreply@anthropic.com>
Made-with: Cursor
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.

3 participants