Skip to content

Conversation

@naspirato
Copy link
Collaborator

@naspirato naspirato commented Nov 25, 2025

Changelog entry

FOR CHANGLOG TEST!
ITS GOOD CHANGES!

Changelog category

  • Not for changelog (changelog entry is not required)

Description for reviewers

Original PR(s)

Metadata

Conflicts Require Manual Resolution

This PR contains merge conflicts that require manual resolution.

Files with conflicts:

How to resolve conflicts:

git fetch origin
git checkout --track origin/cherry-pick-stable-25-2-251125-135815
# Resolve conflicts in files
git add .
git commit -m "Resolved merge conflicts"
git push

After resolving conflicts:

  1. Fix the PR title (remove [CONFLICT] if conflicts are resolved)
  2. Mark PR as ready for review

Git Cherry-Pick Log

=== Cherry-picking 72f7256 ===
Auto-merging ydb/tests/olap/load/lib/tpch.py
CONFLICT (content): Merge conflict in ydb/tests/olap/load/lib/tpch.py

error: could not apply 72f72566f6b... increase timeout for tpch100 (#29440)
hint: After resolving the conflicts, mark them with
hint: "git add/rm <pathspec>", then run
hint: "git cherry-pick --continue".
hint: You can instead skip this commit with "git cherry-pick --skip".
hint: To abort and get back to the state before "git cherry-pick",
hint: run "git cherry-pick --abort".

=== Cherry-picking 6b621df ===
CONFLICT (modify/delete): .github/scripts/cherry_pick.py deleted in HEAD and modified in 6b621dfc047 (Enhance cherry-pick script with support for unmerged PRs and improved error handling).  Version 6b621dfc047 (Enhance cherry-pick script with support for unmerged PRs and improved error handling) of .github/scripts/cherry_pick.py left in tree.
CONFLICT (modify/delete): .github/workflows/cherry_pick.yml deleted in HEAD and modified in 6b621dfc047 (Enhance cherry-pick script with support for unmerged PRs and improved error handling).  Version 6b621dfc047 (Enhance cherry-pick script with support for unmerged PRs and improved error handling) of .github/workflows/cherry_pick.yml left in tree.

error: could not apply 6b621dfc047... Enhance cherry-pick script with support for unmerged PRs and improved error handling
hint: After resolving the conflicts, mark them with
hint: "git add/rm <pathspec>", then run
hint: "git cherry-pick --continue".
hint: You can instead skip this commit with "git cherry-pick --skip".
hint: To abort and get back to the state before "git cherry-pick",
hint: run "git cherry-pick --abort".

=== Cherry-picking 8552c22 ===
[cherry-pick-stable-25-2-251125-135815 e6637836e1d] Enhance cherry-pick script with changelog extraction and improved PR body formatting
 Date: Tue Nov 18 12:55:18 2025 +0100
 2 files changed, 162 insertions(+), 17 deletions(-)

=== Cherry-picking 102ac95 ===
[cherry-pick-stable-25-2-251125-135815 d712c809fcd] Enhance cherry-pick script to avoid branch name conflicts and improve backport comment handling
 Date: Tue Nov 18 13:07:11 2025 +0100
 1 file changed, 31 insertions(+), 6 deletions(-)

=== Cherry-picking f064c5d ===
[cherry-pick-stable-25-2-251125-135815 d370220b0a4] Enhance cherry-pick script to include detailed conflict resolution information
 Date: Tue Nov 18 14:16:29 2025 +0100
 1 file changed, 61 insertions(+), 18 deletions(-)

=== Cherry-picking 391896e ===
Auto-merging .github/actions/validate_pr_description/validate_pr_description.py
[cherry-pick-stable-25-2-251125-135815 f4517e37c6f] Add PR template and category definitions for validation
 Date: Tue Nov 18 14:20:32 2025 +0100
 3 files changed, 83 insertions(+), 62 deletions(-)
 create mode 100644 .github/actions/validate_pr_description/pr_template.py

=== Cherry-picking a22daf4 ===
[cherry-pick-stable-25-2-251125-135815 f403ce54eac] Enhance cherry-pick script with improved error handling and conflict resolution
 Date: Tue Nov 18 15:19:10 2025 +0100
 1 file changed, 49 insertions(+), 40 deletions(-)

=== Cherry-picking ed3267e ===
[cherry-pick-stable-25-2-251125-135815 8bd2b855a16] Enhance cherry-pick script with improved conflict handling and logging
 Date: Tue Nov 18 15:53:02 2025 +0100
 1 file changed, 135 insertions(+), 20 deletions(-)

=== Cherry-picking fccbda3 ===
[cherry-pick-stable-25-2-251125-135815 3990cd97080] Refactor changelog extraction in cherry-pick script
 Date: Tue Nov 18 16:39:19 2025 +0100
 1 file changed, 59 insertions(+), 33 deletions(-)

=== Cherry-picking 88c83ad ===
[cherry-pick-stable-25-2-251125-135815 baab1798166] Enhance cherry-pick script with improved diff link generation
 Date: Tue Nov 18 16:49:48 2025 +0100
 1 file changed, 39 insertions(+), 14 deletions(-)

=== Cherry-picking 1ea50f0 ===
[cherry-pick-stable-25-2-251125-135815 674b58a9327] Enhance cherry-pick script with improved backport comment management
 Date: Tue Nov 18 17:10:39 2025 +0100
 1 file changed, 93 insertions(+), 15 deletions(-)

=== Cherry-picking 1cf3ccb ===
[cherry-pick-stable-25-2-251125-135815 5de6c929146] Refactor cherry-pick script for improved PR validation and changelog extraction
 Date: Tue Nov 18 18:05:22 2025 +0100
 1 file changed, 59 insertions(+), 44 deletions(-)

=== Cherry-picking 6b14cb9 ===
[cherry-pick-stable-25-2-251125-135815 cd620b08f6d] Update cherry-pick script to change cherry-pick command options
 Date: Tue Nov 18 18:15:53 2025 +0100
 1 file changed, 1 insertion(+), 1 deletion(-)

=== Cherry-picking 8805c9a ===
[cherry-pick-stable-25-2-251125-135815 7d27b2fd302] Refactor cherry-pick command in script to simplify handling of empty commits
 Date: Tue Nov 18 18:26:58 2025 +0100
 1 file changed, 2 insertions(+), 1 deletion(-)

=== Cherry-picking 12a4d4d ===
[cherry-pick-stable-25-2-251125-135815 1d199a4df88] Refactor cherry-pick script to streamline commit existence checks and improve error handling
 Date: Tue Nov 18 23:42:22 2025 +0100
 1 file changed, 10 insertions(+), 85 deletions(-)

=== Cherry-picking f2fb02b ===
[cherry-pick-stable-25-2-251125-135815 15d04a63ebe] Enhance cherry-pick script to improve conflict message handling and logging
 Date: Tue Nov 18 23:59:07 2025 +0100
 1 file changed, 103 insertions(+), 28 deletions(-)

=== Cherry-picking 041d2f5 ===
[cherry-pick-stable-25-2-251125-135815 c8c62c2d7d5] Enhance cherry-pick script to improve conflict summary generation
 Date: Wed Nov 19 00:09:41 2025 +0100
 1 file changed, 24 insertions(+), 2 deletions(-)

=== Cherry-picking 0b24c4e ===
[cherry-pick-stable-25-2-251125-135815 96e91fd4595] Refine conflict message extraction in cherry-pick script
 Date: Wed Nov 19 11:02:29 2025 +0100
 1 file changed, 57 insertions(+), 10 deletions(-)

=== Cherry-picking 870456f ===
[cherry-pick-stable-25-2-251125-135815 b54e9594575] Refine changelog category extraction in cherry-pick script
 Date: Wed Nov 19 12:02:02 2025 +0100
 1 file changed, 16 insertions(+), 6 deletions(-)

=== Cherry-picking deede0b ===
[cherry-pick-stable-25-2-251125-135815 1777f0ef49e] Add missing conflict markers for special conflict types in cherry-pick script
 Date: Wed Nov 19 12:09:49 2025 +0100
 1 file changed, 111 insertions(+)

=== Cherry-picking 3363bbf ===
[cherry-pick-stable-25-2-251125-135815 078429a119f] Enhance logging in cherry-pick script for conflict handling
 Date: Wed Nov 19 12:28:08 2025 +0100
 1 file changed, 19 insertions(+), 1 deletion(-)

=== Cherry-picking 6738c61 ===
[cherry-pick-stable-25-2-251125-135815 3a7d5a79a21] Improve conflict handling in cherry-pick script
 Date: Wed Nov 19 15:16:28 2025 +0100
 1 file changed, 34 insertions(+), 2 deletions(-)

=== Cherry-picking 55f9dc4 ===
[cherry-pick-stable-25-2-251125-135815 616490f7e36] Refactor conflict message extraction in cherry-pick script
 Date: Wed Nov 19 15:27:13 2025 +0100
 1 file changed, 159 deletions(-)

=== Cherry-picking 7cfd561 ===
[cherry-pick-stable-25-2-251125-135815 613295cf755] Refactor conflict message extraction in cherry-pick script
 Date: Wed Nov 19 15:27:25 2025 +0100
 1 file changed, 31 insertions(+), 43 deletions(-)

=== Cherry-picking 03bbbf3 ===
[cherry-pick-stable-25-2-251125-135815 15056e44f1d] Improve conflict handling and logging in cherry-pick script
 Date: Thu Nov 20 16:02:08 2025 +0100
 1 file changed, 8 insertions(+), 1 deletion(-)

PR was created by cherry-pick script

iddqdex and others added 25 commits November 25, 2025 13:58
…body formatting

- Added methods to extract changelog category, entry, and description from PR body.
- Improved PR body generation to include extracted changelog information and ensure validation requirements are met.
- Updated workflow configuration to support new changelog features.
… backport comment handling

- Updated datetime formatting to include seconds, preventing branch name conflicts.
- Added method to find and update existing backport comments in original PRs, enhancing comment management.
- Improved logging for comment creation and updates to provide clearer feedback on operations.
…formation

- Updated the `created_backport_prs` structure to store conflicted files alongside target branches and PRs.
- Improved the PR body generation to include a section for files with conflicts, providing links for easier resolution.
- Enhanced conflict handling to return a list of conflicted files, improving logging and user feedback during cherry-pick operations.
- Introduced a new `pr_template.py` file containing PR template and issue reference patterns for the YDB project.
- Updated `validate_pr_description.py` to utilize the new template and patterns, ensuring consistency in PR descriptions.
- Enhanced `cherry_pick.py` to import category definitions and streamline changelog category handling.
…resolution

- Added detailed error handling for the `git rev-parse` command to ensure the repository is cloned before execution.
- Updated exception handling to specify the type of error encountered during PR fetching and automerge attempts.
- Improved conflict detection logic to ensure all changes are captured and logged appropriately.
- Enhanced logging for conflict resolution, providing clearer feedback on the status of conflicted files.
- Added detailed diagnostics for `git merge-base` command to better handle ancestor checks and error reporting.
- Updated conflict resolution logic to capture line numbers of conflicts, improving user feedback on conflicted files.
- Enhanced PR body generation to include links to specific lines in files with conflicts, facilitating easier resolution.
- Introduced a method to find the first line with conflict markers in files, improving conflict detection accuracy.
- Renamed method to extract only the content of the Changelog entry section from PR body.
- Updated logic to collect and merge Changelog entry contents from multiple PRs, improving clarity and usability.
- Enhanced fallback mechanisms for Changelog entry generation, ensuring robust handling of various PR scenarios.
- Updated the logic for generating links to files in PR diffs to use SHA256 hashes of file content, improving accuracy and reliability.
- Introduced a fallback mechanism to link to the PR files page if the diff hash cannot be retrieved.
- Refactored the method for computing file hashes to handle base64-encoded content, ensuring compatibility with GitHub's requirements for diff anchors.
- Updated logic to check for existing backport comments and determine if updates are necessary based on the presence of target branches and workflow URLs.
- Improved handling of comment updates to append results or replace "in progress" lines, ensuring clarity in backport status.
- Enhanced logging for comment updates to provide better feedback on operations related to backport comments.
…extraction

- Enhanced import handling for the PR template to include error logging for import failures.
- Updated PR validation logic to utilize already loaded PR objects, reducing unnecessary API calls.
- Refactored changelog entry extraction to support stopping at the changelog category, improving flexibility.
- Improved file hash computation to handle both text and binary files correctly.
- Enhanced conflict line detection and error handling for better user feedback during cherry-pick operations.
- Modified the cherry-pick command to use '--empty=drop' instead of '--allow-empty', improving handling of empty commits during cherry-picking operations.
…commits

- Removed the '--empty=drop' option from the cherry-pick command, as it is unnecessary due to Git's default behavior of skipping empty commits. This change streamlines the command and improves clarity in the script.
… improve error handling

- Removed the method for checking if a commit exists in the target branch, simplifying the cherry-pick process.
- Updated the cherry-pick logic to handle cases where commits are already applied, improving user feedback and logging during cherry-pick operations.
…ogging

- Updated the conflict resolution logic to capture and display detailed conflict messages alongside file paths and line numbers.
- Introduced a new method to extract conflict messages from git output, enhancing clarity during manual resolution.
- Improved logging to provide detailed information about detected conflicts, aiding in troubleshooting and resolution efforts.
- Updated the conflict handling logic to create a detailed summary of files with conflicts, including file paths, line numbers, and associated messages.
- Improved the formatting of PR summaries for better readability, ensuring clarity when conflicts arise during cherry-picking operations.
- Enhanced the logic for capturing conflict messages to ensure accurate matching of file paths, including handling both relative and absolute paths.
- Improved the detection of continuation lines in conflict messages, allowing for better summarization of conflicts.
- Added a cleanup step to quit the cherry-pick operation if no commits are left to apply, improving script robustness.
- Updated the logic to collect and determine the changelog category from multiple PRs, ensuring it is only set if all categories are the same.
- Improved handling of category extraction to allow for better flexibility when dealing with differing categories across PRs.
- Enhanced comments for clarity on the purpose of category determination in the changelog process.
…k script

- Introduced a new method to add Git conflict markers for conflict types (DU, UD, AA) where they are not generated automatically.
- Enhanced the conflict resolution process by ensuring visibility of conflicts in PR diffs, improving user experience during cherry-picking.
- Updated logging to provide feedback when conflict markers are added, aiding in troubleshooting and resolution efforts.
- Added debug and warning logs to provide better visibility into the conflict resolution process, including details on the number of status lines and specific conflict types (DU, UD, AA).
- Improved error handling by including exception information in warning logs when adding conflict markers fails.
- Updated logging to ensure clarity on the state of conflict markers and the conditions under which they are added or skipped.
- Added logic to skip files that already have conflict markers to prevent overwriting existing information during cherry-picking.
- Introduced a mechanism to track processed files, ensuring that multiple conflicts in the same file are handled sequentially without duplication.
- Enhanced logging to provide clearer insights into the conflict resolution process, including reasons for skipping files and details on existing conflict markers.
- Replaced the previous method for extracting conflict messages with a new function that accurately matches file paths from git output, improving reliability.
- Enhanced the handling of conflict messages to ensure both relative and absolute paths are considered, streamlining the conflict resolution process.
- Removed redundant code related to conflict message extraction, simplifying the overall logic and improving maintainability.
- Introduced a new method to find conflict messages for specific files, improving the accuracy of message matching from git output.
- Simplified the conflict message extraction logic by consolidating redundant code, enhancing maintainability and readability.
- Ensured compatibility with both relative and absolute file paths in conflict message matching, streamlining the conflict resolution process.
- Added a warning log for unexpected clean working tree state after conflict detection, indicating potential auto-resolution or inconsistent state.
- Updated the cherry-pick logic to use '--skip' instead of '--quit' when a commit is already in the target branch, enhancing the cleanup process during cherry-picking.
@naspirato naspirato marked this pull request as ready for review November 25, 2025 13:01
@naspirato naspirato requested review from a team as code owners November 25, 2025 13:01
@naspirato naspirato closed this Nov 25, 2025
@github-actions
Copy link

github-actions bot commented Nov 25, 2025

🟢 2025-11-25 13:01:56 UTC The validation of the Pull Request description is successful.

@github-actions
Copy link

github-actions bot commented Nov 25, 2025

2025-11-25 13:02:23 UTC Pre-commit check linux-x86_64-relwithdebinfo for 793dc5f has started.
2025-11-25 13:02:40 UTC Artifacts will be uploaded here
2025-11-25 13:05:09 UTC ya make is running...
🔴 2025-11-25 13:06:35 UTC Build failed, see the logs. Also see fail summary

@github-actions
Copy link

github-actions bot commented Nov 25, 2025

2025-11-25 13:02:42 UTC Pre-commit check linux-x86_64-release-asan for 793dc5f has started.
2025-11-25 13:02:47 UTC Artifacts will be uploaded here
2025-11-25 13:05:06 UTC ya make is running...
🔴 2025-11-25 13:06:21 UTC Build failed, see the logs. Also see fail summary

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.

3 participants