diff --git a/Directory.Packages.props b/Directory.Packages.props index f6b8692..40b2a4c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -4,22 +4,22 @@ - + - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + \ No newline at end of file diff --git a/src/UnityBuildRunner.Core/SimpleConsoleLogger.cs b/src/UnityBuildRunner.Core/SimpleConsoleLogger.cs index 85b3295..89511a5 100644 --- a/src/UnityBuildRunner.Core/SimpleConsoleLogger.cs +++ b/src/UnityBuildRunner.Core/SimpleConsoleLogger.cs @@ -1,7 +1,6 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using Microsoft.Extensions.Logging; -using System; namespace UnityBuildRunner.Core; @@ -30,7 +29,7 @@ public SimpleConsoleLogger() { } - public IDisposable BeginScope(TState state) + public IDisposable? BeginScope(TState state) where TState : notnull { return NullDisposable.Instance; } @@ -42,7 +41,7 @@ public bool IsEnabled(LogLevel logLevel) public void Log(LogLevel logLevel, EventId eventId, TState state, Exception? exception, Func formatter) { - if (formatter == null) throw new ArgumentNullException(nameof(formatter)); + ArgumentNullException.ThrowIfNull(formatter); var msg = formatter(state, exception); diff --git a/src/UnityBuildRunner/Program.cs b/src/UnityBuildRunner/Program.cs index 6795770..8e9b8ae 100644 --- a/src/UnityBuildRunner/Program.cs +++ b/src/UnityBuildRunner/Program.cs @@ -1,7 +1,4 @@ using Microsoft.Extensions.Logging; -using System; -using System.Linq; -using System.Threading.Tasks; using UnityBuildRunner.Core; var builder = ConsoleApp.CreateBuilder(args); @@ -9,33 +6,26 @@ app.AddCommands(); app.Run(); -public class UnityBuildRunnerCommand : ConsoleAppBase +public class UnityBuildRunnerCommand(ILogger logger) : ConsoleAppBase { private const string DefaultTimeout = "02:00:00"; // 2 hours - private readonly ILogger logger; - private readonly TimeSpan timeoutDefault; - - public UnityBuildRunnerCommand(ILogger logger) - { - this.logger = logger; - timeoutDefault = TimeSpan.Parse(DefaultTimeout); - } + private readonly TimeSpan timeoutDefault = TimeSpan.Parse(DefaultTimeout); [RootCommand] public async Task Run([Option("--unity-path", "Full Path to the Unity executable, leave empty when use 'UnityPath' Environment variables instead.")] string unityPath = "", [Option("--timeout", "Timeout for Unity Build.")] string timeout = DefaultTimeout) { var arguments = Context.Arguments - .Except(new[] { "--timeout", timeout }); + .Except(["--timeout", timeout]); if (!string.IsNullOrEmpty(unityPath)) { - arguments = arguments.Except(new[] { "--unity-path", unityPath }); + arguments = arguments.Except(["--unity-path", unityPath]); } var args = arguments?.ToArray(); - if (args is null || !args.Any()) + if (args is null || args.Length == 0) { - throw new ArgumentOutOfRangeException($"No valid argument found, exiting. You have specified arguments: {string.Join(" ", args ?? Array.Empty())}"); + throw new ArgumentOutOfRangeException($"No valid argument found, exiting. You have specified arguments: {string.Join(" ", args ?? [])}"); } // build diff --git a/tests/UnityBuildRunner.Core.Tests/UnityBuildRunner.Core.Tests.csproj b/tests/UnityBuildRunner.Core.Tests/UnityBuildRunner.Core.Tests.csproj index 0311094..b7e7ce3 100644 --- a/tests/UnityBuildRunner.Core.Tests/UnityBuildRunner.Core.Tests.csproj +++ b/tests/UnityBuildRunner.Core.Tests/UnityBuildRunner.Core.Tests.csproj @@ -5,12 +5,21 @@ - - + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + - + + all + runtime; build; native; contentfiles; analyzers; buildtransitive +