xunit.runner.wpf icon indicating copy to clipboard operation
xunit.runner.wpf copied to clipboard

Convert to .NET Core 3.0

Open Pilchie opened this issue 7 years ago • 9 comments

Pilchie avatar Dec 01 '18 01:12 Pilchie

@jaredpar @jmarolf @DustinCampbell Should convert the other projects of course, and no idea if the nuget package generation still works (probably not).

Pilchie avatar Dec 01 '18 01:12 Pilchie

Given dependency resolution order (especially in .NET Core), it wasn't possible for that class to exist in xunit.runner.utility.dll, because it is required to successfully locate and load xunit.runner.utility.dll. So it became an internal class that was imported into each runner.

There is really no way for us to provide this as a DLL to you as a result. :(

bradwilson avatar Dec 01 '18 09:12 bradwilson

So, what's a third party runner to do? Currently we use it here: https://github.com/Pilchie/xunit.runner.wpf/blob/master/xunit.runner.worker/XunitUtil.cs#L12

Pilchie avatar Dec 01 '18 20:12 Pilchie

@jaredpar seems like once this is merged, you could do your original plan to multi-target the worker process and have it run on either .NET Core or .NET Framework, or maybe both (though that might be difficult, as you'd need different publish directories?)

Pilchie avatar Dec 01 '18 21:12 Pilchie

So, what's a third party runner to do?

We can't provide you with a binary that works, so you'll have to take a copy of the source for yourself, I'm afraid. 😞

bradwilson avatar Dec 02 '18 01:12 bradwilson

Yeah I should get on the multi-target idea so that we can support CoreCLR here.

jaredpar avatar Dec 02 '18 02:12 jaredpar

Need to figure out how to get appveyor to install and use a local dotnet, and then I can probably merge this.

Note that it stops making it a package that you can reference, and turns it into a global tool instead.

Pilchie avatar Dec 03 '18 01:12 Pilchie

@bradwilson I did that for desktop - I took a peek at doing it for .NET Core, but it seems like that pulled in a bunch of other dependencies (in the form of DependencyContext and friends) 😦

Pilchie avatar Dec 03 '18 02:12 Pilchie

...and that .NET Core code is the code you can't really trust to always do the right thing, I'm afraid. It's why we killed dotnet xunit and the CoreCLR xunit.console.dll.

bradwilson avatar Dec 03 '18 15:12 bradwilson