InfinityPacer
|
ccc11c4892
|
fix(mediaserver): update get_type return type to ModuleType for consistency
|
2024-10-15 15:35:45 +08:00 |
|
InfinityPacer
|
12c669aa17
|
fix(security): optimize URL validation
|
2024-10-14 19:38:25 +08:00 |
|
InfinityPacer
|
89819f8730
|
feat(cache): add HTTP cache support for image proxy
|
2024-10-14 17:00:27 +08:00 |
|
InfinityPacer
|
675655bfc7
|
fix(security): optimize image caching
|
2024-10-14 02:22:07 +08:00 |
|
InfinityPacer
|
422474b4b7
|
feat(security): enhance image URL and domain validation
|
2024-10-14 01:33:53 +08:00 |
|
InfinityPacer
|
efb624259a
|
fix(Utils): remove unnecessary methods
|
2024-10-13 22:40:58 +08:00 |
|
InfinityPacer
|
f9e06e4381
|
feat(security): add safe path check for log file access and validation
|
2024-10-13 21:59:22 +08:00 |
|
InfinityPacer
|
f67ee27618
|
Merge branch 'dev' of https://github.com/jxxghp/MoviePilot into feature/security
|
2024-10-13 00:13:35 +08:00 |
|
InfinityPacer
|
b263489635
|
feat(downloader): add compatibility support for qBittorrent 5.0
|
2024-10-12 14:27:35 +08:00 |
|
InfinityPacer
|
ea32cd83af
|
chore(deps): upgrade qbittorrent-api to support qbittorrent 5.0
|
2024-10-12 00:12:41 +08:00 |
|
InfinityPacer
|
828e9ab886
|
feat(webhook): add support for server_name field in WebhookEventInfo
|
2024-10-10 22:07:03 +08:00 |
|
InfinityPacer
|
7532929669
|
fix(security): update SameSite setting to Lax for better compatibility
|
2024-10-10 20:08:30 +08:00 |
|
InfinityPacer
|
51391db262
|
fix(security): adjust resource token duration and refresh strategy
|
2024-10-10 15:43:29 +08:00 |
|
InfinityPacer
|
0c73bbbfe0
|
fix #2727
|
2024-10-10 02:09:23 +08:00 |
|
InfinityPacer
|
55403cd8a8
|
fix(security): handle errors and prevent unnecessary token refresh
|
2024-10-10 01:40:13 +08:00 |
|
InfinityPacer
|
871f8d3529
|
feat(security): add resource token authentication using HttpOnly Cookie
|
2024-10-10 00:45:26 +08:00 |
|
InfinityPacer
|
0d3d6e9bf9
|
fix(download): ensure params parsed from request body
|
2024-10-09 02:29:52 +08:00 |
|
InfinityPacer
|
e2ee3ec4cd
|
feat(event): add downloader field to DownloadAdded event
|
2024-10-09 01:49:25 +08:00 |
|
InfinityPacer
|
9e161fb36c
|
feat(module): add support for name filtering in service retrieval
|
2024-10-09 01:48:41 +08:00 |
|
InfinityPacer
|
812d6029d0
|
chore: update plugin paths to use plugins.v2
|
2024-10-08 23:47:59 +08:00 |
|
InfinityPacer
|
5b6b1231fe
|
fix(security): update comments
|
2024-10-08 19:07:48 +08:00 |
|
InfinityPacer
|
1a9ba58023
|
feat(security): add token validation and support multi-server
|
2024-10-08 18:54:28 +08:00 |
|
InfinityPacer
|
4dd146d1c8
|
feat(security): replace validation with Depends for system endpoints
|
2024-10-08 18:12:40 +08:00 |
|
InfinityPacer
|
4af57d9857
|
feat(security): restore token validation
|
2024-10-08 17:28:30 +08:00 |
|
InfinityPacer
|
4f01b82b81
|
feat(security): unify token validation for message endpoints
|
2024-10-08 14:32:29 +08:00 |
|
InfinityPacer
|
284082741e
|
feat(security): obfuscate error messages in anonymous API
|
2024-10-08 01:51:45 +08:00 |
|
InfinityPacer
|
d7da2e133a
|
feat(security): add cache to wallpaper endpoints to mitigate attacks
|
2024-10-07 23:37:20 +08:00 |
|
InfinityPacer
|
5c05845500
|
refactor(security): replace Depends with Security and define schemes
|
2024-10-07 16:35:39 +08:00 |
|
InfinityPacer
|
75530a22c3
|
fix(plugin): use positional arguments in get_plugins
|
2024-10-06 23:00:21 +08:00 |
|
InfinityPacer
|
0afdd9056a
|
fix(module): use getters for _instances and _configs in subclasses
|
2024-10-06 14:38:17 +08:00 |
|
InfinityPacer
|
5de882d788
|
fix(plex): resolve error in get_webhook_message
|
2024-10-06 14:26:44 +08:00 |
|
InfinityPacer
|
4f27897e08
|
refactor(config): replace hard-coded strings with SystemConfigKey
|
2024-10-06 01:58:19 +08:00 |
|
InfinityPacer
|
ea76a27d26
|
feat(config): enforce API_TOKEN to meet security requirements
|
2024-10-06 01:33:16 +08:00 |
|
InfinityPacer
|
9d71c9b61e
|
feat(config): centralize set_key usage through update_setting method
|
2024-10-05 03:14:16 +08:00 |
|
InfinityPacer
|
cb761275ab
|
feat(config): preprocess env variables using Pydantic validators
|
2024-10-02 19:17:31 +08:00 |
|
InfinityPacer
|
210c5e3151
|
feat(plugin): broadcast PluginReload event when plugin reload
|
2024-10-02 16:22:28 +08:00 |
|
InfinityPacer
|
8317b6b7a2
|
fix(mediaserver): resolve media_statistic
|
2024-10-02 13:04:39 +08:00 |
|
InfinityPacer
|
fb61eda831
|
fix(mediaserver): improve data isolation handling
|
2024-10-02 10:39:04 +08:00 |
|
InfinityPacer
|
9dc603bd73
|
feat(downloader): support first_last_piece
|
2024-10-01 18:36:31 +08:00 |
|
InfinityPacer
|
4b6d269230
|
feat(module): add type-checking methods
|
2024-10-01 15:28:26 +08:00 |
|
InfinityPacer
|
a25ff4302d
|
fix(db): update Pydantic model to allow any type for 'note' field
|
2024-10-01 15:20:30 +08:00 |
|
InfinityPacer
|
0ca42236d6
|
feat(event): add ModuleReload event type
|
2024-09-30 19:20:18 +08:00 |
|
InfinityPacer
|
835e0b4d5d
|
fix(event): prevent error calls
|
2024-09-30 18:10:42 +08:00 |
|
InfinityPacer
|
d3186cd742
|
refactor(db): convert suitable string fields to JSON type
|
2024-09-30 16:16:29 +08:00 |
|
InfinityPacer
|
d69041f049
|
Merge remote-tracking branch 'upstream/dev' into feature/db
|
2024-09-30 14:31:20 +08:00 |
|
InfinityPacer
|
e731767dfa
|
feat(plugin): add PluginTriggered event type
|
2024-09-30 10:33:20 +08:00 |
|
InfinityPacer
|
daadfcffd8
|
feat(db): update model to support JSON
|
2024-09-30 03:07:33 +08:00 |
|
InfinityPacer
|
838e17bf6e
|
fix(sync): have module return results directly instead of using yield
|
2024-09-30 02:59:09 +08:00 |
|
InfinityPacer
|
61ecc175f3
|
chore: Update .gitignore
|
2024-09-30 02:13:45 +08:00 |
|
InfinityPacer
|
709f8ef3ed
|
chore: Update .gitignore to exclude all log files and archives
|
2024-09-30 00:38:01 +08:00 |
|
InfinityPacer
|
fdab59a84e
|
fix #2784
|
2024-09-30 00:31:03 +08:00 |
|
InfinityPacer
|
0593275a62
|
feat(module): add ServiceBaseHelper for service and instance
|
2024-09-29 23:46:41 +08:00 |
|
InfinityPacer
|
5993bfcefb
|
fix(#2755): remove yield None, handle generator termination on error
|
2024-09-28 00:57:59 +08:00 |
|
InfinityPacer
|
1add203c0e
|
fix(#2755): refactor pagination and fix media sync DB issue
|
2024-09-28 00:57:13 +08:00 |
|
InfinityPacer
|
48122d8d9a
|
fix(#2755): handle Plex None values and exceptions in item builder
|
2024-09-27 17:23:27 +08:00 |
|
InfinityPacer
|
efb3bd93d0
|
fix(wechat): reorder proxy setup
|
2024-09-27 04:27:16 +08:00 |
|
InfinityPacer
|
640a67fc3a
|
fix(module): resolve infinite recursion in get_instance method
|
2024-09-27 04:12:22 +08:00 |
|
InfinityPacer
|
2ce3ddb75a
|
refactor(module): simplify service instantiation with generics
|
2024-09-27 04:04:56 +08:00 |
|
InfinityPacer
|
5efcd6e6be
|
refactor (module): improve the implementation of base classes
|
2024-09-26 19:44:35 +08:00 |
|
InfinityPacer
|
e1aa4b7519
|
fix #2751
|
2024-09-26 11:11:17 +08:00 |
|
InfinityPacer
|
3512e7df4a
|
fix(storage): handle null values in file sorting to prevent crashes
|
2024-09-26 01:01:27 +08:00 |
|
InfinityPacer
|
90603fa2a9
|
fix(install): optimized logging
|
2024-09-25 17:52:22 +08:00 |
|
InfinityPacer
|
222991d07f
|
feat(api): add support for dynamic plugin APIs
|
2024-09-25 02:20:23 +08:00 |
|
InfinityPacer
|
cf4c6b2d40
|
refactor(app): restructure project to avoid circular imports
|
2024-09-25 02:20:12 +08:00 |
|
InfinityPacer
|
6d55db466c
|
fix(queue): handle queue.Empty instead of TimeoutError on timeout
|
2024-09-25 00:46:55 +08:00 |
|
InfinityPacer
|
5fc5838abd
|
fix(event): replace condition-based wait with exponential backoff
|
2024-09-22 02:38:28 +08:00 |
|
InfinityPacer
|
748836df23
|
fix(event): restore missing method removed in be63e9ed
|
2024-09-22 01:36:26 +08:00 |
|
InfinityPacer
|
dea8fc5486
|
feat(event): optimized event execution flow
|
2024-09-20 21:45:52 +08:00 |
|
InfinityPacer
|
857383c8d0
|
feat(event): improve event consumer logic for handling of events
|
2024-09-20 20:37:29 +08:00 |
|
InfinityPacer
|
688693b31f
|
feat(event): use dict for subscribers and replace handler if exists
|
2024-09-20 18:42:29 +08:00 |
|
InfinityPacer
|
ef0768ec44
|
feat(event): simplify register decorator
|
2024-09-20 16:32:36 +08:00 |
|
InfinityPacer
|
be63e9ed15
|
feat(event): optimize handler
|
2024-09-20 16:26:45 +08:00 |
|
InfinityPacer
|
3bee5a8a86
|
feat(event): separate implementation of broadcast and chain
|
2024-09-20 13:52:09 +08:00 |
|
InfinityPacer
|
85cb9f7cd7
|
feat(event): add visualization and enhance handler
|
2024-09-20 01:34:01 +08:00 |
|
InfinityPacer
|
e786120e98
|
feat(event): update constant and support Condition for thread
|
2024-09-20 00:25:38 +08:00 |
|
InfinityPacer
|
49b6052ab0
|
refactor(event): optimize broadcast and chain event
|
2024-09-19 23:55:24 +08:00 |
|
InfinityPacer
|
28f7a409f9
|
fix(plugin): improve logging
|
2024-09-17 18:31:27 +08:00 |
|
InfinityPacer
|
3141d02e44
|
Merge branch 'dev' of https://github.com/jxxghp/MoviePilot into feature/plugin
|
2024-09-17 17:32:51 +08:00 |
|
InfinityPacer
|
5136698617
|
feat(plugin): improve online plugin retrieval
|
2024-09-17 17:26:06 +08:00 |
|
InfinityPacer
|
8cc72f402b
|
fix(config): make VERSION_FLAG a read-only property
|
2024-09-17 16:56:08 +08:00 |
|
InfinityPacer
|
4d2e77fc51
|
feat(plugin): improve plugin version upgrade and compatibility
|
2024-09-17 16:05:16 +08:00 |
|
InfinityPacer
|
947a19eb95
|
fix(auth): set empty avatar to avoid missing default avatar
|
2024-09-16 15:42:37 +08:00 |
|
InfinityPacer
|
36142b97bf
|
fix(auth): handle scenario where the user is null
|
2024-09-16 15:41:13 +08:00 |
|
InfinityPacer
|
593bcbf455
|
fix(auth): set AUXILIARY_AUTH_ENABLE default to false
|
2024-09-14 17:56:50 +08:00 |
|
InfinityPacer
|
220fef5c9b
|
feat(plugin): optimize logging with detailed debug info
|
2024-09-14 17:55:18 +08:00 |
|
InfinityPacer
|
343f51ce79
|
feat(plugin): enhance fallback strategies
|
2024-09-14 17:23:44 +08:00 |
|
InfinityPacer
|
e0e4b31933
|
feat(plugin): implement fallback mechanism for install plugin
|
2024-09-14 11:26:43 +08:00 |
|
InfinityPacer
|
2f2ecc8c43
|
fix(push): correct client type
|
2024-09-13 18:54:48 +08:00 |
|
InfinityPacer
|
777c7c78d0
|
fix(plugin): use verify_apikey for backward compatibility
|
2024-09-13 09:49:22 +08:00 |
|
InfinityPacer
|
0ef8efd5a5
|
fix(sync): skip when no libraries are retrieved
|
2024-09-13 01:18:16 +08:00 |
|
InfinityPacer
|
9129de1720
|
fix(sync): skip disabled mediaservers and empty libraries
|
2024-09-13 00:58:03 +08:00 |
|
InfinityPacer
|
1ebec13afb
|
feat(auth): add AUXILIARY_AUTH_ENABLE for user authentication
|
2024-09-12 21:12:10 +08:00 |
|
InfinityPacer
|
3446aec6a2
|
feat(plugin): add API_TOKEN validation for plugin API registration
|
2024-09-12 02:36:34 +08:00 |
|
InfinityPacer
|
23b9774c5d
|
feat(auth): add API_TOKEN validation and auto-generation
|
2024-09-12 00:17:26 +08:00 |
|
InfinityPacer
|
540f5eb77f
|
refactor: unify env path
|
2024-09-12 00:05:07 +08:00 |
|
InfinityPacer
|
8b336cf3eb
|
fix(log): add support for CONFIG_DIR through environment variables
|
2024-09-11 23:53:15 +08:00 |
|
InfinityPacer
|
150e2366da
|
refactor(log): add support for configurable log settings in .env
|
2024-09-10 21:43:09 +08:00 |
|
InfinityPacer
|
0f5290be18
|
chore: Delete 插件版本兼容与升级方案.md
|
2024-09-10 12:09:21 +08:00 |
|
InfinityPacer
|
aa6fa8d336
|
chore: Add 插件版本兼容与升级方案.md
|
2024-09-09 21:39:27 +08:00 |
|
InfinityPacer
|
c2824a1bc8
|
chore: Update development-setup.md
|
2024-09-09 19:02:13 +08:00 |
|