Commit Graph

47 Commits

Author SHA1 Message Date
Jan Tattermusch 94edf0e21f introduce common.props, set LangVersion to 7.2 2020-10-26 14:11:17 +01:00
Jan Tattermusch 6fba3c0221 dependency versions are imported through Directory props 2019-03-25 12:47:29 -07:00
James Newton-King 297dd0cb62
PR feedback 2019-03-25 18:26:14 +13:00
Jan Tattermusch 3291154db0 update all executables to netcoreapp2.1 2019-03-11 07:59:33 -04:00
Jan Tattermusch cf5cffcc2d csproj cleanup 2019-02-16 16:21:43 +01:00
Jan Tattermusch ba6b1c215c switch netcoreapp1.0->1.1 2018-11-30 13:04:33 +01:00
Jan Tattermusch 398435122a PackageTargetFallback not necessary 2017-09-05 17:09:58 +02:00
Jan Tattermusch a37b72e9fd dont set RuntimeFrameworkVersion unneccessarily 2017-09-05 17:09:58 +02:00
Jan Tattermusch c152d6628a fix warnings in integration tests 2017-08-11 18:17:19 +02:00
Jan Tattermusch 7897ae9308 auto-fix most of licenses 2017-06-08 11:22:41 +02:00
Jan Tattermusch 7727c7649c Initial migration to new .csproj files 2017-04-07 08:51:56 +02:00
Jan Tattermusch a3d87cad7e fix C# nuget restore 2017-03-07 13:00:19 +01:00
Jan Tattermusch e7f0b8579b use grpc_csharp_ext built by cmake 2017-02-09 17:21:13 -08:00
Jan Tattermusch c7df4cfd7c get rid of unused ReleaseSigned config 2016-12-09 12:26:29 +01:00
Jan Tattermusch 8613e474cb Merge remote-tracking branch 'upstream/v1.0.x' into HEAD 2016-11-22 11:15:53 +01:00
Alexander Polcyn 84be265239 strong name sign csharp nuget builds with dotnet on windows 2016-11-01 18:40:03 -07:00
Jan Tattermusch 7ef9f64187 use Server mode for GC in C# QpsWorker 2016-10-20 23:37:57 +02:00
Jan Tattermusch f6caaa76a6 add copyrights for AssemblyInfo.cs files 2016-09-21 22:40:11 +02:00
Jan Tattermusch 5bfcb5cc09 fix copying data directory 2016-09-15 18:18:27 +02:00
Jan Tattermusch 35d2cff9d6 dont enumerate runtimes in project.json file 2016-09-15 18:18:23 +02:00
Jan Tattermusch 7eb41a14f8 upgrade Moq to version that supports netstandard1.3 2016-09-15 18:18:22 +02:00
Jan Tattermusch 4f5009f27f fix copying data directory 2016-09-09 13:21:46 +02:00
Jan Tattermusch 08ac1d4b5a dont enumerate runtimes in project.json file 2016-09-08 15:53:23 +02:00
Jan Tattermusch 06aff11d39 upgrade Moq to version that supports netstandard1.3 2016-09-05 18:14:27 +02:00
Jan Tattermusch f45dd74b01 Merge pull request #7660 from jtattermusch/google_apis_auth_coreclr
Updgrade Google.Apis.Auth dependency to 0.15
2016-08-13 14:12:18 +08:00
Jan Tattermusch fab839e967 remove leftover app.config 2016-08-11 22:26:22 +08:00
Alexander Polcyn 6bfe7dadf7 add all runtime nodes back into testing packages 2016-08-09 13:10:53 -07:00
Alexander Polcyn 84f0f791e9 removed runtime nodes from project.json libraries 2016-08-02 23:53:09 -07:00
Jan Tattermusch baa8c31984 Merge pull request #7580 from jtattermusch/netcore_nuget_to_rtm
Update .NET core dependencies to RTM
2016-08-02 15:10:42 +08:00
Jan Tattermusch 3fc8c8a9ff regenerate 2016-07-30 04:16:09 +08:00
Alexander Polcyn 161767771b update to use new nuget client in tests 2016-07-28 15:02:39 -07:00
Jon Skeet 3fcd20fb5a Overhaul how the native extension is found, loaded and used
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.
2016-07-15 07:09:54 +01:00
Jan Tattermusch a9208befc6 regenerate 2016-06-29 12:03:32 -07:00
Jan Tattermusch 652c00043f regenerate files 2016-06-27 22:38:07 -07:00
Jan Tattermusch 381e26a21e regenerate project.json files 2016-06-21 10:04:32 -07:00
Jan Tattermusch 74330130a3 improve project.json files 2016-06-20 16:24:08 -07:00
Jan Tattermusch 099cbf84aa add debian.8-x64 to the list of runtimes 2016-06-17 17:31:40 -07:00
Jan Tattermusch fab857eefc address review comments 2016-06-17 17:31:40 -07:00
Jan Tattermusch 317b8acf99 migrate everything to netstandard1.5 2016-06-16 16:59:43 -07:00
Jan Tattermusch a6c9a9121e update project.json 2016-06-15 15:17:01 -07:00
Jan Tattermusch 5ff32fa9fd update .xproj files 2016-06-15 09:49:40 -07:00
Jan Tattermusch 8d9dff5118 prevent interfering of project.json files with .csproj files in VS2015 2016-06-15 09:35:39 -07:00
Jan Tattermusch ec4359ddc1 add support for CoreCLR 2016-06-14 12:52:05 -07:00
Jan Tattermusch f85c70fc3f bump Google.Apis.Auth nuget to 1.11.1 2016-03-29 17:16:19 -07:00
Jan Tattermusch ecb02be1ea include assembly signing key in the repo 2016-01-21 10:45:57 -08:00
Jan Tattermusch 5beb0ee9d7 update C# projects 2015-12-01 18:23:02 -08:00
Jan Tattermusch d0c1bfa566 Provide performance workers for C# 2015-11-17 16:25:29 -08:00