[ https://issues.apache.org/jira/browse/THRIFT-4535?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16420458#comment-16420458 ]
Christian Weiss commented on THRIFT-4535: ----------------------------------------- {quote}As long as we can have a single set of project files that will work both for, let's say, Visual Studio 2015 OR for dotnet core 2.0 (msbuild) on linux or windows, then okay. If the project files are incompatible, they should probably remain separate. {quote} With the new project format, it's possible to do everything in one project file. See e.g. [Newtonsoft.Json|https://github.com/JamesNK/Newtonsoft.Json/blob/master/Src/Newtonsoft.Json/Newtonsoft.Json.csproj] which supports pretty much every platform there is. The only requirement for this is that developers who want to contribute need Visual Studio 2017 (the free version is enough), Visual Studio Code or Visual Studio for Mac. I don't know your user base but supporting .NET 4.5+ and .NET Core seems like what most projects are doing right now. As [~jking3] said, people can always stay on an older version if they are still working on Silverlight, Windows Phone or .NET 3.5. Given that there's a tag/branch for the last release you could also always create a patch-release for the old version if there is a critical problem. I'd be happy to do some work, but you need to agree on what code base should be used as the base. * Should I work on "csharp" and "modernize" it by taking stuff from "netcore"? Has this already been tried and failed, resulting in the decision to create the new, distinct, "netcore" code base? * Should I work on "netcore" and add missing features from "csharp" (if there are any) and make it support more platforms (it currently only supports .NET Standard 2.0). Releasing this will result in whatever breaking changes there are between these APIs. > Current state and future of .NET libraries ("csharp" and "netcore")? > -------------------------------------------------------------------- > > Key: THRIFT-4535 > URL: https://issues.apache.org/jira/browse/THRIFT-4535 > Project: Thrift > Issue Type: Question > Components: C# - Library, netcore - Library > Reporter: Christian Weiss > Priority: Major > > Hi, > We are trying to use Thrift in one of our projects but we ran into some very > fundamental issues: > * The "csharp" project does not target ".NET Standard" and there's only a > very old release on nuget.org ( if [https://www.nuget.org/packages/Thrift/] > is the official one). > * The "netcore" project does target ".NET Standard" but there's no release > yet ( https://issues.apache.org/jira/browse/THRIFT-4512 ) and it also has a > dependency on ASP.NET Core ( > https://issues.apache.org/jira/browse/THRIFT-4534 ) which makes it unusable > in non-web projects. > I'm wondering why there even are 2 separate projects for .NET? It's important > to understand that ".NET Core" is not a new programming API - It's just a new > platform - very similar to Silverlight, Mono, Windows Phone. This means that > it would also be possible to support .NET Core and the new ".NET Standard" > (which represents a common set of APIs for all platforms) with the existing > "csharp" project. > Was this a deliberate decision - e.g. to make the "netcore" code the official > successor of the "csharp" code? > Would you be interested in merging the code back into one library? I'd be > willing to help if you want! > It would be great to get one proper, up to date and official .NET library > soon as there's already quite a lot of weird forks on NuGet.org: > https://www.nuget.org/packages?q=Thrift -- This message was sent by Atlassian JIRA (v7.6.3#76005)