From 9f6d4ab62f79391440ceb09295303f7b81cfde00 Mon Sep 17 00:00:00 2001 From: Kwoth Date: Fri, 18 Jun 2021 04:49:32 +0200 Subject: [PATCH] Package upgrades - Upgraded all packages to latest version - Removed obsolete code due to version upgrade - More nullref warnings silenced --- src/NadekoBot.Tests/NadekoBot.Tests.csproj | 6 +- .../Providers/PicartoProvider.cs | 2 +- .../Providers/TwitchProvider.cs | 6 +- src/NadekoBot/NadekoBot.csproj | 53 ++--- src/NadekoBot/Services/Impl/RedisCache.cs | 1 - .../Ayu.Discord.Voice/ArrayBufferWriter.cs | 209 ------------------ .../Ayu.Discord.Voice.csproj | 7 +- src/ayu/Ayu.Discord.Voice/SocketClient.cs | 2 +- 8 files changed, 39 insertions(+), 247 deletions(-) delete mode 100644 src/ayu/Ayu.Discord.Voice/ArrayBufferWriter.cs diff --git a/src/NadekoBot.Tests/NadekoBot.Tests.csproj b/src/NadekoBot.Tests/NadekoBot.Tests.csproj index b3aa8c0d0..01a070066 100644 --- a/src/NadekoBot.Tests/NadekoBot.Tests.csproj +++ b/src/NadekoBot.Tests/NadekoBot.Tests.csproj @@ -7,9 +7,9 @@ - - - + + + diff --git a/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/PicartoProvider.cs b/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/PicartoProvider.cs index 2c6111241..1d53bf02f 100644 --- a/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/PicartoProvider.cs +++ b/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/PicartoProvider.cs @@ -74,7 +74,7 @@ namespace NadekoBot.Core.Modules.Searches.Common.StreamNotifications.Providers if (!res.IsSuccessStatusCode) continue; - var userData = JsonConvert.DeserializeObject(await res.Content.ReadAsStringAsync()); + var userData = JsonConvert.DeserializeObject(await res.Content.ReadAsStringAsync())!; toReturn.Add(ToStreamData(userData)); _failingStreams.TryRemove(login, out _); diff --git a/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/TwitchProvider.cs b/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/TwitchProvider.cs index 89b30d96e..0a0f871bf 100644 --- a/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/TwitchProvider.cs +++ b/src/NadekoBot/Modules/Searches/Common/StreamNotifications/Providers/TwitchProvider.cs @@ -72,7 +72,7 @@ namespace NadekoBot.Core.Modules.Searches.Common.StreamNotifications.Providers // get id based on the username var idsStr = await http.GetStringAsync($"https://api.twitch.tv/kraken/users?login={login}"); var userData = JsonConvert.DeserializeObject(idsStr); - var user = userData.Users.FirstOrDefault(); + var user = userData?.Users.FirstOrDefault(); // if user can't be found, skip, it means there is no such user if (user is null) @@ -84,11 +84,11 @@ namespace NadekoBot.Core.Modules.Searches.Common.StreamNotifications.Providers JsonConvert.DeserializeAnonymousType(str, new {Stream = new TwitchResponseV5.Stream()}); // if stream is null, user is not streaming - if (resObj.Stream is null) + if (resObj?.Stream is null) { // if user is not streaming, get his offline banner var chStr = await http.GetStringAsync($"https://api.twitch.tv/kraken/channels/{user.Id}"); - var ch = JsonConvert.DeserializeObject(chStr); + var ch = JsonConvert.DeserializeObject(chStr)!; toReturn.Add(new StreamData { diff --git a/src/NadekoBot/NadekoBot.csproj b/src/NadekoBot/NadekoBot.csproj index a6385ccfb..b293e1bee 100644 --- a/src/NadekoBot/NadekoBot.csproj +++ b/src/NadekoBot/NadekoBot.csproj @@ -9,40 +9,43 @@ - - + + - - + + - - - - - - - - - - - - - - + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + - + - + - + - - - - + + + + diff --git a/src/NadekoBot/Services/Impl/RedisCache.cs b/src/NadekoBot/Services/Impl/RedisCache.cs index 105179278..b83c2d590 100644 --- a/src/NadekoBot/Services/Impl/RedisCache.cs +++ b/src/NadekoBot/Services/Impl/RedisCache.cs @@ -24,7 +24,6 @@ namespace NadekoBot.Core.Services.Impl Redis = ConnectionMultiplexer.Connect(conf); _redisEndpoint = Redis.GetEndPoints().First(); - Redis.PreserveAsyncOrder = false; LocalImages = new RedisImagesCache(Redis, creds); LocalData = new RedisLocalDataCache(Redis, creds, shardId); _redisKey = creds.RedisKey(); diff --git a/src/ayu/Ayu.Discord.Voice/ArrayBufferWriter.cs b/src/ayu/Ayu.Discord.Voice/ArrayBufferWriter.cs deleted file mode 100644 index 3eb0a4786..000000000 --- a/src/ayu/Ayu.Discord.Voice/ArrayBufferWriter.cs +++ /dev/null @@ -1,209 +0,0 @@ -using System; -using System.Buffers; -using System.Diagnostics; - -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -namespace Ayu.Discord.Voice -{ - sealed class ArrayBufferWriter : IBufferWriter - { - // Copy of Array.MaxLength. - private const int ArrayMaxLength = 0x7FFFFFC7; - - private const int DefaultInitialBufferSize = 256; - - private T[] _buffer; - private int _index; - - - /// - /// Creates an instance of an , in which data can be written to, - /// with the default initial capacity. - /// - public ArrayBufferWriter() - { - _buffer = Array.Empty(); - _index = 0; - } - - /// - /// Creates an instance of an , in which data can be written to, - /// with an initial capacity specified. - /// - /// The minimum capacity with which to initialize the underlying buffer. - /// - /// Thrown when is not positive (i.e. less than or equal to 0). - /// - public ArrayBufferWriter(int initialCapacity) - { - if (initialCapacity <= 0) - throw new ArgumentException(null, nameof(initialCapacity)); - - _buffer = new T[initialCapacity]; - _index = 0; - } - - /// - /// Returns the data written to the underlying buffer so far, as a . - /// - public ReadOnlyMemory WrittenMemory => _buffer.AsMemory(0, _index); - - /// - /// Returns the data written to the underlying buffer so far, as a . - /// - public ReadOnlySpan WrittenSpan => _buffer.AsSpan(0, _index); - - /// - /// Returns the amount of data written to the underlying buffer so far. - /// - public int WrittenCount => _index; - - /// - /// Returns the total amount of space within the underlying buffer. - /// - public int Capacity => _buffer.Length; - - /// - /// Returns the amount of space available that can still be written into without forcing the underlying buffer to grow. - /// - public int FreeCapacity => _buffer.Length - _index; - - /// - /// Clears the data written to the underlying buffer. - /// - /// - /// You must clear the before trying to re-use it. - /// - public void Clear() - { - Debug.Assert(_buffer.Length >= _index); - _buffer.AsSpan(0, _index).Clear(); - _index = 0; - } - - /// - /// Notifies that amount of data was written to the output / - /// - /// - /// Thrown when is negative. - /// - /// - /// Thrown when attempting to advance past the end of the underlying buffer. - /// - /// - /// You must request a new buffer after calling Advance to continue writing more data and cannot write to a previously acquired buffer. - /// - public void Advance(int count) - { - if (count < 0) - throw new ArgumentException(null, nameof(count)); - - if (_index > _buffer.Length - count) - ThrowInvalidOperationException_AdvancedTooFar(_buffer.Length); - - _index += count; - } - - /// - /// Returns a to write to that is at least the requested length (specified by ). - /// If no is provided (or it's equal to 0), some non-empty buffer is returned. - /// - /// - /// Thrown when is negative. - /// - /// - /// This will never return an empty . - /// - /// - /// There is no guarantee that successive calls will return the same buffer or the same-sized buffer. - /// - /// - /// You must request a new buffer after calling Advance to continue writing more data and cannot write to a previously acquired buffer. - /// - public Memory GetMemory(int sizeHint = 0) - { - CheckAndResizeBuffer(sizeHint); - Debug.Assert(_buffer.Length > _index); - return _buffer.AsMemory(_index); - } - - /// - /// Returns a to write to that is at least the requested length (specified by ). - /// If no is provided (or it's equal to 0), some non-empty buffer is returned. - /// - /// - /// Thrown when is negative. - /// - /// - /// This will never return an empty . - /// - /// - /// There is no guarantee that successive calls will return the same buffer or the same-sized buffer. - /// - /// - /// You must request a new buffer after calling Advance to continue writing more data and cannot write to a previously acquired buffer. - /// - public Span GetSpan(int sizeHint = 0) - { - CheckAndResizeBuffer(sizeHint); - Debug.Assert(_buffer.Length > _index); - return _buffer.AsSpan(_index); - } - - private void CheckAndResizeBuffer(int sizeHint) - { - if (sizeHint < 0) - throw new ArgumentException(nameof(sizeHint)); - - if (sizeHint == 0) - { - sizeHint = 1; - } - - if (sizeHint > FreeCapacity) - { - int currentLength = _buffer.Length; - - // Attempt to grow by the larger of the sizeHint and double the current size. - int growBy = Math.Max(sizeHint, currentLength); - - if (currentLength == 0) - { - growBy = Math.Max(growBy, DefaultInitialBufferSize); - } - - int newSize = currentLength + growBy; - - if ((uint) newSize > int.MaxValue) - { - // Attempt to grow to ArrayMaxLength. - uint needed = (uint) (currentLength - FreeCapacity + sizeHint); - Debug.Assert(needed > currentLength); - - if (needed > ArrayMaxLength) - { - ThrowOutOfMemoryException(needed); - } - - newSize = ArrayMaxLength; - } - - Array.Resize(ref _buffer, newSize); - } - - Debug.Assert(FreeCapacity > 0 && FreeCapacity >= sizeHint); - } - - private static void ThrowInvalidOperationException_AdvancedTooFar(int capacity) - { - throw new InvalidOperationException(); - } - - private static void ThrowOutOfMemoryException(uint capacity) - { - throw new OutOfMemoryException(); - } - } -} \ No newline at end of file diff --git a/src/ayu/Ayu.Discord.Voice/Ayu.Discord.Voice.csproj b/src/ayu/Ayu.Discord.Voice/Ayu.Discord.Voice.csproj index 1de012fb3..c09d8a89b 100644 --- a/src/ayu/Ayu.Discord.Voice/Ayu.Discord.Voice.csproj +++ b/src/ayu/Ayu.Discord.Voice/Ayu.Discord.Voice.csproj @@ -1,13 +1,12 @@  - netcoreapp2.1 - 8.0 + netstandard2.1 true CS8632 - 1.0.1 + 1.0.2 - + diff --git a/src/ayu/Ayu.Discord.Voice/SocketClient.cs b/src/ayu/Ayu.Discord.Voice/SocketClient.cs index 33a53bbd3..0d35c629c 100644 --- a/src/ayu/Ayu.Discord.Voice/SocketClient.cs +++ b/src/ayu/Ayu.Discord.Voice/SocketClient.cs @@ -1,9 +1,9 @@ using Serilog; using System; +using System.Buffers; using System.Net.WebSockets; using System.Threading; using System.Threading.Tasks; -using Ayu.Discord.Voice; namespace Ayu.Discord.Gateway {