If libman.json is open but not initialized, adding a new library via the wizard fails to edit the document
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 38/100
Research direction
Start at InstallDialogViewModel.InstallPackageAsync(), then follow InsertIntoTextBuffer() and FormatSelection() using the reported call stack. Reproduce the wizard flow with libman.json open but unfocused in Visual Studio, and verify that completing installation edits the document and installs the selected library.
Written by the indexing model from the issue text.
Description
Functional impact
Completing the wizard does not accomplish the task as expected.
Minimal repro steps
- Have a solution with a libman.json file open.
- Close the solution with a different file as the active document.
- Reopen the solution, without setting focus to the libman.json tab
- Add -> New Client Library, fill out the wizard and install
Expected result
The libman.json file should be edited to include the new library, and the library should be installed.
Actual result
No change in the libman.json file, library is not installed.
Further technical details
This is occurring because there is a text buffer open but the TextView (and its TextViewData) is not yet initialized.
Callstack:
Microsoft.Web.LibraryManager.Vsix.dll!Microsoft.Web.LibraryManager.Vsix.UI.Models.InstallDialogViewModel.FormatSelection(Microsoft.VisualStudio.Text.ITextBuffer textBuffer, int insertionIndex, string insertionText) Line 613 C#
Microsoft.Web.LibraryManager.Vsix.dll!Microsoft.Web.LibraryManager.Vsix.UI.Models.InstallDialogViewModel.InsertIntoTextBuffer(Microsoft.VisualStudio.TextManager.Interop.IVsTextBuffer document, Microsoft.Web.LibraryManager.LibraryInstallationState libraryInstallationState, Microsoft.Web.LibraryManager.Manifest manifest) Line 585 C#
Microsoft.Web.LibraryManager.Vsix.dll!Microsoft.Web.LibraryManager.Vsix.UI.Models.InstallDialogViewModel.InstallPackageAsync() Line 539 C#
- Dominant language
- C#
- Stars
- 486
- Forks
- 91
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from aspnet/LibraryManager
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
aspnet/LibraryManager#824 · 1 comment · 3 reactions ·
-
Difficulty 1/5 Under an hour Newbie friendliness 68/100
aspnet/LibraryManager#804 · 2 reactions ·
-
Difficulty 1/5 Under an hour Newbie friendliness 48/100
aspnet/LibraryManager#829 · 1 comment · 3 reactions ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
aspnet/LibraryManager#820 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
aspnet/LibraryManager#808 · 5 comments ·
All issues in aspnet/LibraryManager
Similar issues
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 90/100
-
Type: enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
apache/arrow-adbc#4809 ·
-
type/automation type/tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
microsoft/vscode-azurefunctions#5197 · 1 comment ·
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
microsoft/microsoft-ui-reactor#1274 ·