Skip to content

Commit 3cd240b

Browse files
committed
update target framework from net461 to netcoreapp3.1
1 parent 0c77e6a commit 3cd240b

File tree

5 files changed

+9
-194
lines changed

5 files changed

+9
-194
lines changed

projects/RabbitMQ.Client/RabbitMQ.Client.csproj

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net461;netstandard2.0</TargetFrameworks>
4+
<TargetFrameworks>netcoreapp3.1;netstandard2.0</TargetFrameworks>
55
<NoWarn>$(NoWarn);CS1591</NoWarn>
66
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
77
<AssemblyTitle>RabbitMQ Client Library for .NET</AssemblyTitle>
@@ -28,6 +28,7 @@
2828
<PackageOutputPath>..\..\packages</PackageOutputPath>
2929
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
3030
<CodeAnalysisRuleSet>RabbitMQ.ruleset</CodeAnalysisRuleSet>
31+
<LangVersion>latest</LangVersion>
3132
</PropertyGroup>
3233

3334
<PropertyGroup Condition="'$(CONCOURSE_CI_BUILD)' == 'true'">
@@ -57,7 +58,7 @@
5758
</ItemGroup>
5859

5960
<ItemGroup>
60-
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="3.3.0" PrivateAssets="All" />
61+
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="3.3.1" PrivateAssets="All" />
6162
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.0" PrivateAssets="All" />
6263
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
6364
<PackageReference Include="MinVer" Version="2.3.0" PrivateAssets="All" />

projects/RabbitMQ.Client/client/impl/TcpClientAdapter.cs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,10 @@ public virtual async Task ConnectAsync(string host, int port)
3030
await ConnectAsync(ep, port).ConfigureAwait(false);
3131
}
3232

33-
public virtual async Task ConnectAsync(IPAddress ep, int port)
33+
public virtual Task ConnectAsync(IPAddress ep, int port)
3434
{
3535
AssertSocket();
36-
#if NET461
37-
await Task.Run(() => _sock.Connect(ep, port)).ConfigureAwait(false);
38-
#else
39-
await _sock.ConnectAsync(ep, port).ConfigureAwait(false);
40-
#endif
36+
return _sock.ConnectAsync(ep, port);
4137
}
4238

4339
public virtual void Close()

projects/RabbitMQ.Client/util/NetworkOrderDeserializer.cs

Lines changed: 1 addition & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -9,124 +9,50 @@ internal static class NetworkOrderDeserializer
99
[MethodImpl(MethodImplOptions.AggressiveInlining)]
1010
internal static double ReadDouble(ReadOnlySpan<byte> span)
1111
{
12-
#if NETFRAMEWORK
13-
if (span.Length < 8)
14-
{
15-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode Double from memory.");
16-
}
17-
ulong val = ReadUInt64(span);
18-
#elif NETSTANDARD
19-
ulong val = BinaryPrimitives.ReadUInt64BigEndian(span);
20-
#endif
21-
return Unsafe.As<ulong, double>(ref val);
12+
return BitConverter.Int64BitsToDouble(BinaryPrimitives.ReadInt64BigEndian(span));
2213
}
2314

2415
[MethodImpl(MethodImplOptions.AggressiveInlining)]
2516
internal static short ReadInt16(ReadOnlySpan<byte> span)
2617
{
27-
#if NETFRAMEWORK
28-
if (span.Length < 2)
29-
{
30-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode Int16 from memory.");
31-
}
32-
33-
return (short)ReadUInt16(span);
34-
#elif NETSTANDARD
3518
return BinaryPrimitives.ReadInt16BigEndian(span);
36-
#endif
3719
}
3820

3921
[MethodImpl(MethodImplOptions.AggressiveInlining)]
4022
internal static int ReadInt32(ReadOnlySpan<byte> span)
4123
{
42-
#if NETFRAMEWORK
43-
if (span.Length < 4)
44-
{
45-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode Int32 from memory.");
46-
}
47-
48-
return (int)ReadUInt32(span);
49-
#elif NETSTANDARD
5024
return BinaryPrimitives.ReadInt32BigEndian(span);
51-
#endif
5225
}
5326

5427
[MethodImpl(MethodImplOptions.AggressiveInlining)]
5528
internal static long ReadInt64(ReadOnlySpan<byte> span)
5629
{
57-
#if NETFRAMEWORK
58-
if (span.Length < 8)
59-
{
60-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode Int64 from memory.");
61-
}
62-
63-
return (long)ReadUInt64(span);
64-
#elif NETSTANDARD
6530
return BinaryPrimitives.ReadInt64BigEndian(span);
66-
#endif
6731
}
6832

6933
[MethodImpl(MethodImplOptions.AggressiveInlining)]
7034
internal static float ReadSingle(ReadOnlySpan<byte> span)
7135
{
72-
#if NETFRAMEWORK
73-
if (span.Length < 4)
74-
{
75-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode Single from memory.");
76-
}
77-
78-
uint num = ReadUInt32(span);
79-
#elif NETSTANDARD
8036
uint num = BinaryPrimitives.ReadUInt32BigEndian(span);
81-
#endif
8237
return Unsafe.As<uint, float>(ref num);
8338
}
8439

8540
[MethodImpl(MethodImplOptions.AggressiveInlining)]
8641
internal static ushort ReadUInt16(ReadOnlySpan<byte> span)
8742
{
88-
#if NETFRAMEWORK
89-
if (span.Length < 2)
90-
{
91-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode UInt16 from memory.");
92-
}
93-
94-
return (ushort)((span[0] << 8) | span[1]);
95-
#elif NETSTANDARD
9643
return BinaryPrimitives.ReadUInt16BigEndian(span);
97-
#endif
9844
}
9945

10046
[MethodImpl(MethodImplOptions.AggressiveInlining)]
10147
internal static uint ReadUInt32(ReadOnlySpan<byte> span)
10248
{
103-
#if NETFRAMEWORK
104-
if (span.Length < 4)
105-
{
106-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode UInt32 from memory.");
107-
}
108-
109-
return (uint)((span[0] << 24) | (span[1] << 16) | (span[2] << 8) | span[3]);
110-
#elif NETSTANDARD
11149
return BinaryPrimitives.ReadUInt32BigEndian(span);
112-
#endif
11350
}
11451

11552
[MethodImpl(MethodImplOptions.AggressiveInlining)]
11653
internal static ulong ReadUInt64(ReadOnlySpan<byte> span)
11754
{
118-
#if NETFRAMEWORK
119-
if (span.Length < 8)
120-
{
121-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to decode UInt64 from memory.");
122-
}
123-
124-
uint num1 = (uint)((span[0] << 24) | (span[1] << 16) | (span[2] << 8) | span[3]);
125-
uint num2 = (uint)((span[4] << 24) | (span[5] << 16) | (span[6] << 8) | span[7]);
126-
return ((ulong)num1 << 32) | num2;
127-
#elif NETSTANDARD
12855
return BinaryPrimitives.ReadUInt64BigEndian(span);
129-
#endif
13056
}
13157
}
13258
}
Lines changed: 1 addition & 110 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
using System;
22
using System.Buffers.Binary;
33
using System.Runtime.CompilerServices;
4-
using System.Runtime.InteropServices;
54

65
namespace RabbitMQ.Util
76
{
@@ -10,158 +9,50 @@ internal static class NetworkOrderSerializer
109
[MethodImpl(MethodImplOptions.AggressiveInlining)]
1110
internal static void WriteDouble(Span<byte> span, double val)
1211
{
13-
#if NETFRAMEWORK
14-
if (span.Length < 8)
15-
{
16-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write Double to memory.");
17-
}
18-
19-
long tempVal = BitConverter.DoubleToInt64Bits(val);
20-
span[0] = (byte)((tempVal >> 56) & 0xFF);
21-
span[1] = (byte)((tempVal >> 48) & 0xFF);
22-
span[2] = (byte)((tempVal >> 40) & 0xFF);
23-
span[3] = (byte)((tempVal >> 32) & 0xFF);
24-
span[4] = (byte)((tempVal >> 24) & 0xFF);
25-
span[5] = (byte)((tempVal >> 16) & 0xFF);
26-
span[6] = (byte)((tempVal >> 8) & 0xFF);
27-
span[7] = (byte)(tempVal & 0xFF);
28-
#elif NETSTANDARD
29-
long tempVal = BitConverter.DoubleToInt64Bits(val);
30-
BinaryPrimitives.WriteInt64BigEndian(span, tempVal);
31-
#endif
12+
BinaryPrimitives.WriteInt64BigEndian(span, BitConverter.DoubleToInt64Bits(val));
3213
}
3314

3415
[MethodImpl(MethodImplOptions.AggressiveInlining)]
3516
internal static void WriteInt16(Span<byte> span, short val)
3617
{
37-
#if NETFRAMEWORK
38-
if (span.Length < 2)
39-
{
40-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write Int16 to memory.");
41-
}
42-
43-
span[0] = (byte)((val >> 8) & 0xFF);
44-
span[1] = (byte)(val & 0xFF);
45-
#elif NETSTANDARD
4618
BinaryPrimitives.WriteInt16BigEndian(span, val);
47-
#endif
4819
}
4920

5021
[MethodImpl(MethodImplOptions.AggressiveInlining)]
5122
internal static void WriteInt32(Span<byte> span, int val)
5223
{
53-
#if NETFRAMEWORK
54-
if (span.Length < 4)
55-
{
56-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write Int32 to memory.");
57-
}
58-
59-
span[0] = (byte)((val >> 24) & 0xFF);
60-
span[1] = (byte)((val >> 16) & 0xFF);
61-
span[2] = (byte)((val >> 8) & 0xFF);
62-
span[3] = (byte)(val & 0xFF);
63-
#elif NETSTANDARD
6424
BinaryPrimitives.WriteInt32BigEndian(span, val);
65-
#endif
6625
}
6726

6827
[MethodImpl(MethodImplOptions.AggressiveInlining)]
6928
internal static void WriteInt64(Span<byte> span, long val)
7029
{
71-
#if NETFRAMEWORK
72-
if (span.Length < 8)
73-
{
74-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write Int64 to memory.");
75-
}
76-
77-
span[0] = (byte)((val >> 56) & 0xFF);
78-
span[1] = (byte)((val >> 48) & 0xFF);
79-
span[2] = (byte)((val >> 40) & 0xFF);
80-
span[3] = (byte)((val >> 32) & 0xFF);
81-
span[4] = (byte)((val >> 24) & 0xFF);
82-
span[5] = (byte)((val >> 16) & 0xFF);
83-
span[6] = (byte)((val >> 8) & 0xFF);
84-
span[7] = (byte)(val & 0xFF);
85-
#elif NETSTANDARD
8630
BinaryPrimitives.WriteInt64BigEndian(span, val);
87-
#endif
8831
}
8932

9033
[MethodImpl(MethodImplOptions.AggressiveInlining)]
9134
internal static void WriteSingle(Span<byte> span, float val)
9235
{
93-
#if NETFRAMEWORK
94-
if (span.Length < 4)
95-
{
96-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write Single to memory.");
97-
}
98-
99-
int tempVal = Unsafe.As<float, int>(ref val);
100-
span[0] = (byte)((tempVal >> 24) & 0xFF);
101-
span[1] = (byte)((tempVal >> 16) & 0xFF);
102-
span[2] = (byte)((tempVal >> 8) & 0xFF);
103-
span[3] = (byte)(tempVal & 0xFF);
104-
#elif NETSTANDARD
10536
int tempVal = Unsafe.As<float, int>(ref val);
10637
BinaryPrimitives.WriteInt32BigEndian(span, tempVal);
107-
#endif
10838
}
10939

11040
[MethodImpl(MethodImplOptions.AggressiveInlining)]
11141
internal static void WriteUInt16(Span<byte> span, ushort val)
11242
{
113-
#if NETFRAMEWORK
114-
if (span.Length < 2)
115-
{
116-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write UInt16 to memory.");
117-
}
118-
119-
span[0] = (byte)((val >> 8) & 0xFF);
120-
span[1] = (byte)(val & 0xFF);
121-
#elif NETSTANDARD
12243
BinaryPrimitives.WriteUInt16BigEndian(span, val);
123-
#endif
12444
}
12545

12646
[MethodImpl(MethodImplOptions.AggressiveInlining)]
12747
internal static void WriteUInt32(Span<byte> span, uint val)
12848
{
129-
#if NETFRAMEWORK
130-
if (span.Length < 4)
131-
{
132-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write UInt32 to memory.");
133-
}
134-
135-
span[0] = (byte)((val >> 24) & 0xFF);
136-
span[1] = (byte)((val >> 16) & 0xFF);
137-
span[2] = (byte)((val >> 8) & 0xFF);
138-
span[3] = (byte)(val & 0xFF);
139-
#elif NETSTANDARD
14049
BinaryPrimitives.WriteUInt32BigEndian(span, val);
141-
#endif
14250
}
14351

144-
14552
[MethodImpl(MethodImplOptions.AggressiveInlining)]
14653
internal static void WriteUInt64(Span<byte> span, ulong val)
14754
{
148-
#if NETFRAMEWORK
149-
if (span.Length < 8)
150-
{
151-
throw new ArgumentOutOfRangeException(nameof(span), "Insufficient length to write UInt64 from memory.");
152-
}
153-
154-
span[0] = (byte)((val >> 56) & 0xFF);
155-
span[1] = (byte)((val >> 48) & 0xFF);
156-
span[2] = (byte)((val >> 40) & 0xFF);
157-
span[3] = (byte)((val >> 32) & 0xFF);
158-
span[4] = (byte)((val >> 24) & 0xFF);
159-
span[5] = (byte)((val >> 16) & 0xFF);
160-
span[6] = (byte)((val >> 8) & 0xFF);
161-
span[7] = (byte)(val & 0xFF);
162-
#elif NETSTANDARD
16355
BinaryPrimitives.WriteUInt64BigEndian(span, val);
164-
#endif
16556
}
16657
}
16758
}

projects/Unit/Unit.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net461;netcoreapp3.1</TargetFrameworks>
4+
<TargetFrameworks>netcoreapp3.1;netstandard2.0</TargetFrameworks>
55
<AssemblyOriginatorKeyFile>../rabbit.snk</AssemblyOriginatorKeyFile>
66
<SignAssembly>true</SignAssembly>
7+
<LangVersion>latest</LangVersion>
78
</PropertyGroup>
89

910
<ItemGroup>

0 commit comments

Comments
 (0)