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
81017b99e7
fix(cache): de-duplicate topmods. Fixes #349
2023-01-13 09:01:24 +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
07fd7adb34
fix(cache): use cached chunk when specs are loading for valid plugins
2023-01-11 23:11:38 +01:00
Folke Lemaitre
e1cd9cd0ad
fix(loader): prevent loading plugins when loading specs
2023-01-11 23:08:07 +01:00
Folke Lemaitre
9fa62ea8ea
fix(cache): dont keep invalid entries in the cache (cleanup)
2023-01-10 09:28:59 +01:00
Folke Lemaitre
d3a963d51c
refactor(util): improved notify functions
2023-01-10 09:28:59 +01:00
Folke Lemaitre
ad00eb1be2
test: fixed helper function to delete test directory
2023-01-07 22:52:49 +01:00
Folke Lemaitre
d34c85d580
fix(cache): check that modpaths still exist when finding mod root
2023-01-07 22:24:53 +01:00
Folke Lemaitre
b2dec14824
fix(cache): check full paths of cached modpaths. Fixes #324
2023-01-05 13:42:23 +01:00
Folke Lemaitre
847ef091fa
style: disabled stats debug
2023-01-05 11:30:47 +01:00
Folke Lemaitre
b2673f1057
style: debug formatting
2023-01-04 00:27:31 +01:00
Folke Lemaitre
953c2791d8
fix(util): made `Util.lsmod` more robust. See #298
2023-01-03 22:31:18 +01:00
Folke Lemaitre
7b9fa284f8
style: better debug
2023-01-03 16:17:15 +01:00
Folke Lemaitre
ff1e322b4f
style: debug
2023-01-03 09:13:22 +01:00
Folke Lemaitre
9893430187
fix(cache): dont return directories in lsmod
2023-01-02 15:08:20 +01:00
Folke Lemaitre
60e96b478a
fix(loader): always load init.lua in plugin mods
2023-01-02 15:04:32 +01:00
Folke Lemaitre
9e90852a47
fix(cache): autoloading was broken!
2023-01-02 14:50:34 +01:00
Folke Lemaitre
1ec8f08480
fix(cache): properly return two values for finddir
2023-01-02 14:46:56 +01:00
Folke Lemaitre
8063523471
ci: added debug info when #topmods>1
2023-01-02 14:29:55 +01:00
Folke Lemaitre
0bc73db503
fix(cache): only autoload when plugins have been parsed. Needed to support `import`
2023-01-02 12:54:38 +01:00
Folke Lemaitre
f6b0172e92
fix(cache): allow lazyvim as a plugin
2023-01-02 12:54:00 +01:00
Folke Lemaitre
919b7f5de3
feat(spec): added `import` to import other plugin modules
2023-01-02 09:44:28 +01:00
Folke Lemaitre
77ff7beaa4
perf(cache): cache all lua files till UIEnter instead of VimEnter
2023-01-02 09:39:28 +01:00
Folke Lemaitre
51c23b661e
fix(spec): allow a spec module to be on the rtp and not only in config
2023-01-01 20:31:34 +01:00
Folke Lemaitre
11eee43c7e
fix(cache): keep ordering of topmods the same as in rtp
2023-01-01 18:52:07 +01:00
Folke Lemaitre
730bb84364
perf(loader): re-use topmod cache to find `setup()` module
2022-12-30 20:14:46 +01:00
Folke Lemaitre
def5cc5816
fix(cache): clear cached entry on errors
2022-12-30 11:52:20 +01:00
Folke Lemaitre
853d4d5838
fix(cache): added support for top level lua linked directories. Fixes #233
2022-12-29 18:40:28 +01:00
Folke Lemaitre
8544c389ab
fix(cache): always normalize modname separators
2022-12-29 18:26:39 +01:00
Folke Lemaitre
044e28bf8b
fix(cache): check package.loaded after auto-load and return existing module if present. Fixes #224
2022-12-29 09:06:23 +01:00
Folke Lemaitre
b8c5ab5dae
fix(cache): reload file if compiled code is incompatible. Fixes #225
2022-12-29 08:25:24 +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
95b9cf743c
fix(cache): properly get rtp during fast events
2022-12-29 01:25:17 +01:00
Folke Lemaitre
4b75d06c07
fix(cache): dont update rtp in fast events
2022-12-29 01:04:39 +01:00
Folke Lemaitre
9997523841
fix(cache): OptionSet is not triggered during startup, so use #rtp instead to see if it changed
2022-12-29 00:48:59 +01:00
Folke Lemaitre
370b1b982e
fix(cache): make it work again... #fixup
2022-12-28 23:50:25 +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
021e54655f
feat(cache): update package.loaded on require
2022-12-28 17:58:23 +01:00
Folke Lemaitre
bb53b8473c
fix(cache): never use packer paths from cache
2022-12-26 18:35:07 +01:00
Folke Lemaitre
4aa362e8dc
feat(cache): make ttl configurable
2022-12-25 16:26:17 +01:00
Folke Lemaitre
cc6276e9b0
refactor!: default lazy cache path is now under cache instead of state
2022-12-23 07:48:45 +01:00
Folke Lemaitre
2200284165
fix(cache): overwrite cache entry with new modpath when loading a file. Fixes #90
2022-12-22 09:10:11 +01:00
Folke Lemaitre
a345649510
fix(cache): if we can't load from the cache modpath, find path again instead of erroring right away
2022-12-21 14:56:46 +01:00
Folke Lemaitre
3606d62918
fix: add after directories to rtp to make after/ftplugin and others work. Fixes #47
2022-12-20 23:35:06 +01:00
Folke Lemaitre
ffabe91b2d
fix(cache): if mod is loaded already in the loader, then return that
2022-12-20 16:41:11 +01:00
Folke Lemaitre
316503f124
fix: dont autoload cached modules when module=false
2022-12-20 16:02:22 +01:00
Folke Lemaitre
62c1542141
fix(cache): normalize paths
2022-12-20 08:31:19 +01:00
Folke Lemaitre
b7bf18abd3
style: spelling
2022-12-19 21:11:33 +01:00
Folke Lemaitre
8a0da3b27e
config: move lazy cache to state/nvim/lazy/cache
2022-12-19 13:55:04 +01:00