From 6d1e453dea5942ea8eda04a1d899ff5d217419ad Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 20:36:13 -0400 Subject: [PATCH 1/8] Add reference assembly project --- Ix.NET/Source/Ix.NET.sln | 9 ++++++++ .../System.Interactive.csproj | 3 ++- .../System.Interactive.csproj | 21 +++++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj diff --git a/Ix.NET/Source/Ix.NET.sln b/Ix.NET/Source/Ix.NET.sln index aab4c81a19..96b3f6a5f1 100644 --- a/Ix.NET/Source/Ix.NET.sln +++ b/Ix.NET/Source/Ix.NET.sln @@ -25,6 +25,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Interactive.Tests", EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Interactive.Async.Tests", "System.Interactive.Async.Tests\System.Interactive.Async.Tests.csproj", "{172BD8C4-5C3E-4928-9D3F-746CF336FFEC}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Refs", "Refs", "{A3D72E6E-4ADA-42E0-8B2A-055B1F244281}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "System.Interactive", "refs\System.Interactive\System.Interactive.csproj", "{2EC0C302-B029-4DDB-AC91-000BF11006AD}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -55,6 +59,10 @@ Global {172BD8C4-5C3E-4928-9D3F-746CF336FFEC}.Debug|Any CPU.Build.0 = Debug|Any CPU {172BD8C4-5C3E-4928-9D3F-746CF336FFEC}.Release|Any CPU.ActiveCfg = Release|Any CPU {172BD8C4-5C3E-4928-9D3F-746CF336FFEC}.Release|Any CPU.Build.0 = Release|Any CPU + {2EC0C302-B029-4DDB-AC91-000BF11006AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2EC0C302-B029-4DDB-AC91-000BF11006AD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2EC0C302-B029-4DDB-AC91-000BF11006AD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2EC0C302-B029-4DDB-AC91-000BF11006AD}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -62,6 +70,7 @@ Global GlobalSection(NestedProjects) = preSolution {AFD2E6EC-C5B0-4276-A14A-467D786D0DDA} = {87534290-A7A6-47A4-9A3A-D0D21A9AD1D4} {172BD8C4-5C3E-4928-9D3F-746CF336FFEC} = {87534290-A7A6-47A4-9A3A-D0D21A9AD1D4} + {2EC0C302-B029-4DDB-AC91-000BF11006AD} = {A3D72E6E-4ADA-42E0-8B2A-055B1F244281} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9B5F6126-CBBA-4C3A-A3BB-26AFE56DABEC} diff --git a/Ix.NET/Source/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/System.Interactive/System.Interactive.csproj index 86d8397176..142699d2a6 100644 --- a/Ix.NET/Source/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/System.Interactive/System.Interactive.csproj @@ -9,7 +9,8 @@ + - + diff --git a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj new file mode 100644 index 0000000000..bf029e2fb3 --- /dev/null +++ b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj @@ -0,0 +1,21 @@ + + + + Interactive Extensions Main Library used to express queries over enumerable sequences. + Interactive Extensions - Main Library + Microsoft + net45;netstandard1.0;netstandard2.0 + Ix;Interactive;Extensions;Enumerable + $(DefineConstants);REF_ASSM + true + true + + + + + + + + + + From 2d08ad239ccf4ebc702b773b2af27909cdcae93d Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 21:29:38 -0400 Subject: [PATCH 2/8] Include Ref assm in package --- .../System.Interactive.csproj | 20 ++++++++++++++++++- .../System.Interactive.csproj | 6 ++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/Ix.NET/Source/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/System.Interactive/System.Interactive.csproj index 142699d2a6..4bd1ebb0cd 100644 --- a/Ix.NET/Source/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/System.Interactive/System.Interactive.csproj @@ -9,8 +9,26 @@ - + + + + $(TargetsForTfmSpecificContentInPackage);GetRefs + + + + + + + + + + + + + + + diff --git a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj index bf029e2fb3..f76b86bd89 100644 --- a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj @@ -17,5 +17,11 @@ + + + + + + From 43eb8b4f3cda7ad592786df01532ab0cc633e2ca Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 21:52:05 -0400 Subject: [PATCH 3/8] Add netcoreapp2.0 ref --- .../System.Interactive.csproj | 20 ++++++++++++++++--- .../System.Interactive.csproj | 2 +- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/Ix.NET/Source/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/System.Interactive/System.Interactive.csproj index 4bd1ebb0cd..3548f89e9f 100644 --- a/Ix.NET/Source/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/System.Interactive/System.Interactive.csproj @@ -9,7 +9,6 @@ - @@ -20,15 +19,30 @@ - + - + + + + + + + + + + + + diff --git a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj index f76b86bd89..129160a51e 100644 --- a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj @@ -4,7 +4,7 @@ Interactive Extensions Main Library used to express queries over enumerable sequences. Interactive Extensions - Main Library Microsoft - net45;netstandard1.0;netstandard2.0 + net45;netstandard1.0;netstandard2.0;netcoreapp2.0 Ix;Interactive;Extensions;Enumerable $(DefineConstants);REF_ASSM true From c9bffe5ef15a245f7bed0b6ec060ed99091b3a06 Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 21:56:03 -0400 Subject: [PATCH 4/8] The ref project can't be packed --- Ix.NET/Source/System.Interactive/Skip.cs | 4 +++- Ix.NET/Source/System.Interactive/Take.cs | 4 +++- .../Source/refs/System.Interactive/System.Interactive.csproj | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Ix.NET/Source/System.Interactive/Skip.cs b/Ix.NET/Source/System.Interactive/Skip.cs index c6390df4a2..1e39eab81c 100644 --- a/Ix.NET/Source/System.Interactive/Skip.cs +++ b/Ix.NET/Source/System.Interactive/Skip.cs @@ -8,6 +8,7 @@ namespace System.Linq { public static partial class EnumerableEx { +#if !(REF_ASSM && NETCOREAPP2_0) /// /// Bypasses a specified number of contiguous elements from the end of the sequence and returns the remaining elements. /// @@ -32,6 +33,7 @@ public static IEnumerable SkipLast(this IEnumerable s return source.SkipLast_(count); } +#endif private static IEnumerable SkipLast_(this IEnumerable source, int count) { @@ -47,4 +49,4 @@ private static IEnumerable SkipLast_(this IEnumerable } } } -} \ No newline at end of file +} diff --git a/Ix.NET/Source/System.Interactive/Take.cs b/Ix.NET/Source/System.Interactive/Take.cs index eacd9b7857..28196a5acf 100644 --- a/Ix.NET/Source/System.Interactive/Take.cs +++ b/Ix.NET/Source/System.Interactive/Take.cs @@ -8,6 +8,7 @@ namespace System.Linq { public static partial class EnumerableEx { +#if !(REF_ASSM && NETCOREAPP2_0) /// /// Returns a specified number of contiguous elements from the end of the sequence. /// @@ -29,6 +30,7 @@ public static IEnumerable TakeLast(this IEnumerable s return source.TakeLast_(count); } +#endif private static IEnumerable TakeLast_(this IEnumerable source, int count) { @@ -55,4 +57,4 @@ private static IEnumerable TakeLast_(this IEnumerable } } } -} \ No newline at end of file +} diff --git a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj index 129160a51e..35a74afb70 100644 --- a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj @@ -9,6 +9,7 @@ $(DefineConstants);REF_ASSM true true + false From 25cf7513fb8bb362147aa0930feca93c73303eaa Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 22:07:18 -0400 Subject: [PATCH 5/8] Build refs explicitly --- .vsts.ix-shared.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.vsts.ix-shared.yml b/.vsts.ix-shared.yml index 4882acf625..23ec574543 100644 --- a/.vsts.ix-shared.yml +++ b/.vsts.ix-shared.yml @@ -14,6 +14,13 @@ steps: displayName: Set Version condition: eq(variables['system.pullrequest.isfork'], false) +- task: DotNetCoreCLI@2 + inputs: + command: build + projects: Ix.NET/Source/refs/**/System.Interactive*.csproj + arguments: -c $(BuildConfiguration) + displayName: Build reference assemblies + - task: DotNetCoreCLI@2 inputs: command: pack From e659a492383d5f66ccdc86dc5a79f81618cc7aeb Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 22:16:28 -0400 Subject: [PATCH 6/8] Fix project file --- Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj | 2 -- 1 file changed, 2 deletions(-) diff --git a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj index 35a74afb70..b3028af869 100644 --- a/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj +++ b/Ix.NET/Source/refs/System.Interactive/System.Interactive.csproj @@ -13,8 +13,6 @@ - - From 49cc7fac688f2764bf5153ff0735e000603139dd Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 22:16:39 -0400 Subject: [PATCH 7/8] Add yamls to solution --- Ix.NET/Source/Ix.NET.sln | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Ix.NET/Source/Ix.NET.sln b/Ix.NET/Source/Ix.NET.sln index 96b3f6a5f1..4012951345 100644 --- a/Ix.NET/Source/Ix.NET.sln +++ b/Ix.NET/Source/Ix.NET.sln @@ -7,6 +7,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{87534290 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{B733D97A-F1ED-4FC3-BF8E-9AC47A89DE96}" ProjectSection(SolutionItems) = preProject + ..\..\.vsts.ix-ci.yml = ..\..\.vsts.ix-ci.yml + ..\..\.vsts.ix-pr.yml = ..\..\.vsts.ix-pr.yml + ..\..\.vsts.ix-shared.yml = ..\..\.vsts.ix-shared.yml CodeCoverage.runsettings = CodeCoverage.runsettings Directory.build.props = Directory.build.props Directory.build.targets = Directory.build.targets From d6cbcb6a86f2fbb9ce5c1fb7812bead1f2cb78b0 Mon Sep 17 00:00:00 2001 From: Oren Novotny Date: Mon, 2 Jul 2018 22:22:07 -0400 Subject: [PATCH 8/8] Don't warn for SemVer2 packages --- Ix.NET/Source/Directory.build.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Ix.NET/Source/Directory.build.props b/Ix.NET/Source/Directory.build.props index 41c8f51822..ea740b38fd 100644 --- a/Ix.NET/Source/Directory.build.props +++ b/Ix.NET/Source/Directory.build.props @@ -12,7 +12,7 @@ true true $(MSBuildThisFileDirectory)ReactiveX.snk - $(NoWarn);1701;1702;CS1591 + $(NoWarn);1701;1702;CS1591;NU5105 en-US $(MSBuildProjectName.Contains('Test')) embedded