From cc2e9fbccb40d0782a6cbd98c0bcf8cee6986adc Mon Sep 17 00:00:00 2001 From: Mpdreamz Date: Mon, 21 Mar 2016 09:47:44 +0100 Subject: [PATCH] Alternative to ..\{project}_Net45 folder side-side hack that allows to develop project.json (the toolchain that produces our artifacts) and csproj files (the best interface for continuous tests through NCrunch) in tandem. The old separate folder hack introduces strict restrictions on our csproj based solution, adding files was forbidden because this would expand the wildcards in the csproj and the file would end up in the wrong folder. Normally this side by side loading is riddled with nuget biting into both worlds but luckily we use paket in the csproj world. We didn't go for this solution initially because NCrunch while not supporting project.json, it did have an undocumented check for project.json files to kick off a different project resolution. Since NCrunch 2.20 (released yesterday) this "special" check is removed and NCrunch loads our csproj files that live next to project.json normally again. Our default work solution can now be Elasticsearch.sln again, while our command line build still builds Elasticsearch.DNX.sln and we can use the latter to investigate CoreCLR bugs/features. --- .../Benchmarking.csproj | 20 +++++++-------- src/Benchmarking/Benchmarking.project.json | 8 ++++++ .../Benchmarking.project.lock.json | 13 ++++++++++ .../paket.references | 0 .../CodeGeneration.LowLevelClient.csproj | 21 +++++---------- ...CodeGeneration.LowLevelClient.project.json | 8 ++++++ ...eneration.LowLevelClient.project.lock.json | 13 ++++++++++ .../paket.references | 0 .../razormachine.readme.txt | 0 .../Nest.Litterateur.csproj | 14 +++++----- .../Nest.Litterateur.project.json | 8 ++++++ .../Nest.Litterateur.project.lock.json | 13 ++++++++++ .../paket.references | 0 .../Elasticsearch.Net.csproj | 14 +++++----- .../Elasticsearch.Net.project.json | 8 ++++++ .../Elasticsearch.Net.project.lock.json | 13 ++++++++++ .../paket.references | 0 src/Elasticsearch.sln | 14 +++++----- src/{Nest_Net45 => Nest}/Nest.csproj | 18 ++++++------- src/Nest/Nest.project.json | 8 ++++++ src/Nest/Nest.project.lock.json | 13 ++++++++++ src/{Nest_Net45 => Nest}/paket.references | 0 ...hTemp_80e242c1-5c9f-4303-9b2c-f687541e03c6 | Bin 135706 -> 0 bytes .../Profiling.csproj | 20 +++++++-------- src/Profiling/Profiling.project.json | 8 ++++++ src/Profiling/Profiling.project.lock.json | 13 ++++++++++ .../paket.references | 0 .../Cat/CatAliases/CatAliasesApiTests.cs | 1 - src/{Tests_Net45 => Tests}/Tests.csproj | 24 +++++++----------- src/Tests/Tests.project.json | 8 ++++++ src/Tests/Tests.project.lock.json | 13 ++++++++++ src/{Tests_Net45 => Tests}/paket.references | 0 src/Tests/tests.yaml | 2 +- 33 files changed, 209 insertions(+), 86 deletions(-) rename src/{Benchmarking_Net45 => Benchmarking}/Benchmarking.csproj (98%) create mode 100644 src/Benchmarking/Benchmarking.project.json create mode 100644 src/Benchmarking/Benchmarking.project.lock.json rename src/{Benchmarking_Net45 => Benchmarking}/paket.references (100%) rename src/CodeGeneration/{CodeGeneration.LowLevelClient_Net45 => CodeGeneration.LowLevelClient}/CodeGeneration.LowLevelClient.csproj (92%) create mode 100644 src/CodeGeneration/CodeGeneration.LowLevelClient/CodeGeneration.LowLevelClient.project.json create mode 100644 src/CodeGeneration/CodeGeneration.LowLevelClient/CodeGeneration.LowLevelClient.project.lock.json rename src/CodeGeneration/{CodeGeneration.LowLevelClient_Net45 => CodeGeneration.LowLevelClient}/paket.references (100%) rename src/CodeGeneration/{CodeGeneration.LowLevelClient_Net45 => CodeGeneration.LowLevelClient}/razormachine.readme.txt (100%) rename src/CodeGeneration/{Nest.Litterateur_Net45 => Nest.Litterateur}/Nest.Litterateur.csproj (95%) create mode 100644 src/CodeGeneration/Nest.Litterateur/Nest.Litterateur.project.json create mode 100644 src/CodeGeneration/Nest.Litterateur/Nest.Litterateur.project.lock.json rename src/CodeGeneration/{Nest.Litterateur_Net45 => Nest.Litterateur}/paket.references (100%) rename src/{Elasticsearch.Net_Net45 => Elasticsearch.Net}/Elasticsearch.Net.csproj (88%) create mode 100644 src/Elasticsearch.Net/Elasticsearch.Net.project.json create mode 100644 src/Elasticsearch.Net/Elasticsearch.Net.project.lock.json rename src/{Elasticsearch.Net_Net45 => Elasticsearch.Net}/paket.references (100%) rename src/{Nest_Net45 => Nest}/Nest.csproj (94%) create mode 100644 src/Nest/Nest.project.json create mode 100644 src/Nest/Nest.project.lock.json rename src/{Nest_Net45 => Nest}/paket.references (100%) delete mode 100644 src/Nest_Net45/nCrunchTemp_80e242c1-5c9f-4303-9b2c-f687541e03c6 rename src/{Profiling_Net45 => Profiling}/Profiling.csproj (98%) create mode 100644 src/Profiling/Profiling.project.json create mode 100644 src/Profiling/Profiling.project.lock.json rename src/{Profiling_Net45 => Profiling}/paket.references (100%) rename src/{Tests_Net45 => Tests}/Tests.csproj (98%) create mode 100644 src/Tests/Tests.project.json create mode 100644 src/Tests/Tests.project.lock.json rename src/{Tests_Net45 => Tests}/paket.references (100%) diff --git a/src/Benchmarking_Net45/Benchmarking.csproj b/src/Benchmarking/Benchmarking.csproj similarity index 98% rename from src/Benchmarking_Net45/Benchmarking.csproj rename to src/Benchmarking/Benchmarking.csproj index 8984457f2bf..ec1d0ac5181 100644 --- a/src/Benchmarking_Net45/Benchmarking.csproj +++ b/src/Benchmarking/Benchmarking.csproj @@ -18,7 +18,7 @@ true full false - ..\Benchmarking\bin\Debug\ + ..\Benchmarking\bin\Net45\Debug\ DEBUG;TRACE prompt 4 @@ -27,7 +27,7 @@ AnyCPU pdbonly true - ..\Benchmarking\bin\Release\ + ..\Benchmarking\bin\Net45\Release\ TRACE prompt 4 @@ -43,29 +43,27 @@ - - %(RecursiveDir)%(Filename)%(Extension) - - + + - + {e97ccf40-0ba6-43fe-9f2d-58d454134088} Elasticsearch.Net - + {072ba7da-7b60-407d-8b6e-95e3186be70c} Nest - + {37164c11-88ef-4428-803a-9aa24fb8b44d} Tests - - - \ No newline at end of file + diff --git a/src/Elasticsearch.Net/Elasticsearch.Net.project.json b/src/Elasticsearch.Net/Elasticsearch.Net.project.json new file mode 100644 index 00000000000..faf891318d9 --- /dev/null +++ b/src/Elasticsearch.Net/Elasticsearch.Net.project.json @@ -0,0 +1,8 @@ +{ + "frameworks": { + "net45": {} + }, + "runtimes": { + "win": {} + } +} \ No newline at end of file diff --git a/src/Elasticsearch.Net/Elasticsearch.Net.project.lock.json b/src/Elasticsearch.Net/Elasticsearch.Net.project.lock.json new file mode 100644 index 00000000000..47378cc7551 --- /dev/null +++ b/src/Elasticsearch.Net/Elasticsearch.Net.project.lock.json @@ -0,0 +1,13 @@ +{ + "locked": false, + "version": 1, + "targets": { + ".NETFramework,Version=v4.5": {}, + ".NETFramework,Version=v4.5/win": {} + }, + "libraries": {}, + "projectFileDependencyGroups": { + "": [], + ".NETFramework,Version=v4.5": [] + } +} \ No newline at end of file diff --git a/src/Elasticsearch.Net_Net45/paket.references b/src/Elasticsearch.Net/paket.references similarity index 100% rename from src/Elasticsearch.Net_Net45/paket.references rename to src/Elasticsearch.Net/paket.references diff --git a/src/Elasticsearch.sln b/src/Elasticsearch.sln index d6d375f87f1..347c1d96fd4 100644 --- a/src/Elasticsearch.sln +++ b/src/Elasticsearch.sln @@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 VisualStudioVersion = 14.0.24720.0 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nest", "Nest_Net45\Nest.csproj", "{072BA7DA-7B60-407D-8B6E-95E3186BE70C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nest", "Nest\Nest.csproj", "{072BA7DA-7B60-407D-8B6E-95E3186BE70C}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build", "_Build", "{432D5575-2347-4D3C-BF8C-3E38410C46CA}" ProjectSection(SolutionItems) = preProject @@ -23,21 +23,21 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build", "_Build", "{432D55 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Code Generation", "Code Generation", "{93331BEE-0AA0-47B7-B1D2-BD5BD31634D1}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeGeneration.LowLevelClient", "CodeGeneration\CodeGeneration.LowLevelClient_Net45\CodeGeneration.LowLevelClient.csproj", "{56A87048-9065-459B-826D-3DF68B409845}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeGeneration.LowLevelClient", "CodeGeneration\CodeGeneration.LowLevelClient\CodeGeneration.LowLevelClient.csproj", "{56A87048-9065-459B-826D-3DF68B409845}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elasticsearch.Net", "Elasticsearch.Net_Net45\Elasticsearch.Net.csproj", "{E97CCF40-0BA6-43FE-9F2D-58D454134088}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elasticsearch.Net", "Elasticsearch.Net\Elasticsearch.Net.csproj", "{E97CCF40-0BA6-43FE-9F2D-58D454134088}" EndProject Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "scripts", "..\build\scripts\scripts.fsproj", "{28328694-2598-44D3-BB25-8B6C3FBDD3EF}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests_Net45\Tests.csproj", "{37164C11-88EF-4428-803A-9AA24FB8B44D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests\Tests.csproj", "{37164C11-88EF-4428-803A-9AA24FB8B44D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nest.Litterateur", "CodeGeneration\Nest.Litterateur_Net45\Nest.Litterateur.csproj", "{98400F59-4BA8-4534-9A78-9C7FA0B42901}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nest.Litterateur", "CodeGeneration\Nest.Litterateur\Nest.Litterateur.csproj", "{98400F59-4BA8-4534-9A78-9C7FA0B42901}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Performance", "Performance", "{71B3D359-87E2-4F62-82A2-A624DD3BF402}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Benchmarking", "Benchmarking_Net45\Benchmarking.csproj", "{9BB0AB7E-F08E-4D3E-A9E7-7C71318E8666}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Benchmarking", "Benchmarking\Benchmarking.csproj", "{9BB0AB7E-F08E-4D3E-A9E7-7C71318E8666}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiling", "Profiling_Net45\Profiling.csproj", "{523B5383-B67D-462F-825D-FAE057E6B17D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiling", "Profiling\Profiling.csproj", "{523B5383-B67D-462F-825D-FAE057E6B17D}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/src/Nest_Net45/Nest.csproj b/src/Nest/Nest.csproj similarity index 94% rename from src/Nest_Net45/Nest.csproj rename to src/Nest/Nest.csproj index 3456aee9a1e..2f02c895d29 100644 --- a/src/Nest_Net45/Nest.csproj +++ b/src/Nest/Nest.csproj @@ -18,13 +18,13 @@ true full false - ..\Nest\bin\Debug\ + ..\Nest\bin\Net45\Debug\ DEBUG;TRACE prompt 4 BasicCorrectnessRules.ruleset AnyCPU - ..\Nest\bin\Debug\Nest.XML + ..\Nest\bin\Net45\Debug\Nest.XML false 1591,1572,1571,1573,1587,1570 false @@ -32,12 +32,12 @@ pdbonly True - ..\Nest\bin\Release\ + ..\Nest\bin\Net45\Release\ TRACE prompt 4 AllRules.ruleset - ..\Nest\bin\Release\Nest.XML + ..\Nest\bin\Net45\Release\Nest.XML 1591,1572,1571,1573,1587,1570 false @@ -56,9 +56,7 @@ - - %(RecursiveDir)%(Filename)%(Extension) - + @@ -78,7 +76,7 @@ - + {E97CCF40-0BA6-43FE-9F2D-58D454134088} Elasticsearch.Net @@ -87,7 +85,7 @@ -