Folke Lemaitre
462633bae1
perf: new file-based cache that ensures correct rtp order ( #532 )
...
* perf: new file-based cache that ensures rtp is alweays correct and will cache all files, including those after startup
* refactor: new cache
* test: fix tests
* fix(cache): cache file names on Windows
* feat(cache): allow to disable the cache
* docs: updated cache settings
2023-02-13 12:01:56 +01:00
Folke Lemaitre
b73312aa32
fix: use `vim.api.nvim_exec_autocmds` instead of `vim.cmd[[do]]` to prevent weird `vim.notify` behavior
2023-01-13 09:01:24 +01:00
Folke Lemaitre
d992387912
perf: track some additional cputimes
2023-01-02 11:28:18 +01:00
Folke Lemaitre
2d06faa941
feat(loader): incrementally install missing plugins and rebuild spec, so imported specs from plugins work as expected
2023-01-02 10:08:45 +01:00
Folke Lemaitre
919b7f5de3
feat(spec): added `import` to import other plugin modules
2023-01-02 09:44:28 +01:00
Folke Lemaitre
b4edbd09f5
docs: updated bootstrap code to stable branch
2022-12-31 09:44:22 +01:00
WilliamHsieh
51fb95e4a8
fix: duplicate state check in bootstrap ( #255 )
2022-12-30 18:55:36 +01:00
Folke Lemaitre
de82a99197
fix(bootstrap): fixed bootstrap script
2022-12-30 14:46:25 +01:00
Folke Lemaitre
291dd6a74b
docs: updated bootstrap code to exclude single-branch
2022-12-30 01:01:22 +01:00
Folke Lemaitre
929198bc4f
feat(bootstrap): bootstrap with last lazy stable release
2022-12-29 23:32:02 +01:00
Folke Lemaitre
3a1a10cd75
fix(loader): implemented correct adding to rtp. fix #230 , fix #226
2022-12-29 16:03:23 +01:00
Folke Lemaitre
e3ffcff7cc
fix(cache): ad jit.verion to cache version string. Fixes #225
2022-12-29 08:01:05 +01:00
Folke Lemaitre
34977c2b80
perf: move autoloader to cache and always use lazy's modname path resolver which is much faster
2022-12-28 17:58:24 +01:00
Folke Lemaitre
a2fdf369f2
feat(profile): added accurate startuptime to ui/stats/docs
2022-12-27 13:34:12 +01:00
Folke Lemaitre
6404d42155
fix: move re-sourcing check to the top
2022-12-20 13:47:53 +01:00
Folke Lemaitre
5ecc988610
docs: use https to bootstrap lazy
2022-12-20 12:34:05 +01:00
Folke Lemaitre
b89e6bffd2
perf: lazy-load the commands available on the `lazy` module
2022-12-18 17:36:37 +01:00
Folke Lemaitre
c0d3617e0b
feat: check if ffi is available and error if not
2022-12-18 14:29:02 +01:00
Folke Lemaitre
f25f942eb7
feat: expose all commands on main lazy module
2022-12-18 11:42:27 +01:00
Folke Lemaitre
17d1653b4a
fix: bootstrap code now uses git url instead of https for beta testers + fixed rtp path
2022-12-15 23:24:16 +01:00
Folke Lemaitre
1ee4e8b719
fix: updated the bootstrap code
2022-12-14 21:38:40 +01:00
Folke Lemaitre
72f64ce1f7
feat: added checks for Neovim version
2022-12-14 21:25:16 +01:00
Folke Lemaitre
ec2f432a84
feat!: lazy now handles the full startup sequence (`vim.go.loadplugins=false`)
2022-12-14 21:03:53 +01:00
Folke Lemaitre
8de617c01b
feat: getter for plugins
2022-12-14 16:07:32 +01:00
Folke Lemaitre
7b945eec58
feat: dont run setup again when a user re-sources their config & show a warning
2022-12-03 23:46:50 +01:00
Folke Lemaitre
b2727d98a3
perf: disable cache by default on VimEnter or on BufReadPre
2022-12-03 18:59:53 +01:00
Folke Lemaitre
6fe425c91a
perf: caching strategy is now configurable
2022-12-02 12:43:34 +01:00
Folke Lemaitre
59fb050767
fix: respect --noplugin
2022-12-02 10:02:41 +01:00
Folke Lemaitre
e22e8e4506
style: added more comments to init
2022-12-02 09:25:30 +01:00
Folke Lemaitre
714bc0a136
feat(ui): improvements to profiling and rendering of loaded reasons
2022-12-02 09:25:30 +01:00
Folke Lemaitre
af8b8e128e
feat: lazy setup with either a plugins module, or a plugins spec
2022-12-01 13:34:01 +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
e1c08d64b3
perf: merge module/cache and use ffi to pack cache data
2022-11-30 14:19:50 +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
9be3d3d840
feat: config option install_missing=true
2022-11-30 00:19:08 +01:00
Folke Lemaitre
ceeeda36e8
feat: added bootstrap code
2022-11-29 12:49:15 +01:00
Folke Lemaitre
28af1e1ac3
refactor: moved all plugin state to Plugin._
2022-11-28 11:19:50 +01:00
Folke Lemaitre
6dc45ada55
refactor: moved manage functionality to its own module
2022-11-27 11:02:28 +01:00
Folke Lemaitre
05a0da532b
refactor: move handlers to its own file
2022-11-26 21:29:40 +01:00
Folke Lemaitre
30bdc9b5a1
fix: check for lazy before setting loading time
2022-11-26 13:58:18 +01:00
Folke Lemaitre
3e8fbaffba
refactor: merge plugin & state in one file
2022-11-25 22:48:17 +01:00
Folke Lemaitre
fe33e4e3dd
feat: lazy caching now works with functions that have upvalues
2022-11-25 15:35:40 +01:00
Folke Lemaitre
2507fd5790
perf: tons of performance improvements. Lazy should now load in about 1.5ms for 97 plugins
2022-11-24 22:05:18 +01:00
Folke Lemaitre
68a8d57b5b
chore: cleanup
2022-11-23 16:10:16 +01:00
Folke Lemaitre
e59dc377d5
feat: util.info
2022-11-22 22:35:06 +01:00
Folke Lemaitre
72889623af
fix: support adding top-level lua directories
2022-11-22 22:27:29 +01:00
Folke Lemaitre
fca984b18c
refactor: move core modules needed for loading under core
2022-11-22 21:28:27 +01:00
Folke Lemaitre
54d5ff18f5
perf: split caching in state, cache and module
2022-11-22 21:12:33 +01:00
Folke Lemaitre
a543134b8c
perf: way better compilation and caching
2022-11-21 21:50:16 +01:00