Description
The RecentProjectsOpen plugin fails when queried/executed and Flow Launcher surfaces a FlowPluginException.
The exception appears to be triggered because the plugin writes a Python warning to stdout/stderr:
UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
Flow Launcher appears to interpret this warning output as invalid JSON-RPC data and throws an exception instead of handling the warning gracefully.
Reproduction Steps
- Install Flow Launcher
2.1.3.
- Install the
RecentProjectsOpen plugin 1.3.0.
- Ensure Python 3.9 is installed and configured.
- Launch Flow Launcher.
- Trigger the
RecentProjectsOpen plugin (search for a recent project or execute a plugin query).
- Observe the plugin failure and exception dialog/log entry.
Expected Behavior
The plugin should return results normally or prompt for settings, even if Python emits warnings.
Alternatively, warnings should be redirected to stderr or ignored so they do not interfere with JSON-RPC communication between the plugin and Flow Launcher.
Actual Behavior
The plugin crashes and Flow Launcher reports:
Flow.Launcher.Core.ExternalPlugins.FlowPluginException
Environment
- Flow Launcher: 2.1.3
- RecentProjectsOpen: 1.3.0
- Windows Build: 26200.8655
- Python: 3.9 (
C:\Python39\python.exe)
- Architecture: x64
Logs
Flow Launcher version: 2.1.3
OS Version: 26200.8655
IntPtr Length: 8
x64: True
Python Path: C:\Python39\python.exe
Node Path:
Date: 06/13/2026 21:15:12
Exception:
RecentProjectsOpen Exception:
Websites: https://github.com/Attack825/RecentProjectsOpen
Author: Attack825
Version: 1.3.0
Flow.Launcher.Core.ExternalPlugins.FlowPluginException: C:\Users\Anyone\AppData\Roaming\FlowLauncher\Plugins\RecentProjectsOpen-1.3.0\lib\fuzzywuzzy\fuzz.py:11: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
warnings.warn('Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning')
---> System.IO.InvalidDataException: C:\Users\Anyone\AppData\Roaming\FlowLauncher\Plugins\RecentProjectsOpen-1.3.0\lib\fuzzywuzzy\fuzz.py:11: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning
warnings.warn('Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning')
at Flow.Launcher.Core.Plugin.JsonRPCPlugin.ExecuteAsync(ProcessStartInfo startInfo, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\JsonRPCPlugin.cs:line 220
at Flow.Launcher.Core.Plugin.JsonRPCPlugin.ExecuteAsync(ProcessStartInfo startInfo, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\JsonRPCPlugin.cs:line 225
at Flow.Launcher.Core.Plugin.JsonRPCPlugin.QueryAsync(Query query, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\JsonRPCPlugin.cs:line 238
at Flow.Launcher.Core.Plugin.PluginManager.<>c__DisplayClass32_0.<<QueryForPluginAsync>b__1>d.MoveNext() in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\PluginManager.cs:line 423
--- End of stack trace from previous location ---
at Flow.Launcher.Infrastructure.Stopwatch.DebugAsync(String className, String message, Func`1 action, String methodName) in C:\projects\flow-launcher\Flow.Launcher.Infrastructure\Stopwatch.cs:line 31
at Flow.Launcher.Core.Plugin.PluginManager.QueryForPluginAsync(PluginPair pair, Query query, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\PluginManager.cs:line 422
--- End of inner exception stack trace ---
at Flow.Launcher.Core.Plugin.PluginManager.<>c__DisplayClass32_1.<QueryForPluginAsync>b__2(ActionContext _) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\PluginManager.cs:line 452
at Flow.Launcher.Plugin.Result.ExecuteAsync(ActionContext context) in /_/Flow.Launcher.Plugin/Result.cs:line 281
at Flow.Launcher.ViewModel.MainViewModel.OpenResultAsync(String index) in C:\projects\flow-launcher\Flow.Launcher\ViewModel\MainViewModel.cs:line 520
at CommunityToolkit.Mvvm.Input.AsyncRelayCommand.AwaitAndThrowIfFailed(Task executionTask)
at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
Flow.Launcher.2026-06-13.log
Description
The
RecentProjectsOpenplugin fails when queried/executed and Flow Launcher surfaces aFlowPluginException.The exception appears to be triggered because the plugin writes a Python warning to stdout/stderr:
Flow Launcher appears to interpret this warning output as invalid JSON-RPC data and throws an exception instead of handling the warning gracefully.
Reproduction Steps
2.1.3.RecentProjectsOpenplugin1.3.0.RecentProjectsOpenplugin (search for a recent project or execute a plugin query).Expected Behavior
The plugin should return results normally or prompt for settings, even if Python emits warnings.
Alternatively, warnings should be redirected to stderr or ignored so they do not interfere with JSON-RPC communication between the plugin and Flow Launcher.
Actual Behavior
The plugin crashes and Flow Launcher reports:
Environment
C:\Python39\python.exe)Logs
Flow.Launcher.2026-06-13.log