Flow-Launcher / Flow-Launcher/Flow.Launcher

Add a way for JSON-RPC V2 plugins to get settings on initialization/restart

Open
#3,090 14 comments 0 reactions 0 assignees View on GitHub
enhancement keep-fresh
Dominant language
C#
Stars
15.6k
Forks
644
Avg merge
16h 51m
Merged PRs (30d)
3

Description

**Is your feature request related to a problem? Please describe.**

I'm writing a python library that uses the V2 json-rpc api, and it really annoys me that although there is an initialization request that would be perfect for plugins to create a cache, plugins have to wait until the first query request is received to start building their cache, resulting in long first queries. This is because currently, the plugin's settings only seem to be sent to the plugin on query requests.

**Describe the solution you'd like**

I'd be ok with either of the following solutions:

1. Add a `GetSettings` method to the public Flow API, so that plugins can request the settings on initialization.
2. Include the current settings to the plugin in the `initialize` method's parameters (and based on how ##3081 gets resolved, making sure its in the `restart` method's parameters as well)

**Describe alternatives you've considered**

Having the plugin read the plugin's settings file on restart, but although this would probably work as a "solution", this issue seems like it should have a better fix.

**Additional context**

Add any other context or screenshots about the feature request here.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the public Flow API and the JSON-RPC V2 initialize, restart, and query entry points. Compare the proposed GetSettings method with including current settings in initialize and restart parameters, and verify that plugins can receive settings before the first query so cache construction can begin earlier.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
api
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.