From 2ddbb1738a8f7f4af94aa378cacc7abc49614ccd Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Wed, 25 Apr 2018 10:24:55 +0200 Subject: [PATCH 1/2] better C# instructions --- src/csharp/README.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/csharp/README.md b/src/csharp/README.md index 6821ad225eb..e96b944a8be 100644 --- a/src/csharp/README.md +++ b/src/csharp/README.md @@ -39,10 +39,14 @@ If you are a user of gRPC C#, go to Usage section above. **Windows, Linux or Mac OS X** -- The easiest way to build is using the `run_tests.py` script that will take care of building the `grpc_csharp_ext` native library: +- The easiest way to build is using the `run_tests.py` script that will take care of building the `grpc_csharp_ext` native library. + You might first need to install the prerequisites mentioned in [INSTALL.md](../../INSTALL.md#pre-requisites). ``` + # NOTE: make sure all necessary git submodules with dependencies + # are available by running "git submodule update --init" + # from the gRPC repository root - $ python tools/run_tests/run_tests.py -c dbg -l csharp --build_only + $ python tools/run_tests/run_tests.py -l csharp -c dbg --build_only ``` - Use Visual Studio 2017 (on Windows) to open the solution `Grpc.sln` or use Visual Studio Code with C# extension (on Linux and Mac). gRPC C# code has been migrated to @@ -57,11 +61,12 @@ gRPC C# is using NUnit as the testing framework. Under Visual Studio, make sure NUnit test adapter is installed (under "Extensions and Updates"). Then you should be able to run all the tests using Test Explorer. -gRPC team uses a Python script to simplify facilitate running tests for +gRPC team uses a Python script to facilitate running tests for different languages. ``` -tools/run_tests/run_tests.py -l csharp +# from the gRPC repository root +$ python tools/run_tests/run_tests.py -l csharp -c dbg ``` DOCUMENTATION From d90415965a775d02635fe3508443cbbf3e0670cc Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 26 Apr 2018 08:26:14 +0200 Subject: [PATCH 2/2] Further improvements to README.md --- src/csharp/README.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/csharp/README.md b/src/csharp/README.md index e96b944a8be..e117e66afd6 100644 --- a/src/csharp/README.md +++ b/src/csharp/README.md @@ -16,16 +16,17 @@ PREREQUISITES When using gRPC C# under .NET Core you only need to [install .NET Core](https://www.microsoft.com/net/core). -- Windows: .NET Framework 4.5+, Visual Studio 2013, 2015, 2017 -- Linux: Mono 4+, MonoDevelop 5.9+ (with NuGet add-in installed) -- Mac OS X: Xamarin Studio 5.9+ +In addition to that, you can also use gRPC C# with these runtimes / IDEs +- Windows: .NET Framework 4.5+, Visual Studio 2013, 2015, 2017, Visual Studio Code +- Linux: Mono 4+, Visual Studio Code, MonoDevelop 5.9+ +- Mac OS X: Mono 4+, Visual Studio Code, Xamarin Studio 5.9+ HOW TO USE -------------- **Windows, Linux, Mac OS X** -- Open Visual Studio / MonoDevelop / Xamarin Studio and start a new project/solution. +- Open Visual Studio / MonoDevelop / Xamarin Studio and start a new project/solution (alternatively, you can create a new project from command line with `dotnet` SDK) - Add the [Grpc](https://www.nuget.org/packages/Grpc/) NuGet package as a dependency (Project options -> Manage NuGet Packages). @@ -37,10 +38,17 @@ BUILD FROM SOURCE You only need to go through these steps if you are planning to develop gRPC C#. If you are a user of gRPC C#, go to Usage section above. +**Prerequisites for contributors** + +- [dotnet SDK](https://www.microsoft.com/net/core) +- [Mono 4+](https://www.mono-project.com/) (only needed for Linux and MacOS) +- Prerequisites mentioned in [INSTALL.md](../../INSTALL.md#pre-requisites) + to be able to compile the native code. + **Windows, Linux or Mac OS X** - The easiest way to build is using the `run_tests.py` script that will take care of building the `grpc_csharp_ext` native library. - You might first need to install the prerequisites mentioned in [INSTALL.md](../../INSTALL.md#pre-requisites). + ``` # NOTE: make sure all necessary git submodules with dependencies # are available by running "git submodule update --init"