From f09b0e13d901cc4b03928911ed9ff4178f8fdb5b Mon Sep 17 00:00:00 2001 From: BrennanConroy Date: Wed, 9 May 2018 09:59:02 -0700 Subject: [PATCH] Upgrade to netcoreapp2.2 and remove netcoreapp2.0 testing (#2221) --- Directory.Build.targets | 6 +++--- benchmarkapps/BenchmarkServer/BenchmarkServer.csproj | 2 +- benchmarkapps/Crankier/Crankier.csproj | 4 ++-- .../Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj | 4 ++-- build/dependencies.props | 3 +-- build/repo.props | 3 +-- clients/ts/FunctionalTests/FunctionalTests.csproj | 2 +- clients/ts/FunctionalTests/selenium/run-tests.ts | 2 +- samples/ClientSample/ClientSample.csproj | 2 +- samples/ClientSample/Tcp/SocketReceiver.cs | 2 +- samples/ClientSample/Tcp/SocketSender.cs | 4 ++-- samples/SignalRSamples/SignalRSamples.csproj | 2 +- samples/SocialWeather/SocialWeather.csproj | 2 +- samples/WebSocketSample/WebSocketSample.csproj | 2 +- src/Common/MemoryBufferWriter.cs | 4 ++-- src/Common/PipeWriterStream.cs | 2 +- src/Common/StreamExtensions.cs | 4 ++-- src/Common/Utf8BufferTextReader.cs | 2 +- src/Common/Utf8BufferTextWriter.cs | 4 ++-- src/Common/WebSocketExtensions.cs | 6 +++--- .../HttpConnection.cs | 4 ++-- .../Internal/WebSocketsTransport.cs | 6 +++--- .../Microsoft.AspNetCore.Http.Connections.Client.csproj | 2 +- .../Internal/Transports/WebSocketsTransport.cs | 6 +++--- .../Microsoft.AspNetCore.Http.Connections.csproj | 2 +- .../Microsoft.AspNetCore.SignalR.Common.csproj | 2 +- test/Directory.Build.props | 3 +-- .../Internal/Protocol/MemoryBufferWriterTests.cs | 2 +- .../Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs | 2 +- 29 files changed, 44 insertions(+), 47 deletions(-) diff --git a/Directory.Build.targets b/Directory.Build.targets index 53b3f6e1da..a5761bff02 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,7 +1,7 @@  - $(MicrosoftNETCoreApp20PackageVersion) - $(MicrosoftNETCoreApp21PackageVersion) - $(NETStandardLibrary20PackageVersion) + $(MicrosoftNETCoreApp22PackageVersion) + + 99.9 diff --git a/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj b/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj index 7fe4c51423..66e3e33302 100644 --- a/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj +++ b/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj @@ -1,7 +1,7 @@  - netcoreapp2.1 + netcoreapp2.2 $([System.String]::Copy($(MicrosoftAspNetCoreAllPackageVersion)).Replace('2.2', '1.1')) diff --git a/benchmarkapps/Crankier/Crankier.csproj b/benchmarkapps/Crankier/Crankier.csproj index b4f4eeb920..d73db04ff4 100644 --- a/benchmarkapps/Crankier/Crankier.csproj +++ b/benchmarkapps/Crankier/Crankier.csproj @@ -1,8 +1,8 @@ - + Exe - netcoreapp2.1 + netcoreapp2.2 Microsoft.AspNetCore.SignalR.CranksRevenge diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj b/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj index 545d54f9b3..d391a18436 100644 --- a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj +++ b/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj @@ -1,8 +1,8 @@ - + Exe - netcoreapp2.1 + netcoreapp2.2 diff --git a/build/dependencies.props b/build/dependencies.props index 06f0429e50..1ab3645940 100644 --- a/build/dependencies.props +++ b/build/dependencies.props @@ -55,8 +55,7 @@ 2.2.0-preview1-34135 2.2.0-preview1-34135 2.2.0-preview1-34135 - 2.0.0 - 2.2.0-preview1-26424-04 + 2.2.0-preview1-26502-01 15.6.1 4.7.49 2.0.3 diff --git a/build/repo.props b/build/repo.props index 097feaba63..472d056854 100644 --- a/build/repo.props +++ b/build/repo.props @@ -19,7 +19,6 @@ - - + diff --git a/clients/ts/FunctionalTests/FunctionalTests.csproj b/clients/ts/FunctionalTests/FunctionalTests.csproj index d9c7edd8f9..5fa49f3dd2 100644 --- a/clients/ts/FunctionalTests/FunctionalTests.csproj +++ b/clients/ts/FunctionalTests/FunctionalTests.csproj @@ -1,7 +1,7 @@  - netcoreapp2.1 + netcoreapp2.2 True diff --git a/clients/ts/FunctionalTests/selenium/run-tests.ts b/clients/ts/FunctionalTests/selenium/run-tests.ts index c74603b12c..18095d7119 100644 --- a/clients/ts/FunctionalTests/selenium/run-tests.ts +++ b/clients/ts/FunctionalTests/selenium/run-tests.ts @@ -100,7 +100,7 @@ if (chromePath) { (async () => { try { - const serverPath = path.resolve(__dirname, "..", "bin", configuration, "netcoreapp2.1", "FunctionalTests.dll"); + const serverPath = path.resolve(__dirname, "..", "bin", configuration, "netcoreapp2.2", "FunctionalTests.dll"); debug(`Launching Functional Test Server: ${serverPath}`); const dotnet = spawn("dotnet", [serverPath], { diff --git a/samples/ClientSample/ClientSample.csproj b/samples/ClientSample/ClientSample.csproj index 966067f59b..b38755fe73 100644 --- a/samples/ClientSample/ClientSample.csproj +++ b/samples/ClientSample/ClientSample.csproj @@ -1,7 +1,7 @@  - netcoreapp2.1;net461 + netcoreapp2.2;net461 false Exe diff --git a/samples/ClientSample/Tcp/SocketReceiver.cs b/samples/ClientSample/Tcp/SocketReceiver.cs index 8c6421f078..f8e5d87b61 100644 --- a/samples/ClientSample/Tcp/SocketReceiver.cs +++ b/samples/ClientSample/Tcp/SocketReceiver.cs @@ -22,7 +22,7 @@ namespace ClientSample public SocketAwaitable ReceiveAsync(Memory buffer) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 _eventArgs.SetBuffer(buffer); #else var segment = buffer.GetArray(); diff --git a/samples/ClientSample/Tcp/SocketSender.cs b/samples/ClientSample/Tcp/SocketSender.cs index f87fa09413..49a44fbb27 100644 --- a/samples/ClientSample/Tcp/SocketSender.cs +++ b/samples/ClientSample/Tcp/SocketSender.cs @@ -32,7 +32,7 @@ namespace ClientSample return SendAsync(buffers.First); } -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 if (!_eventArgs.MemoryBuffer.Equals(Memory.Empty)) #else if (_eventArgs.Buffer != null) @@ -59,7 +59,7 @@ namespace ClientSample _eventArgs.BufferList = null; } -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 _eventArgs.SetBuffer(MemoryMarshal.AsMemory(memory)); #else var segment = memory.GetArray(); diff --git a/samples/SignalRSamples/SignalRSamples.csproj b/samples/SignalRSamples/SignalRSamples.csproj index 7ad313946a..76733a4496 100644 --- a/samples/SignalRSamples/SignalRSamples.csproj +++ b/samples/SignalRSamples/SignalRSamples.csproj @@ -1,7 +1,7 @@  - netcoreapp2.1;net461 + netcoreapp2.2;net461 false diff --git a/samples/SocialWeather/SocialWeather.csproj b/samples/SocialWeather/SocialWeather.csproj index 1b6413a83c..e96e794705 100644 --- a/samples/SocialWeather/SocialWeather.csproj +++ b/samples/SocialWeather/SocialWeather.csproj @@ -1,7 +1,7 @@  - netcoreapp2.1;net461 + netcoreapp2.2;net461 false diff --git a/samples/WebSocketSample/WebSocketSample.csproj b/samples/WebSocketSample/WebSocketSample.csproj index 6148552dba..8227ddf127 100644 --- a/samples/WebSocketSample/WebSocketSample.csproj +++ b/samples/WebSocketSample/WebSocketSample.csproj @@ -1,7 +1,7 @@  - netcoreapp2.1;net461 + netcoreapp2.2;net461 Exe false diff --git a/src/Common/MemoryBufferWriter.cs b/src/Common/MemoryBufferWriter.cs index 139c647cbc..e13f2be3f7 100644 --- a/src/Common/MemoryBufferWriter.cs +++ b/src/Common/MemoryBufferWriter.cs @@ -185,7 +185,7 @@ namespace Microsoft.AspNetCore.Internal { if (_completedSegments != null) { - // Copy full segments + // Copy full segments var count = _completedSegments.Count; for (var i = 0; i < count; i++) { @@ -293,7 +293,7 @@ namespace Microsoft.AspNetCore.Internal } } -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 public override void Write(ReadOnlySpan span) { if (_currentSegment != null && span.TryCopyTo(_currentSegment.AsSpan(_position))) diff --git a/src/Common/PipeWriterStream.cs b/src/Common/PipeWriterStream.cs index 94cdfb936e..1545acd9b1 100644 --- a/src/Common/PipeWriterStream.cs +++ b/src/Common/PipeWriterStream.cs @@ -60,7 +60,7 @@ namespace System.IO.Pipelines return WriteCoreAsync(buffer.AsMemory(offset, count), cancellationToken).AsTask(); } -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 public override ValueTask WriteAsync(ReadOnlyMemory source, CancellationToken cancellationToken = default) { return WriteCoreAsync(source, cancellationToken); diff --git a/src/Common/StreamExtensions.cs b/src/Common/StreamExtensions.cs index 60da892475..8c971ede0d 100644 --- a/src/Common/StreamExtensions.cs +++ b/src/Common/StreamExtensions.cs @@ -15,7 +15,7 @@ namespace System.IO { if (buffer.IsSingleSegment) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 return stream.WriteAsync(buffer.First, cancellationToken); #else var isArray = MemoryMarshal.TryGetArray(buffer.First, out var arraySegment); @@ -33,7 +33,7 @@ namespace System.IO var position = buffer.Start; while (buffer.TryGet(ref position, out var segment)) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 await stream.WriteAsync(segment, cancellationToken); #else var isArray = MemoryMarshal.TryGetArray(segment, out var arraySegment); diff --git a/src/Common/Utf8BufferTextReader.cs b/src/Common/Utf8BufferTextReader.cs index 4f22ea5b16..8927373370 100644 --- a/src/Common/Utf8BufferTextReader.cs +++ b/src/Common/Utf8BufferTextReader.cs @@ -72,7 +72,7 @@ namespace Microsoft.AspNetCore.SignalR.Internal var source = _utf8Buffer.First.Span; var bytesUsed = 0; var charsUsed = 0; -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 var destination = new Span(buffer, index, count); _decoder.Convert(source, destination, false, out bytesUsed, out charsUsed, out var completed); #else diff --git a/src/Common/Utf8BufferTextWriter.cs b/src/Common/Utf8BufferTextWriter.cs index f0f1a4edc8..f8592069bd 100644 --- a/src/Common/Utf8BufferTextWriter.cs +++ b/src/Common/Utf8BufferTextWriter.cs @@ -111,7 +111,7 @@ namespace Microsoft.AspNetCore.Internal // this should be an exceptional case var bytesUsed = 0; var charsUsed = 0; -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 _encoder.Convert(new Span(&value, 1), destination, false, out charsUsed, out bytesUsed, out _); #else fixed (byte* destinationBytes = &MemoryMarshal.GetReference(destination)) @@ -167,7 +167,7 @@ namespace Microsoft.AspNetCore.Internal var bytesUsed = 0; var charsUsed = 0; -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 _encoder.Convert(buffer, destination, false, out charsUsed, out bytesUsed, out _); #else unsafe diff --git a/src/Common/WebSocketExtensions.cs b/src/Common/WebSocketExtensions.cs index 8e3d4feb50..63eb7e62b3 100644 --- a/src/Common/WebSocketExtensions.cs +++ b/src/Common/WebSocketExtensions.cs @@ -13,7 +13,7 @@ namespace System.Net.WebSockets { public static ValueTask SendAsync(this WebSocket webSocket, ReadOnlySequence buffer, WebSocketMessageType webSocketMessageType, CancellationToken cancellationToken = default) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 if (buffer.IsSingleSegment) { return webSocket.SendAsync(buffer.First, webSocketMessageType, endOfMessage: true, cancellationToken); @@ -41,7 +41,7 @@ namespace System.Net.WebSockets var position = buffer.Start; while (buffer.TryGet(ref position, out var segment)) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 await webSocket.SendAsync(segment, webSocketMessageType, endOfMessage: false, cancellationToken); #else var isArray = MemoryMarshal.TryGetArray(segment, out var arraySegment); @@ -51,7 +51,7 @@ namespace System.Net.WebSockets } // Empty end of message frame -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 await webSocket.SendAsync(Memory.Empty, webSocketMessageType, endOfMessage: true, cancellationToken); #else await webSocket.SendAsync(new ArraySegment(Array.Empty()), webSocketMessageType, endOfMessage: true, cancellationToken); diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs b/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs index 176554485f..84b7c10ade 100644 --- a/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs +++ b/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs @@ -29,7 +29,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Client private static readonly Task _noAccessToken = Task.FromResult(null); private static readonly TimeSpan HttpClientTimeout = TimeSpan.FromSeconds(120); -#if !NETCOREAPP2_1 +#if !NETCOREAPP2_2 private static readonly Version Windows8Version = new Version(6, 2); #endif @@ -557,7 +557,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Client private static bool IsWebSocketsSupported() { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 // .NET Core 2.1 and above has a managed implementation return true; #else diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs b/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs index d471216b7d..0a78e0e17a 100644 --- a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs +++ b/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs @@ -194,7 +194,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Client.Internal { while (true) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 var result = await socket.ReceiveAsync(Memory.Empty, CancellationToken.None); if (result.MessageType == WebSocketMessageType.Close) @@ -210,7 +210,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Client.Internal } #endif var memory = _application.Output.GetMemory(); -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 // Because we checked the CloseStatus from the 0 byte read above, we don't need to check again after reading var receiveResult = await socket.ReceiveAsync(memory, CancellationToken.None); #else @@ -220,7 +220,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Client.Internal // Exceptions are handled above where the send and receive tasks are being run. var receiveResult = await socket.ReceiveAsync(arraySegment, CancellationToken.None); #endif - // Need to check again for NetCoreApp2.1 because a close can happen between a 0-byte read and the actual read + // Need to check again for NetCoreApp2.2 because a close can happen between a 0-byte read and the actual read if (receiveResult.MessageType == WebSocketMessageType.Close) { Log.WebSocketClosed(_logger, _webSocket.CloseStatus); diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj b/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj index 4c8534efe8..2c330f24b5 100644 --- a/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj +++ b/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj @@ -2,7 +2,7 @@ Client for ASP.NET Core Connection Handlers - netstandard2.0;netcoreapp2.1 + netstandard2.0;netcoreapp2.2 diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs b/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs index e77dbfe102..0312f5488b 100644 --- a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs +++ b/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs @@ -142,7 +142,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Internal.Transports { while (true) { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 // Do a 0 byte read so that idle connections don't allocate a buffer when waiting for a read var result = await socket.ReceiveAsync(Memory.Empty, CancellationToken.None); @@ -153,7 +153,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Internal.Transports #endif var memory = _application.Output.GetMemory(); -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 var receiveResult = await socket.ReceiveAsync(memory, CancellationToken.None); #else var isArray = MemoryMarshal.TryGetArray(memory, out var arraySegment); @@ -162,7 +162,7 @@ namespace Microsoft.AspNetCore.Http.Connections.Internal.Transports // Exceptions are handled above where the send and receive tasks are being run. var receiveResult = await socket.ReceiveAsync(arraySegment, CancellationToken.None); #endif - // Need to check again for NetCoreApp2.1 because a close can happen between a 0-byte read and the actual read + // Need to check again for NetCoreApp2.2 because a close can happen between a 0-byte read and the actual read if (receiveResult.MessageType == WebSocketMessageType.Close) { return; diff --git a/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj b/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj index 0b0a149c3a..5b3cb0660d 100644 --- a/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj +++ b/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj @@ -2,7 +2,7 @@ Components for providing real-time bi-directional communication across the Web. - netstandard2.0;netcoreapp2.1 + netstandard2.0;netcoreapp2.2 diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj b/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj index 08fec138f7..f09e38f0e4 100644 --- a/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj +++ b/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj @@ -2,7 +2,7 @@ Common serialiation primitives for SignalR Clients Servers - netstandard2.0;netcoreapp2.1 + netstandard2.0;netcoreapp2.2 Microsoft.AspNetCore.SignalR true diff --git a/test/Directory.Build.props b/test/Directory.Build.props index f96bfd2def..dfd1b2c370 100644 --- a/test/Directory.Build.props +++ b/test/Directory.Build.props @@ -2,9 +2,8 @@ - netcoreapp2.1 + netcoreapp2.2 $(DeveloperBuildTestTfms) - netcoreapp2.1;netcoreapp2.0 $(StandardTestTfms);net461 win7-x86 diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs b/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs index ff51d1791e..d8f51a80e3 100644 --- a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs +++ b/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs @@ -358,7 +358,7 @@ namespace Microsoft.AspNetCore.SignalR.Common.Tests.Internal.Protocol } } -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 [Fact] public void WriteSpanWorksAtNonZeroOffset() { diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs b/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs index b496299152..be8f1e90c5 100644 --- a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs +++ b/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs @@ -10,7 +10,7 @@ namespace Microsoft.AspNetCore.SignalR.Tests { public static bool IsWebSocketsSupported() { -#if NETCOREAPP2_1 +#if NETCOREAPP2_2 // .NET Core 2.1 and greater has sockets return true; #else