[GitHub] thrift issue #1355: Minimal C# library version for .NET Standard 1.4, 1.6, ....

2017-09-13 Thread aloneguid
Github user aloneguid commented on the issue:

https://github.com/apache/thrift/pull/1355
  
Sorry guys I'm giving up. Personally I think getting a real value from 
contributing to main repo is not worth the effort due to many showstoppers. 
This may be a reason why there are so many forked versions exist. I don't mean 
to offend anyone here.


---


[GitHub] thrift pull request #1355: Minimal C# library version for .NET Standard 1.4,...

2017-09-13 Thread aloneguid
Github user aloneguid closed the pull request at:

https://github.com/apache/thrift/pull/1355


---


[GitHub] thrift issue #1355: Minimal C# library version for .NET Standard 1.4, 1.6, ....

2017-09-12 Thread aloneguid
Github user aloneguid commented on the issue:

https://github.com/apache/thrift/pull/1355
  
@gideonkorir 1.1 is fine unless we hit some limitations. Generally 1.4 is 
the "safe" version of .net standard, which can be  used on embedded devices, 
clusters, desktops etc. However, it's not compatible with .NET 4.5, which by 
itself reached end of support stage, and is a pain in the neck in terms of 
security and compatibility. If you need to support .NET 4.5 it's generally 
better to cross-compile to .net standard and .net 4.5 instead of just targeting 
.net standard, currently I do this in 
https://github.com/elastacloud/parquet-dotnet


---


[GitHub] thrift pull request #1355: Minimal C# library version for .NET Standard 1.4,...

2017-09-12 Thread aloneguid
Github user aloneguid commented on a diff in the pull request:

https://github.com/apache/thrift/pull/1355#discussion_r138439390
  
--- Diff: lib/csharp/src/Thrift.sln ---
@@ -1,6 +1,8 @@
 
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
--- End diff --

is there any strong reason for this?


---


[GitHub] thrift issue #1355: Minimal C# library version for .NET Standard 1.4, 1.6, ....

2017-09-12 Thread aloneguid
Github user aloneguid commented on the issue:

https://github.com/apache/thrift/pull/1355
  
I'm more than happy to do that. @Jens-G in .net ecosystem nuget package 
manager is quite popular, do you have any guidance how we can automatically 
publish this as you do with Maven?


---


[GitHub] thrift issue #1355: Minimal C# library version for .NET Standard 1.4, 1.6, ....

2017-09-12 Thread aloneguid
Github user aloneguid commented on the issue:

https://github.com/apache/thrift/pull/1355
  
@gideonkorir from what I can see .net core lib was created in times when 
.net core was in early stages, has some classes renamed and doesn't align with 
existing csharp project. There is no need to have that library, just 
cross-compile csharp library with modern .net core sdk.


---


[GitHub] thrift issue #1355: Minimal C# library version for .NET Standard 1.4, 1.6, ....

2017-09-12 Thread aloneguid
Github user aloneguid commented on the issue:

https://github.com/apache/thrift/pull/1355
  
@Jens-G THRIFTCORE is a simple pre-processor directive which when set 
excludes files which require dependency on external libraries in .NET Standard, 
essentially producing a minimal library of Thrift.

At the moment you have csharp library for .NET 3.5 and 4.5. Then, there is 
another library for .NET Core which to be honest is completely useless as it 
downloads so many dependencies that it's impossible to use in any web project 
as they quickly become conflicting. Ideally there must be just one single .NET 
project which cross-compiles to both .NET classic and .NET Standard. There is 
no need for .NET Core as .NET Standard covers it (is it maybe coming from 
misunderstanding of library creators in differences between .net core and .net 
standard?).

All I'm adding is a new project referencing all existing files. The project 
simply excludes stuff which is not covered by least common denominator of .NET 
Standard 1.4, 1.6 and .NET 4.5, but allows you to use Thrift on any device. 
This can be carefully extended further to support all Thrift features. however 
it's more complicated with .NET Standard as unlike .NET it doesn't have all 
socketing, networking etc. built in and needs external references.

I would suggest though having 1 main package with core functionality as I 
just did, and adding more libraries which implement specific features (sockets, 
web http etc.) as they require specific dependencies.


---


[GitHub] thrift pull request #1355: Minimal C# library version for .NET Standard 1.4,...

2017-09-12 Thread aloneguid
GitHub user aloneguid opened a pull request:

https://github.com/apache/thrift/pull/1355

Minimal C# library version for .NET Standard 1.4, 1.6, .NET 4.5.1

This adds another project type to C# library which allows it to be build 
for .NET Standard 1.4, 1.6 and .NET 4.5.1. The project turns off all 
dependencies (only the new project, existing ones are untouched) to build the 
core thrift library.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/aloneguid/thrift master

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/thrift/pull/1355.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1355


commit 6f46cdd2379eaf128108f5caad731ceb30e352d0
Author: Ivan Gavryliuk <ivan.gavryl...@outlook.com>
Date:   2017-09-12T14:52:41Z

Create a minimal C# library version for .NET Standard 1.4, 1.6 and .NET 
4.5.1




---