Update to dotnet core
If we want to migrate to dotnet core, to be able to support, for example, other plateform like requested in #758, we should do at least:
- [x] replace the mock framework RhinoMocks by one compatible netstandard (why not http://nsubstitute.github.io/ )
- [x] update StructureMap to a version compatible netstandard
- [ ] Wait updates on some Microsoft.TeamFoundationServer.Client dependencies that seems not compatible netstandard/netcoreapp (should be verified)
- [x] remove dependency to Registry that are only here to locate visualstudio for
git tfs checkin( #define NETFRAMEWORK ) - [x] remove dependency to WinForm used in
git tfs checkin( #define !?! ) - [x] change the way to log :
Trace.Listenersno more exists
and perhaps more things...
Work was done in https://github.com/pmiossec/git-tfs/tree/dotnetcore_multiplateform
The work is stalled for the moment because Microsoft.TeamFoundationServer.Client 16 is in preview at the moment and is not compatible with dotnet core. So we will wait the release of the stable version to check it is compatible.
And also break all the TFS Api, so, as it look like, we will have to rewrite everything.
Based on preliminary testing, the release version 16.143.1 supports .NET Standard 2.0 and therefore .NET Core 2.0 or later. However, as called out by @pmiossec, there are breaking changes.
Based on preliminary testing, the release version 16.143.1 supports .NET Standard 2.0 and therefore .NET Core 2.0 or later. However, as called out by @pmiossec, there are breaking changes.
Someone from Microsoft stated this explicitly: https://github.com/MicrosoftDocs/vsts-docs/issues/4323#issuecomment-495695855