-
Notifications
You must be signed in to change notification settings - Fork 10.3k
fix(patch): cherry-pick 934b309 to release/v0.19.2-pr-14566 to patch version v0.19.2 and create version 0.19.3 #14571
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
… line wrapping. (#14566)
Summary of ChangesHello @gemini-cli-robot, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces a critical fix to the Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request cherry-picks a fix to correctly handle wrapped lines in shell command output. The change in shellExecutionService.ts correctly reconstructs long lines that were wrapped by the terminal. However, I've identified a potential regression in this new logic that could cause loss of significant trailing whitespace on the last line of a command's output. I've provided a suggestion to fix this while preserving the intended wrapping fix.
| let trimRight = true; | ||
| if (i + 1 < buffer.length) { | ||
| const nextLine = buffer.getLine(i + 1); | ||
| if (nextLine?.isWrapped) { | ||
| trimRight = false; | ||
| } | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The current logic for determining trimRight may cause a regression. For the last line in the buffer, trimRight defaults to true, which will remove any intentional trailing whitespace. This could break tests that expect trailing whitespace to be preserved, such as the existing should not add extra padding but preserve explicit trailing whitespace test.
The logic should be adjusted to not trim the last line of the buffer if it's a standalone line (i.e., not part of a wrapped sequence). This preserves potentially significant trailing whitespace.
let trimRight = true;
if (i + 1 < buffer.length) {
const nextLine = buffer.getLine(i + 1);
if (nextLine?.isWrapped) {
trimRight = false;
}
} else if (!line.isWrapped) {
// Don't trim the last line of the buffer if it's a standalone line
// to preserve potentially significant trailing whitespace.
trimRight = false;
}|
Size Change: +380 B (0%) Total Size: 21.4 MB ℹ️ View Unchanged
|
This PR automatically cherry-picks commit 934b309 to patch version v0.19.2 in the stable release to create version 0.19.3.