-
Notifications
You must be signed in to change notification settings - Fork 238
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve the driver downloader #2752
Conversation
* Use Spectre.Console.Cli instead of CommandLineParser, which provides a _free_ spinner while downloading drivers. * Automatically compute a default for the `--basepath` option (it would not even be required anymore). * Actually run the `EnsurePrerequisitsRan` target so that people trying to build the Playwright project have a clear error with the solution to download the missing drivers.
Thank you for your contribution, but since this is not a user-facing change we'd prefer to keep this as it is. Changing command line parsers and code around introduces a risk of breaking our dev workflows Als this dependency is not very popular which opens it up for potential supply chain attacks. Thanks for your understanding! |
I think being a developer-only feature doesn't preclude it from being friendly. Using Spectre.Console opens up the possibility for a much better experience than the current implementation with progress bars, akin the Mongo2Go downloader: https://asciinema.org/a/7JtLaRBbyNdIINiTu2pWIw6pd That's what I had in mind for future improvements based on Spectre.Console.
We are talking about a command line tool that accepts a single command (
Before:
After:
Well, Spectre.Console has 7.7k stars on GitHub vs 4.2k for CommandLineParser. It has a team a 5 maintainers (full disclosure: which I'm part of) who diligently review pull requests before merging. It is supported by the .NET Foundation, has an up to date documentation web site and scans pull requests with Snyk to automatically find potential vulnerabilities. Overall, it's a pretty good OSS citizen. I can't really agree with you on the potential supply chain attack here. Finally, I also fixed the |
We appreciate the contribution but we'll close it as per #2752 (comment) for now since it does not include any user-facing changes / fix something and introduces a new dependency. |
I'm disappointed that this was not reconsidered. 😔
Well, it adds a spinner indicating that the drivers are being downloaded, the help text is improved and the
The
Well, it removes another one. |
--basepath
option (it would not even be required anymore).EnsurePrerequisitsRan
target so that people trying to build the Playwright project have a clear error with the solution to download the missing drivers.