feat: remove spectre.console
All checks were successful
default / dotnet-default-workflow (pull_request) Successful in 2m28s
default / dotnet-default-workflow (push) Successful in 1m16s

Replace `Spectre.Console.Cli` with `System.CommandLine`
This commit is contained in:
Louis Seubert 2026-05-10 15:08:55 +02:00
commit d5629a49a9
Signed by: louis9902
GPG key ID: 4B9DB28F826553BD
14 changed files with 150 additions and 134 deletions

View file

@ -3,32 +3,17 @@
internal sealed class Output : IDisposable
{
private readonly CancellationTokenSource _cts = new();
public Output()
{
Console.CancelKeyPress += Cancel;
}
public StreamReader Stdin { get; } = new(Console.OpenStandardInput(), leaveOpen: false);
public StreamWriter Stdout { get; } = new(Console.OpenStandardOutput(), leaveOpen: false);
public StreamWriter Stderr { get; } = new(Console.OpenStandardError(), leaveOpen: false);
public CancellationToken CancellationToken => _cts.Token;
public static Output Connect()
{
return new Output();
}
private void Cancel(object? sender, ConsoleCancelEventArgs args)
{
args.Cancel = true;
_cts.Cancel();
}
public void Dispose()
{
Stdout.BaseStream.Flush();
@ -36,7 +21,5 @@ internal sealed class Output : IDisposable
Stderr.BaseStream.Flush();
Stderr.Dispose();
Stdin.Dispose();
Console.CancelKeyPress -= Cancel;
_cts.Dispose();
}
}