mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-05-01 10:11:14 -03:00
don't run fish_update_completions in unit tests
Running `fish_update_completions` in unit tests is not needed and hideously expensive. To the point it can cause flakey test behavior.
This commit is contained in:
@@ -110,9 +110,14 @@ function __fish_config_interactive -d "Initializations that should be performed
|
||||
# Generate man page completions if not present.
|
||||
#
|
||||
if not test -d $userdatadir/fish/generated_completions
|
||||
command -s python >/dev/null # feature needs python, don't try this on launch without it (#3588)
|
||||
# fish_update_completions is a function, so it can not be directly run in background.
|
||||
and eval (string escape "$__fish_bin_dir/fish") "-c 'fish_update_completions >/dev/null ^/dev/null' &"
|
||||
# Generating completions from man pages needs python (see issue #3588).
|
||||
# Don't do this if we're being invoked as part of running unit tests.
|
||||
if command -qs python
|
||||
and not set -q FISH_UNIT_TESTS_RUNNING
|
||||
# We cannot simply do `fish_update_completions &` because it is a function. Hence the
|
||||
# need for the convoluted `eval` to run it in a subshell.
|
||||
eval (string escape "$__fish_bin_dir/fish") "-c 'fish_update_completions >/dev/null ^/dev/null' &"
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
|
||||
Reference in New Issue
Block a user