Commit Graph

33 Commits

Author SHA1 Message Date
Folke Lemaitre d63e80bae9
test: remove debug output 2024-06-26 07:18:07 +02:00
Folke Lemaitre 75ffe56f70 feat: rewrite of spec resolving 2024-06-24 17:15:10 +02:00
Folke Lemaitre 8d35e60eeb test: fix spec tests 2024-06-24 17:15:10 +02:00
Folke Lemaitre 8eba74c3fc feat: packspec 2024-06-24 17:15:10 +02:00
Folke Lemaitre c059eece0c
refactor: Handler.load => Handler.resolve 2023-10-17 17:43:37 +02:00
Folke Lemaitre 2f169e74d4
refactor(handlers): lazy resolving of plugin handlers (#1126)
* refactor(handlers): lazy resolving of plugin handlers

* test: fixed tests
2023-10-16 22:34:44 +02:00
Folke Lemaitre 1ea2eaefa6
test: fixed tests for plugin spec 2023-10-16 15:11:01 +02:00
Folke Lemaitre 3dc413d6fd
fix(plugin): improved dir/dev merging. Fixes #993 2023-10-15 08:36:15 +02:00
Folke Lemaitre f3c7169dd6
feat(plugin): dont include plugin spec fragments for disabled or optional plugins (#1058)
* feat(plugin): dont include plugin spec fragments for disabled or optional plugins

* test: fixed tests

* fix(plugin): calculate handlers after disabling plugins

* fix(plugin): clear Plugin._.super when rebuilding

* fix(ui): dont process handlers for disabled plugins

* test: added tests for disabling fragments

* fix(plugin): ignore any installed deps of a disabled conditional plugin. Fixes #1053
2023-09-29 16:11:56 +02:00
abeldekat e7334d8db5
feat(plugins): Given an optional plugin, conditionally discard deps (#947)
* deps_of_all_optional: First, refactor the code responsible for disabling unneeded deps to be more generic

* deps_of_all_optional: Second, also disable unneeded deps from plugins marked as all optional

* deps_of_all_optional: add tests proving unneeded optional deps are now also discarded

* deps_of_all_optional: forgot return type

---------

Co-authored-by: abeldekat <abel@nomail.com>
2023-07-22 10:20:52 +02:00
Folke Lemaitre 045f23eb35
test: fixed tests 2023-07-06 15:38:21 +02:00
Folke Lemaitre 3f3d9df324
test: fixed tests for `Plugin.opts` 2023-01-12 13:13:45 +01:00
Folke Lemaitre 2128ca90fb
feat(spec): event, keys, ft and cmd can now also be a function that returns the values to be used 2023-01-12 13:08:43 +01:00
Folke Lemaitre 4304035ef4
feat(spec): allow git@ and http urls in `Plugin[1]` without `url=`. Fixes #357 2023-01-09 13:25:50 +01:00
Folke Lemaitre e77be3cf3b
fix(spec): `Plugin.opts` is now always a table. Fixes #351 2023-01-08 18:45:40 +01:00
Folke Lemaitre 7260a2b28b
feat(spec)!: setting a table to `Plugin.config` is now deprecated. Please use `Plugin.opts` instead. (backward compatible for now) 2023-01-08 15:01:58 +01:00
Folke Lemaitre 81cb352fe6
feat(spec): spec merging now properly works with `Plugin.enabled` 2023-01-04 10:36:51 +01:00
Folke Lemaitre 05aec48968
feat(spec): allow overriding `Plugin.enabled` 2023-01-03 10:34:53 +01:00
Folke Lemaitre 69121c7721
tests: fixed tests 2023-01-02 14:35:36 +01:00
Folke Lemaitre 4bf771a6b2
feat(spec): allow using plugin names in dependencies 2022-12-22 17:25:12 +01:00
Folke Lemaitre 50ba619d9e
test: fix tests 2022-12-20 13:40:09 +01:00
Folke Lemaitre 65675808d1
chore: todo 2022-12-19 13:37:14 +01:00
Folke Lemaitre 1375409642
test: fixed tests 2022-12-13 10:29:48 +01:00
Folke Lemaitre 4cfe0b5315
refactor: `Plugin.uri` => `Plugin.url` 2022-12-13 10:10:17 +01:00
Folke Lemaitre 756b4849d9
refactor: Plugin.dep => Plugin._.dep 2022-12-02 17:09:40 +01:00
Folke Lemaitre 45e18c977d
test: fix tests with `module=` 2022-12-02 09:25:30 +01:00
Folke Lemaitre 5134e797f3
feat!: all plugins are now opt. Plugin.opt => Plugin.lazy 2022-12-01 11:23:39 +01:00
Folke Lemaitre a87b6e1005
style: cleanup 2022-11-30 23:15:26 +01:00
Folke Lemaitre 4438faf9a9
perf: removed partial spec caching. not worth the tiny performance boost 2022-11-30 00:19:08 +01:00
Folke Lemaitre ca78dd77ac
fix: make sure Plugin.opt is always a boolean 2022-11-29 20:36:06 +01:00
Folke Lemaitre b796abcc33
feat: lazy handler implies opt=true 2022-11-29 19:58:31 +01:00
Folke Lemaitre 908b9adf9c
feat: dependencies are opt=true by default if they only appear as a dep 2022-11-29 19:51:53 +01:00
Folke Lemaitre 0233460d54
fix: support local files as plugin spec 2022-11-29 14:35:48 +01:00