AlamoEngine-Tools / eaw-ci

A generic CI tool for Empire at War mod projects.
MIT License
3 stars 2 forks source link

PoC Spectre.Console #193

Open gruenwaldlk opened 3 years ago

gruenwaldlk commented 3 years ago

Discussed in https://github.com/AlamoEngine-Tools/eaw-ci/discussions/175

Originally posted by **gruenwaldlk** April 29, 2021 @SvenMarcus suggested that we switch from the default console to [Spectre.Console](https://spectreconsole.net) which does look like a promising balance between keeping the tool as a CLI application that is also intended for the use with CIs and providing the possibility of a more user friendly frontend. This discussion is mostly aimed at figuring out which parts need to be changed or updated to achieve that goal.
SvenMarcus commented 3 years ago

I think the current reporting structure is a good start, so that using the basic features of Spectre without changing our application core shouldn't be a problem. If we want to use progress bars for things like copying or uploading then we need to extend the live reporting capabilities a bit.

gruenwaldlk commented 3 years ago

I had a basic look at it today, bit more work than I thought, because we do have to swap stuff out into commands and Spectre specific constructs if we want to use Spectre.Console.Cli instead of the current library, so the application host and a few general organisational things will have to change. I'll probably also use the chance to fixup the current DI setup, because that's mostly half-assed on my part.