mirror of
https://github.com/servo/servo.git
synced 2025-09-19 11:20:09 +01:00
servoshell: Replace getopts
with bpaf
for argument parsing (#37194)
This includes some small refactoring and some small breaking changes as listed below. Other than these I tried to keep the functionality exactly the same but because in the old code the parsing and settings of preferences was intermingled it was difficult to figure out. Small Breaking: - Size and resources-path were unused but appeared in the help. - soft-fail and hard-fail: Soft-fail flag got removed because it is too difficult to keep both. The default is now soft-fail and hard-fail can be enabled. - The help strings are obviously formatted differently now. - -V does not work anymore but -v and --version. Ideally, we want to have the ServoShellPreferences and Preferences be directly the Argument structure but that needs a bit more discussion because it would break backwards compatibility with the commandline. This increases the binary size by ~280kb. Testing: The testcases are still working but they do not cover much. I added a unit test for the -p flag because it is the most difficult to parse in general. Fixes: This will fix a small number of various parsing misshaps. It will also show if we are removing an option via unused lint. Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
This commit is contained in:
parent
b29eab0ffe
commit
ed66e0b0ca
10 changed files with 542 additions and 494 deletions
|
@ -64,7 +64,6 @@ fnv = "1.0"
|
|||
fonts_traits = { path = "components/shared/fonts" }
|
||||
freetype-sys = "0.20"
|
||||
fxhash = "0.2"
|
||||
getopts = "0.2.24"
|
||||
gleam = "0.15"
|
||||
glow = "0.16"
|
||||
gstreamer = { version = "0.23", features = ["v1_18"] }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue