aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/csharp/Grpc.Core
Commit message (Collapse)AuthorAge
* Overhaul how the native extension is found, loaded and usedGravatar Jon Skeet2016-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goal of this is to fix #7230. The changes here are: - The layout in the nuget package; the files are now in `/runtimes/{os}/native/{library}` - The filename of each library, which now includes the architecture, e.g `grpc_csharp_ext.x64.dll` - The targets file used to copy those files in msbuild-based projects; note that we now don't build up a folder structure. - The way the functions are found Before this change, on Linux and OSX we used to find library symbols manually, and use DllImport on Windows. With this change, the name of the library file changes based on architecture, so `DllImport` doesn't work. Instead, we have to use `GetProcAddress` to fetch the function. This is further convoluted by the convention on Windows-x86 to prefix the function name with `_` and suffix it based on the stack size of the arguments. We can't easily tell the argument size here, so we just try 0, 4, 8...128. (128 bytes should be enough for anyone.) This is inefficient, but it's a one-time hit with a known number of functions, and doesn't seem to have any significant impact. The benefit of this in code is we don't need the DllImports any more, and we don't need to conditionally use `FindSymbol` - we just use it for everything, so things are rather more uniform and tidy. The further benefit of this is that the library name is no longer tied to a particular filename format - so if someone wanted to have a directory with the libraries for every version in, with the version in the filename, we'd handle that just fine. (At least once Testing: - Windows: - Console app under msbuild, dotnet cli and DNX - ASP.NET Classic under msbuild - ASP.NET Core (still running under net451) - Ubuntu 16.04 - Console app under dotnet cli, run with dotnet run and mono - OSX: - Console app under dotnet cli, run with dotnet run and mono Under dotnet cli, a dependency on `Microsoft.NETCore.Platforms` is required in order to force the libraries to be copied. This change does *not* further enable .NET Core. It attempts to keep the existing experimental .NET Core project files in line with the msbuild files, but I expect further work to be required for .NET Core, which has a different build/publication model.
* Flagging master as 1.0.0-pre1.Gravatar Nicolas "Pixel" Noble2016-07-12
|
* regenerateGravatar Jan Tattermusch2016-06-29
|
* fix files/mappings in Grpc.Core nugetGravatar Jan Tattermusch2016-06-29
|
* regenerate filesGravatar Jan Tattermusch2016-06-27
|
* share Version.cs among all project.json projectsGravatar Jan Tattermusch2016-06-27
|
* Update master branch to 0.16.0-devGravatar murgatroid992016-06-24
|
* fix C# nuget buildGravatar Jan Tattermusch2016-06-24
|
* prevent race between grpcsharp_server_request_call and ↵Gravatar Jan Tattermusch2016-06-23
| | | | grpc_completion_queue_shutdown
* add C# constant for GRPC_COMPRESSION_REQUEST_ALGORITHM_MD_KEYGravatar Jan Tattermusch2016-06-22
|
* Merge pull request #6104 from jtattermusch/coreclr_supportGravatar Jan Tattermusch2016-06-22
|\ | | | | Add experimental CoreCLR support
* | add missing ConfigureAwait(false)Gravatar Jan Tattermusch2016-06-21
| |
| * regenerate project.json filesGravatar Jan Tattermusch2016-06-21
| |
| * improve project.json filesGravatar Jan Tattermusch2016-06-20
| |
| * migrate everything to netstandard1.5Gravatar Jan Tattermusch2016-06-16
| |
| * dont register shutdownhooks for dotnet5.4Gravatar Jan Tattermusch2016-06-15
| |
| * update project.jsonGravatar Jan Tattermusch2016-06-15
| |
* | Merge pull request #6909 from jtattermusch/csharp_client_streamingGravatar Jan Tattermusch2016-06-15
|\ \ | | | | | | Improve docs for IAsyncStreamReader
| | * update .xproj filesGravatar Jan Tattermusch2016-06-15
| | |
| | * prevent interfering of project.json files with .csproj files in VS2015Gravatar Jan Tattermusch2016-06-15
| | |
| * | improve docs for IAsyncStreamReaderGravatar Jan Tattermusch2016-06-14
| | |
* | | deduplicate send finished handlerGravatar Jan Tattermusch2016-06-14
|/ /
| * add support for CoreCLRGravatar Jan Tattermusch2016-06-14
|/
* set default gRPC C# logging level to InfoGravatar Jan Tattermusch2016-06-13
|
* add LogLevel enumGravatar Jan Tattermusch2016-06-13
|
* Merge pull request #6829 from jtattermusch/csharp_add_server_testGravatar Jan Tattermusch2016-06-09
|\ | | | | C#: Add unstarted server test
| * allow shutdown of unstarted serverGravatar Jan Tattermusch2016-06-08
| |
* | make Metadata.Entry a classGravatar Jan Tattermusch2016-06-07
|/
* Add more Channel and Server constructor overloadsGravatar Jan Tattermusch2016-06-06
|
* autoregister grpc shutdown hooksGravatar Jan Tattermusch2016-06-06
|
* support GrpcEnvironment.KillServersAsyncGravatar Jan Tattermusch2016-06-06
|
* deduplicate server shutdown logicGravatar Jan Tattermusch2016-06-06
|
* Add ShutdownChannelsAsync apiGravatar Jan Tattermusch2016-06-06
|
* serverside shutdown hook testGravatar Jan Tattermusch2016-06-06
|
* make environment shutdown asynchronousGravatar Jan Tattermusch2016-06-06
|
* improve docs on ShutdownAsync() for servers and channelsGravatar Jan Tattermusch2016-06-06
|
* improve the xmldocs on call cancellation and disposalGravatar Jan Tattermusch2016-06-06
|
* rename ChannelState.FatalFailure to ChannelState.ShutdownGravatar Jan Tattermusch2016-06-06
|
* get rid of servicename argument for server service definition.Gravatar Jan Tattermusch2016-06-06
|
* Merge pull request #5794 from chrisdunelm/WriteOptions_readonlyGravatar Jan Tattermusch2016-06-01
|\ | | | | Make WriteOptions flags field readonly
* \ Merge pull request #6712 from jtattermusch/csharp_more_completion_queuesGravatar Jan Tattermusch2016-05-26
|\ \ | | | | | | C# add support for multiple completion queues in GrpcThreadPool.
| * | add missing pinvoke methodGravatar Jan Tattermusch2016-05-26
| | |
| * | use 1 cq per thread by defaultGravatar Jan Tattermusch2016-05-25
| | |
| * | name the threadpool threads before startingGravatar Jan Tattermusch2016-05-25
| | |
| * | eliminate global completion registryGravatar Jan Tattermusch2016-05-25
| | |
| * | completion registry is per cqGravatar Jan Tattermusch2016-05-25
| | |
| * | expose completionQueueCount settingGravatar Jan Tattermusch2016-05-25
| | |
| * | add support for multiple cqs to GrpcThreadPoolGravatar Jan Tattermusch2016-05-25
| | |
* | | add TODOGravatar Jan Tattermusch2016-05-23
| | |
* | | reorder clientside send preconditionsGravatar Jan Tattermusch2016-05-23
| | |