[ 
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)

Reply via email to