Closed lambdalisue closed 2 months ago
Significant updates to the denops
plugin management system include: adding plugin states, restructuring functions, and incorporating event handlers. Adjustments to denops#cache#update()
enhance plugin registration, removing reliance on plugins with main.ts
, and improving plugin loading reliability and efficiency.
File | Change Summary |
---|---|
autoload/denops/_internal/plugin.vim |
Introduced plugin states, restructured management functions, and added event handlers. |
autoload/denops/cache.vim |
Converted variables to constants, introduced new constants, and optimized plugin list usage in denops#cache#update() . |
autoload/denops/plugin.vim |
Refactored plugin loading logic, updated state management, revised loading/waiting functions, and deprecated old functions. |
sequenceDiagram
participant Vim as Vim
participant Denops as Denops Plugin System
participant Plugin as Plugin
Note over Vim, Denops: Plugin Loading Process
Vim->>Denops: load(plugin_name, script)
Denops->>Plugin: Set plugin state to LOADING
Plugin->>Denops: Script execution result
alt Successfully loaded
Denops->>Plugin: Set state to LOADED
Denops->>Vim: Notify success
else Failed to load
Denops->>Plugin: Set state to FAILED
Denops->>Vim: Notify failure
end
Objective (Issue #) | Addressed | Explanation |
---|---|---|
Use registered plugins instead of discover in denops#cache#update() (#360) |
β |
In the world of code at night,
Plugins dance, a treat to the site,
States are new and handlers bloom,
Denops hums, dispelling gloom.
Cache now swift, no longer slow,
With these changes, watch it grow! ππ
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 90.23%. Comparing base (
6e14ad1
) to head (2f30e6b
).:exclamation: Current head 2f30e6b differs from pull request most recent head c616af0
Please upload reports for the commit c616af0 to get more accurate results.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
:call denops#cache#update()
[denops] Update cache of the following files. Call `denops#cache#update(#{reload: v:true})` to forcibly update.
[denops] /home/shougo/work/denops.vim/denops/@denops-private/mod.ts
[denops] /home/shougo/work/skkeleton/denops/skkeleton/main.ts
[denops] /home/shougo/work/ddc.vim/denops/ddc/app.ts
[denops] /home/shougo/work/ddu.vim/denops/ddu/app.ts
[denops] It tooks more than 5000 ms. Use Ctrl-C to cancel.
[denops] Deno cache is updated.
It is too slow. Why?
And denops plugins are loaded but does not work when the branch is used.
Fixed.
It works now.
https://github.com/vim-denops/denops.vim/pull/367#issuecomment-2174613245
What do you mean "too"? I think it's common to take time for reloading all cache.
Thanks for review & fix. I rebased to tidy commit history so rerequest a review in case @Shougo
What do you mean "too"? I think it's common to take time for reloading all cache.
It is normal behavior?
I have fixed for rabbit review.
I have fixed for rabbit review.
I'm sorry but the rabbit review didn't make sense so we should ignore. I removed that commits and force pushed.
Close #360. Additionally
denops#plugin#check_type
also discover/find plugins as likedenops#cache#update
thus this PR fixed the behavior to use registered plugins instead.Summary by CodeRabbit
New Features
Refactor
Bug Fixes