question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Idea: allow a `csproj` file to recommend (but not depend on) `vsix` extensions

See original GitHub issue

Visual Studio Version: 16.0.0 Preview 4.0

Summary: As a developer who’s new to a project, it would be a nice onboarding measure if the IDE could recommend useful vsix extensions (and possibly NuGet packages, etc.) that aren’t strictly speaking required. VS already does this to an extent, but it doesn’t currently appear possible for the author/team that maintains a particular project or solution to customize this behavior.

For extensions the lack of which actually would impede the developer workflow, an additional Severity could be introduced, corresponding to the Error List.

When lacking an extension, an information bar is shown to offer installing the extension. Given a high severity, a modal dialog might be preferable.

Proposed syntax:

<ItemGroup>
  <SuggestedExtension ID="51b81721-cf4e-4ce0-a595-972b1ca2a186" Title="SCSS Refactoring" Severity="Info" />
</ItemGroup>

Examples:

  • an ASP.NET project could suggest extensions such as Web Compiler, SCSS Refactoring, etc., with Severity Info
  • a C# library that heavily follows a certain coding standard could suggest an extension that enforces it, with Severity Warning
  • a mandatory part of the toolchain, such as version control or a post-build step, possibly with Severity Error

User Impact:

The impact is comparable to a How to Build section in a good readme: it helps with onboarding, but requires maintainer discipline. Unlike such a section, it adds a level of automation to the process.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:7 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
davkeancommented, Mar 5, 2019

@chucker VS picks up the .vsconfig if its included in the solution as an item, and checks against installed features. Checking against installed extensions would be a nature extension of that.

1reaction
davidwengiercommented, Feb 28, 2019

I’ve worked on projects in the past where this would be a great idea. Specifically in that case it was the Razor Generator extension, and it was compounded by their being a few extensions with that name and having to know which was the right one to pick. If it was feasible I’d even support an <ExtensionReference> concept that just installs the extension directly.

The question is whether these extensions would actually be better off being re-written as nuget packages that contain roslyn analyzers (for your 2nd example) or targets files (for your 3rd example).

Read more comments on GitHub >

github_iconTop Results From Across the Web

VSSDK: can't build solution with mixed style csproj-projects ...
So no packages.config, no project.json. The VSIX project depends on Microsoft.VSSDK.BuildTools nuget package and other packages from ...
Read more >
Could not load file or assembly Microsoft.Extensions. ...
I have a Visual Studio 2019 extension that references Microsoft.Extensions.Configuration v3.1.1. This assembly gets loaded by a code ...
Read more >
How to: Add a Dependency to a VSIX Package - Visual ...
vsixmanifest file in the Design view. Go to the Dependencies tab and click New. To add an installed extension: in the Add New...
Read more >
PSA: If your VS Code C# extension stopped working...
Simply go to Edit->Preferences->Editor (in Unity) and you'll now have a nice option box for .csproj file production. No need to check anything, ......
Read more >
Build a Multi-Project Visual Studio Template | Tony Sneed's Blog
Build a Multi-Project Visual Studio Template. Download the code for this article here. (Zip file updated to include source code for VSIX and...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found