Skip to content

Conversation

@wdconinc
Copy link
Contributor

Briefly, what does this PR introduce?

This PR is a quality-of-life improvement in advance of #35. It is always a bit annoying to figure out which of the cherry-picks need to be retained. This PR will print the ones that can be dropped, but more importantly it won't fail on them when cherry-pick wants to apply them again (since they will be skipped).

Copilot AI review requested due to automatic review settings December 25, 2025 01:08
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds resilience to the cherry-pick process by detecting and skipping commits that have already been applied to the current branch. This prevents failures when cherry-picks are re-listed and improves the user experience by clearly indicating which cherry-picks can be safely dropped.

Key Changes:

  • Adds ancestor checking before applying cherry-picks to prevent duplicate application
  • Provides informative console output for skipped commits

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings December 25, 2025 01:16
@wdconinc wdconinc enabled auto-merge (squash) December 25, 2025 01:16
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

eval "declare -A SPACK_CHERRYPICKS_FILES_ARRAY=(${SPACK_CHERRYPICKS_FILES})"
for hash in ${SPACK_CHERRYPICKS} ; do
if git -C ${SPACK_ROOT} merge-base --is-ancestor "${hash}" HEAD ; then
echo "Skipping already-applied ${hash}"
Copy link

Copilot AI Dec 25, 2025

Choose a reason for hiding this comment

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

The hyphenation in "already-applied" is inconsistent with standard English usage. The past participle "applied" should not be hyphenated when used with "already" as it's not functioning as a compound modifier before a noun.

Suggested change
echo "Skipping already-applied ${hash}"
echo "Skipping already applied ${hash}"

Copilot uses AI. Check for mistakes.
eval "declare -A SPACKPACKAGES_CHERRYPICKS_FILES_ARRAY=(${SPACKPACKAGES_CHERRYPICKS_FILES})"
for hash in ${SPACKPACKAGES_CHERRYPICKS} ; do
if git -C ${SPACKPACKAGES_ROOT} merge-base --is-ancestor "${hash}" HEAD ; then
echo "Skipping already-applied ${hash}"
Copy link

Copilot AI Dec 25, 2025

Choose a reason for hiding this comment

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

The hyphenation in "already-applied" is inconsistent with standard English usage. The past participle "applied" should not be hyphenated when used with "already" as it's not functioning as a compound modifier before a noun.

Suggested change
echo "Skipping already-applied ${hash}"
echo "Skipping already applied ${hash}"

Copilot uses AI. Check for mistakes.
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.

2 participants