Commit graph

89 commits

Author SHA1 Message Date
Jack251970
2adbc334a2 Improve semaphore lock handling and code robustness
Added `lockAcquired` flags in `PluginsManifest.cs` and `Main.cs`
to ensure semaphore locks are only released if successfully
acquired, preventing potential runtime errors. Updated `finally`
blocks to conditionally release locks based on these flags.

Removed redundant cancellation check in `EverythingAPI.cs` to
simplify code, assuming cancellation is handled elsewhere. These
changes enhance reliability and maintainability of the codebase.
2025-11-07 15:30:07 +08:00
Jack251970
88fd1e56d0 Handle OperationCanceledException gracefully
Added a `catch` block for `OperationCanceledException` in
`PluginsManifest.cs` to ignore canceled operations. Updated
`EverythingAPI.cs` to use cancellation tokens with `_semaphore.WaitAsync`
and handle cancellations by exiting the method cleanly with `yield break`.
2025-11-06 20:47:54 +08:00
Jack251970
0a7ed3b52f Add AbstractPluginEnvironment.API back 2025-09-23 17:52:49 +08:00
Jack251970
0e366a6269 Use PublicApi.Instance instead of private one 2025-09-23 17:40:54 +08:00
Jack251970
7350c1d4d5 Use Flow.Launcher.Localization to improve code quality 2025-09-23 17:14:30 +08:00
Jack251970
7a5e55e5f0 Use Debug instead of Info 2025-09-18 21:06:18 +08:00
dcog989
f3998a190c explicit exception logging 2025-09-13 17:04:32 +01:00
dcog989
e63c4f3b6e Catch scary exception, print friendly log
Rather than showing the user `EXCEPTION OCCURS: System.Threading.Tasks.TaskCanceledException...`, print not scary log msg
2025-09-13 16:30:13 +01:00
Jeremy Wu
5d297c1f19
update to log info for plugin version requirement failure 2025-09-04 22:36:43 +10:00
Jeremy
80b0b6031e handle version parse fail and reorder last manifest fetch date 2025-09-04 21:49:16 +10:00
Jeremy
ffb7c25635 switch PluginsManifest download URL to be from main branch 2025-09-03 21:02:07 +10:00
Jeremy Wu
8392a025f3
fix typo 2025-09-02 22:46:37 +10:00
Jeremy
563ae0eeaf add manifest handling of plugin's MinimumAppVersion property 2025-09-02 22:11:08 +10:00
Jack251970
4cbc9f18c7 Add error handler for DroplexPackage.Drop 2025-08-14 14:24:54 +08:00
Jack251970
0682e9bed1 Improve code quality for public api 2025-07-20 11:38:44 +08:00
Jack251970
dd61ab43cb Use null as flag to report community source error 2025-04-18 07:17:33 +08:00
Jack251970
20d2661380 Code quality 2025-04-13 18:04:50 +08:00
Jack251970
50130e4b00 Use class name instead 2025-04-13 17:59:39 +08:00
Jack251970
dde933a96b Use api functions instead 2025-04-13 17:26:21 +08:00
Jack251970
230df80b87 Improve CommunityPluginSource http exception handler 2025-04-13 16:44:14 +08:00
Jack251970
0d9ec48e58 Code quality 2025-04-13 16:36:34 +08:00
Jack251970
b9c0eb7b78 Code quality 2025-04-04 15:56:18 +08:00
Jack251970
e2d9148702 Move user plugin to plugin project 2025-04-04 15:52:57 +08:00
Jack251970
a9dfd1b377 Code quality 2025-04-01 09:57:04 +08:00
Jack251970
6a2b3495a0 Ask reselect environment path until it is valid 2025-04-01 09:26:39 +08:00
Jack251970
eeb9ea78fd Code quality 2025-03-31 21:27:59 +08:00
Jack Ye
7975ab5882
Merge branch 'dev' into plugin_settings_cache_path 2025-03-01 08:51:06 +08:00
Jack251970
3106b025e3 Support plugin directory update & validate 2025-02-24 13:46:58 +08:00
Jack251970
3efe550b7f Use context plugin settings path 2025-02-24 13:28:58 +08:00
Jack251970
b50db58673 Add assembly name & plugin settings path & plugin cache path in meta data for non-csharp plugins 2025-02-24 12:37:08 +08:00
Jack Ye
25684a92ae
Merge branch 'dev' into dev4 2025-02-17 14:54:06 +08:00
Jack251970
319f016ced Remove unnessary list refresh 2025-02-10 12:01:21 +08:00
Jack251970
d8f3280632 Fix unneccessary plugin result update 2025-02-10 11:54:09 +08:00
Jack251970
864402704d Fix an issue that user plugins cannot be updated when reupdating the plugins manifest 2025-02-09 21:54:02 +08:00
Jack251970
3cb9d1dce4 Remove IApp & AppExtensions and use dependency injection instead 2025-01-12 20:04:44 +08:00
Jack251970
88e84378da Use api in app extensions to call api functions 2025-01-09 21:44:24 +08:00
Jack251970
897fd7aaba Replace Flow.Launcher.Core.MessageBoxType & MessageBoxImage with System.Windows.MessageBoxButton & MessageBoxImage
Remove useless warning file
2024-11-26 21:31:13 +08:00
Jack251970
b30cc4fc38 Replace System.Windows.MessageBox with MessageBoxEx 2024-11-25 10:38:43 +08:00
Yusyuriv
ca970bbe75
Localize startup messages about missing Python/NodeJS 2024-06-09 18:45:23 +06:00
Jeremy Wu
1bbe0302fa
Merge pull request #2520 from flooxo/local_install
Feature: Add support for local plugin installation
2024-05-20 08:44:47 +10:00
Jeremy
2606faae17 minor fixes & refactor 2024-05-16 21:22:08 +10:00
Hongtao Zhang
d5622367cc ignore null datetimes for pluginstoreitem 2024-01-13 23:49:08 -06:00
Hongtao Zhang
f5b1b4f830 rename and add js/ts v2 2023-11-03 21:16:51 -05:00
Hongtao Zhang
3c2ea382ea Merge branch 'dev' of https://github.com/Flow-Launcher/Flow.Launcher into jsonrpc_v2 2023-10-31 08:39:51 -05:00
Jeremy
9dacfb145a Merge remote-tracking branch 'origin/dev' into jsonrpc_v2 2023-08-07 13:16:26 +10:00
Jeremy Wu
0b95277aa4 update install folder name 2023-08-03 21:41:35 +10:00
Jeremy Wu
a74fdccaa2 Update Python to v3.11.4 2023-08-03 21:16:58 +10:00
Ioannis G
df149fae8a
increase plugin manifest fetch timeout to 2m 2023-07-08 13:41:52 +03:00
Ioannis G
2d6b476685
use Ctrl+R to fetch primary manifest source
from a `pm install` or `pm update` query

should help with #2048
2023-07-05 17:01:55 +03:00
Ioannis G
f03ac76494
throttle PluginsManifest.UpdateManifestAsync
avoid repeatedly fetching manifest data while the user is typing a `pm` query
2023-07-05 16:54:50 +03:00