Skip to content
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

Coverage window is blank after VS Update #15

Closed
usjpaq opened this issue Feb 26, 2021 · 20 comments
Closed

Coverage window is blank after VS Update #15

usjpaq opened this issue Feb 26, 2021 · 20 comments

Comments

@usjpaq
Copy link

usjpaq commented Feb 26, 2021

After a recent update to VS for Mac, the Coverage window (pad) is blank.

About Visual Studio
Visual Studio Community 2019 for Mac
Version 8.8.10 (build 2)
Installation UUID: abf5071e-d0a5-4a9b-99a4-4c3dcae42d80
GTK+ 2.24.23 (Raleigh theme)
Xamarin.Mac 6.18.0.23 (d16-6 / 088c73638)

Package version: 612000122

Mono Framework MDK
Runtime:
Mono 6.12.0.122 (2020-02/c621c35ffa0) (64-bit)
Package version: 612000122

Roslyn (Language Service)
3.8.0-5.20519.18+4c195c3ac1974edcefa76774d7a59a2350ec55fa

NuGet
Version: 5.8.0.6860

.NET Core SDK
SDK: /usr/local/share/dotnet/sdk/5.0.103/Sdks
SDK Versions:
5.0.103
5.0.102
3.1.406
3.1.405
3.1.402
MSBuild SDKs: /Applications/Visual Studio.app/Contents/Resources/lib/monodevelop/bin/MSBuild/Current/bin/Sdks

.NET Core Runtime
Runtime: /usr/local/share/dotnet/dotnet
Runtime Versions:
5.0.3
5.0.2
3.1.12
3.1.11
3.1.8
2.1.23
2.1.22

.NET Core 3.1 SDK
SDK: 3.1.406

Xamarin.Profiler
Version: 1.6.15.68
Location: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

Updater
Version: 11

Apple Developer Tools
Xcode 12.4 (17801)
Build 12D4e

Xamarin.Mac
Version: 7.4.0.10 (Visual Studio Community)
Hash: a4c70e7d0
Branch: xcode12.4
Build date: 2021-02-17 17:40:51-0500

Xamarin.iOS
Version: 14.10.0.4 (Visual Studio Community)
Hash: 5a05865f6
Branch: xcode12.4
Build date: 2021-01-28 02:30:23-0500

Xamarin Designer
Version: 16.8.0.510
Hash: 44e3f3ce9
Branch: remotes/origin/d16-8
Build date: 2020-12-10 00:06:14 UTC

Xamarin.Android
Not Installed

Microsoft OpenJDK for Mobile
Java SDK: Not Found

Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

Android SDK Manager
Version: 16.8.0.32
Hash: 01a7774
Branch: remotes/origin/d16-8
Build date: 2021-01-14 00:34:58 UTC

Android Device Manager
Version: 16.8.0.46
Hash: 0a81419
Branch: remotes/origin/d16-8
Build date: 2021-01-14 00:35:22 UTC

Build Information
Release ID: 808100002
Git revision: f81ffa2444a28c09f173849935ec9ee0195a5b17
Build date: 2021-02-18 12:02:12-05
Build branch: release-8.8
Xamarin extensions: f81ffa2444a28c09f173849935ec9ee0195a5b17

Operating System
Mac OS X 10.16.0
Darwin 20.3.0 Darwin Kernel Version 20.3.0
Thu Jan 21 00:07:06 PST 2021
root:xnu-7195.81.3~1/RELEASE_X86_64 x86_64

Enabled user installed extensions
Code Coverage 1.1

Log file excerpt:

Ide.2021-02-15__09-31-42.log
176:INFO [2021-02-15 09:31:47Z]: Add-in loaded: CodeCoverage.Code Coverage
222:2021-02-15 09:31:50.175 VisualStudio[2100:2991004] warning: Could not load signature of CodeCoverage.Coverage.CoverletCoverageProvider:Prepare due to: Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
223:2021-02-15 09:31:50.175 VisualStudio[2100:2991004] warning: Could not load signature of CodeCoverage.Coverage.ICoverageProvider:Prepare due to: Could not load file or assembly 'Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
227: at CodeCoverage.CoverageWidget..ctor (CodeCoverage.Coverage.ILoggingService loggingService, CodeCoverage.IStatusBar statusBar) [0x00019] in :0
228: at CodeCoverage.Coverage.CoveragePadWidget..ctor () [0x00017] in :0
229: at CodeCoverage.Coverage.CoveragePad.Initialize (MonoDevelop.Ide.Gui.IPadWindow window) [0x00007] in :0

@ademanuele
Copy link
Owner

Hi,

Thanks for your feedback.
This is happening likely due to the extension not being compatable with the latest Visual Studio version.

I have just released version 1.2 of the extension built for the latest Visual Studio.
Updating to that extension should fix the issue you're seeing.

Regards,
Arthur

@usjpaq
Copy link
Author

usjpaq commented Mar 22, 2021

This issue is resolved with version 1.1 of this plugin and VS for Mac 8.9.2 build 0

@rudagaras
Copy link

Hi, same issue with VS 8.9.3 (build 13)

@DevaNathan94
Copy link

Hi, Facing same issue with VS 8.9.3 (build 13)

@SandraHicks
Copy link

Also facing this issue with 8.9.5 (Build 4) on MacOS.
Actually, it works just after installation and a first restart so the pad appears in the menu. If I restart VS once afterwards, it is blank until I reinstall the plugin.

@ademanuele
Copy link
Owner

Hello all. Thank you for your feedback on this issue.
I am looking into it shortly.

I believe this is caused by the extension being compiled specifying a specific version of the Unit Testing Visual Studio extension. Whereas any version should be fine for this extension.

I'll try and fix this once and for all as this is a recurring issue it seems.

@ademanuele
Copy link
Owner

Just released a new version (v1.3).

Try it out. Should hopefully fix the issue once and for all.

Will keep this issue open until the next version of VS to see if another update will affect it.

@DragonTM
Copy link

DragonTM commented May 7, 2021

I have 1.3 plugin installed and VS 8.9.8.
Unfortunately, the coverage pan is blank.
It is first time I am using the tool.
I hope I did everything right.

@ademanuele
Copy link
Owner

@DragonTM Thanks for letting me know.

I doubt you did anything wrong. This seems to be a recurring issue I cannot get to the bottom of.
Will look into it again and make a new version.

@ademanuele
Copy link
Owner

Actually, I am having a bit of trouble replicating it this time round.

I have updated my VS to v8.9.8 and installed v1.3 of the extension and it worked right away.

Any chance anyone on this thread could try installing my other Code Distribution extension and let me know if that presents the same issue with the pad being blank after installing? It would help a lot in diagnosing this.

@ademanuele
Copy link
Owner

New version out.

I have replaced the GTK UI with native OSX UI. I suspect that was having trouble.
We'll see if this fixes it.

@Qythyx
Copy link

Qythyx commented Jun 7, 2021

I'm having the same issue, but maybe a little different.

If I install the extension, and restart VS then it shows up fine.

If I restart VS after that then the pad is blank. I can't find anyway to get the Coverage pad to display properly again except to uninstall the extension (restart VS) and reinstall the extension (restart VS again). But then again it only shows once. Successive VS restarts won't show it.

@ademanuele
Copy link
Owner

Looking a bit closer at @usjpaq 's original post.
It looks like the issue is actually that the extension cannot find the TestPlatform library when launching.

Which might make sense if its failing after a Visual Studio update.
Will try and include the library as part of the extension and see if that solves it.

@martinsmyllie
Copy link

I see the same issue as @Qythyx with the coverage pad being blank. Whilst a VS update could be the catalyst for a problem, a definitely see the problem without an upgrade being involved. I switch between solutions a lot, and wonder if it's related to that. I can always get the extension back by an uninstall & reinstall cycle.
@ademanuele are there any specific logs I could look in to help diagnose the problem?

@martinsmyllie
Copy link

@ademanuele I don't have the same issue with the Code Distribution Plugin. Also I've been using coverage a lot in the last couple of days, and have had the coverage window go blank without restarting, upgrading or switching solution.

@ademanuele
Copy link
Owner

Thanks for the feedback guys.
I am also wondering if the specific solution that is loaded has something to do with this crash.
Its a hard one to analyse as it doesn't seem to happen when VS for Mac is hooked up to the debugger.

@usjpaq has provided very good stack trace info there, not sure how he got it though. Maybe you could enlighten us actually, I'd be curious to know how you got that stack trace out of VS. 😃

Looking at that though, it seems like an assembly can't be found. Which would be quite strange since it works on first launch.
I'll look at this issue some more today.

@ademanuele
Copy link
Owner

So I figured out how to get that stack trace for the exception.
Help > Open Log Directory for people who are interested.

And yeah, I have been able to replicate this but not while connected to a debugger.
And from the log, it does seem like it can't resolve the assembly.
No idea why, that assembly should be offered by Visual Studio itself.

There is only one NuGet package with that name but its not made by Microsoft.
This SO thread seems to suggest there's this other Microsoft package that should have the assembly in there.
Adding that does not solve the problem.

SO this needs more investigation.
Not sure what to try next. Any suggestions are welcome. :D

@ademanuele
Copy link
Owner

Right.

I think I got to the bottom of it.
My suspicion is that Visual Studio does not immediately try to load the extension on startup when the extension is newly installed. It'll launch it a few seconds after.

But then subsequent launches, it'll load it a bit sooner.
So I think that is happening is that Visual Studio is loading the Code Coverage extension before loading the Unit Testing extension in which the TestPlatform.ObjectModel assembly is provided.

Couldn't figure out how to solve that ordering if that is indeed the issue.

So I removed the dependency on the TestPlatform.ObjectModel.
Thankfully was not such a big job.

New version (v2.0.1) is out now.
Download it and let me know if you run into issues again.
I've tried launching and relaunching VS a good number of times and the pad launched just fine with the new version.

Alrighty then. Now for a stiff drink. 🥃

@Qythyx
Copy link

Qythyx commented Jul 26, 2021

The fix seems to have worked for me. Since upgrading the problem hasn't happened.

Thanks!!

@ademanuele
Copy link
Owner

That's good to hear @Qythyx ! 😄

I'll close this issue. I'm fairly confident this issue is resolved now.
Thank you everyone for helping resolve it!

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

No branches or pull requests

8 participants