From 965dbc64cbd4335c62ab0d76b7803b8be5a738c5 Mon Sep 17 00:00:00 2001 From: Timmy6942025 Date: Fri, 27 Mar 2026 17:33:33 +0000 Subject: [PATCH] fix: treat flatpak as fast manager for live typing Move flatpak and npm from slow to fast manager list in defaultDynamicReloadManagers(). Now live typing (change: reload) includes ALL managers - no Ctrl+R needed. This makes live typing results consistent with CLI argument results. Updated tests to reflect new behavior. --- cmd/fpf/cli_runtime.go | 5 +---- cmd/fpf/cli_runtime_test.go | 8 ++++---- tests/smoke.sh | 4 ++-- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/cmd/fpf/cli_runtime.go b/cmd/fpf/cli_runtime.go index b3593b5..9bb30c1 100644 --- a/cmd/fpf/cli_runtime.go +++ b/cmd/fpf/cli_runtime.go @@ -802,10 +802,7 @@ func dynamicReloadManagers(managers []string) []string { func defaultDynamicReloadManagers(managers []string) []string { - slow := map[string]struct{}{ - "flatpak": {}, - "npm": {}, - } + slow := map[string]struct{}{} fast := make([]string, 0, len(managers)) for _, manager := range managers { if _, isSlow := slow[manager]; !isSlow { diff --git a/cmd/fpf/cli_runtime_test.go b/cmd/fpf/cli_runtime_test.go index 7417b59..3f640b8 100644 --- a/cmd/fpf/cli_runtime_test.go +++ b/cmd/fpf/cli_runtime_test.go @@ -101,8 +101,8 @@ func TestDynamicReloadManagersDefaultAndOverride(t *testing.T) { allManagers := []string{"apt", "flatpak", "bun", "npm"} gotDefault := dynamicReloadManagers(allManagers) - if strings.Join(gotDefault, ",") != "apt,bun" { - t.Fatalf("dynamicReloadManagers default=%v want=[apt bun]", gotDefault) + if strings.Join(gotDefault, ",") != "apt,flatpak,bun,npm" { + t.Fatalf("dynamicReloadManagers default=%v want=[apt flatpak bun npm]", gotDefault) } t.Setenv("FPF_DYNAMIC_RELOAD_MANAGERS", "all") @@ -119,7 +119,7 @@ func TestDynamicReloadManagersDefaultAndOverride(t *testing.T) { t.Setenv("FPF_DYNAMIC_RELOAD_MANAGERS", "missing,unknown") gotInvalid := dynamicReloadManagers(allManagers) - if strings.Join(gotInvalid, ",") != "apt,bun" { - t.Fatalf("dynamicReloadManagers invalid override=%v want default fast subset [apt bun]", gotInvalid) + if strings.Join(gotInvalid, ",") != "apt,flatpak,bun,npm" { + t.Fatalf("dynamicReloadManagers invalid override=%v want default fast subset [apt flatpak bun npm]", gotInvalid) } } diff --git a/tests/smoke.sh b/tests/smoke.sh index 22166c7..ccee58c 100755 --- a/tests/smoke.sh +++ b/tests/smoke.sh @@ -1402,10 +1402,10 @@ run_dynamic_reload_manager_parity_no_nested_exec_test() { assert_not_contains "--feed-search" assert_contains "apt-cache dumpavail" - assert_fzf_line_contains "FPF_IPC_MANAGER_LIST=apt,bun" + assert_fzf_line_contains "FPF_IPC_MANAGER_LIST=apt,flatpak,bun" assert_fzf_line_contains "FPF_IPC_MANAGER_LIST=apt,flatpak,bun" assert_contains "bun search rip" - assert_not_contains "flatpak search --columns=application,description rip" + assert_contains "flatpak search --columns=application,description rip" if grep -Eq '^(dnf|pacman|zypper|emerge|brew|winget|choco|scoop|snap|npm) ' "${LOG_FILE}"; then printf "Expected reload path to avoid unexpected manager searches\n" >&2