-
Notifications
You must be signed in to change notification settings - Fork 13
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
Sprint 3 improvements #30
Conversation
…elay in 'more detail' reduced
…ates correct problem count
5e6158b
to
79e6f21
Compare
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.
Seems like not all the previous issues are resolved, namely:
- The discard button now no longer removes the highlighting, in addition to continuing to show a discarded problem's info. Switching between files will remove the highlighting, but the problem still remains
- The apply button similarly doesn't change the UI, nor does it actually change the code in the highlighted region, however it does remove the problem highlight when switching back from another file.
In addition there are a few new functionality issues. Below are the two main ones:
View problems in other files does not update
If a user analyzes a file, let's call it file_1 and then goes to another file, file_2, after the results appear but before viewing any results the side panel in file_2 will correctly show "file_1" as an option with files in the state, if they choose to analyze file_2, wait for the results to populate but then change back to file_1 the side panel in file_1 will not show "file_2" as another file with problems.
Both of these images are taken after file_1 and file_2 have a valid analysis, with no seen problems.
To rectify, file_1's side panel should show "Problems in other files" for files analyzed after file_1.
Recommendations are global
Currently generating a recommendation, along with the recommendation history, are global to the application and not specifically tied to each problem. This leads to incorrect recommendations already shown when clicking on other detections in the list.
Example:
A recommendation was generated for the problem detection below.
However when switching to another problem in the file (or even in another file)
This will lead to some confusion as the state of the side panel is not properly represented.
To rectify:
The generated content should be stored for each problem, rather than globally.
Other issues:
- The buttons to change between generated recommendation drafts should change color when you're at the beginning or end of the list
@AviGopal, I have made changes to address the issues. Before testing, please do
The issue was due to negative line number being sent by Backend primarily in
Similar to discard problem mentioned above; Hopefully should not happen now.
The issue is fixed.
The issue is fixed. I investigated the issue in detail and found out that I was not resetting the state upon application state changes and also localized recomendation to its problem. Should be fixed now.
I spent a lot of time on this issue to investigate in detail; the first issue was we were not sending data upon webview initialization - what I mean by this is when a user closes the extension then opens again; Vscode initializes the webview from scratch i.e local state is destroyed; I have added persistence to local storage of webview which is not destroyed by vscode; that leads to smooth user-expierence. The second issue was getting errors in the message that information webview of the current file, that is fixed as well. Let me know your thoughts after testing again, Hopefully, you will have smooth and stable expierence. |
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.
Seems like the issues with discarding problems and generating/applying fixes have been partially resolved. As they now correctly remove the problem from the state for that file however, there is still some unintended behavior.
There is now leakage of state after interacting with the problem information panel.
Details:
If there is a completed analyses in two or more files. Reviewing a problem in one file and interacting with the discard, endorse or apply buttons will merge all problem detections into the current file.
To replicate:
- Run an analysis in two or more files and wait for each to complete
- Discard a problem in the first file analyzed
- You should see that the number of highlighted regions have increased; with the detection areas from the other file being present
- Clicking on any of these will show the detection information for a file other than the active file, The logs will report this this as well.
Note the log messages at the bottom
Furthermore, the detected problems in other files dialog will not show the other analyzed file.
Since this was not an issue in the previous build, there must have been an oversight when modifying the decoration handler
To rectify:
Double check that decorations are only added for the currently active file.
…TextEditor at every stage and filter decoration according to problem path
…o accomodate editor changes
…in highlights fix
Everything seems to be working okay after my testing today. I'll merge this branch in a bit if there's nothing left for you to add |
Addressed Issues
Other Files with problems
shows the same file multiple times, e.g., views.py is fixed.Changes
feedback/read
is integrated.