[ https://issues.apache.org/jira/browse/THRIFT-4541?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16616449#comment-16616449 ]
Jens Geyer commented on THRIFT-4541: ------------------------------------ > I would recommend focusing on netcore for new development and leaving csharp > as legacy I would recommend to leave C++ as legacy because we have Rust and Go. We also can throw out JS because we have TS. > Use new project system in "lib/csharp" and define supported platforms > --------------------------------------------------------------------- > > Key: THRIFT-4541 > URL: https://issues.apache.org/jira/browse/THRIFT-4541 > Project: Thrift > Issue Type: Umbrella > Components: C# - Library > Reporter: Christian Weiss > Priority: Major > > As discussed in THRIFT-4535, it would be great if we could update > "lib/csharp" to use the new "csproj" project system. This will allow us to > target multiple platforms and the new ".NET Standard" with a single project. > It's possible to support pretty much every platform there is with this new > project format (see e.g. > [Newtonsoft.Json|https://github.com/JamesNK/Newtonsoft.Json/blob/master/Src/Newtonsoft.Json/Newtonsoft.Json.csproj]), > however supporting older platforms requires more work as this requires more > #if statements etc. > This means that we have to decide which platforms we want to support! > Targeting ".NET Standard 2.0" would be the easiest option as this version > [covers a much larger API > surface|https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-standard-2-0/]. > However, this would also mean that people have to use rather recent versions > of their platforms to use it, as .NET Standard 2.0 requires the following > minimum versions: > * .NET 4.6.1 (adding support for .NET 4.5 is no problem though) > * .NET Core 2.0 > * Mono 5.4 > * Xamarin.iOS 10.14 > * Xamarin.Mac 3.8 > * Xamarin.Android 8.0 > * UWP 10.0.16299 > I will create a PR that targets .NET Standard 2.0 and .NET 4.5 to show what > the new project files would look like. If the approach is OK for you in > general, then I can try to add support for whatever minimum versions you'd > like to support. -- This message was sent by Atlassian JIRA (v7.6.3#76005)