Commit Graph

28 Commits

Author SHA1 Message Date
Folke Lemaitre 408449a59a
fix(rockspec): allow binary lua files. Fixes #1800 2024-11-04 11:46:48 +01:00
Marc Jakobi 591ef40f2d
fix(luarocks): try to install from root manifest (#1687)
## Description

When passing the `--dev` flag to `luarocks`, it will prioritise `dev`
versions when resolving dependencies (treating `dev` or `scm` as greater
than a SemVer version) if the rockspec doesn't specify an upper version
constraint (which is often the case).

Dev packages are often unstable and may cause more problems, especially
for Windows users (an example I've seen is git for windows trying and
failing to checkout submodules).

For now , a good compromise between too many retries and not retrying at
all could be to try `luarocks install` from the root manifest first, but
to keep the `--dev` flag in `luarocks make`.

If that still causes problems, it might be better to fall back to
`luarocks make` without `--dev` first, and then to try `luarocks ---dev
make` as a last resort.
In rocks.nvim, we only fall back to adding the `--dev` flag if the
install error message contains the string `"No results matching query
were found"`; assuming that stable non-dev packages shouldn't depend on
dev packages.
2024-08-31 08:59:45 +02:00
Folke Lemaitre f0324defdd
fix(rocks): try building anyway even when prerequisits have not been met. (will likely fail) 2024-07-08 07:45:45 +02:00
Folke Lemaitre 9ab3061690
perf(rocks): `vim.fn.executable` is slow on WSL2, so only check for `luarocks` when needed. Closes #1585 2024-06-29 11:44:31 +02:00
Folke Lemaitre 4319846b8c
fix(rocks): lua-5.1. Closes #1575 2024-06-28 16:07:49 +02:00
Folke Lemaitre 82276321f5
fix(rocks): if installing with luarocks (binaries) fails, then build from source. Fixes #1563 2024-06-27 11:33:11 +02:00
Folke Lemaitre 6c7ef7e27a
refactor: logging 2024-06-26 18:31:31 +02:00
Folke Lemaitre 90e14d1585
refactor(rocks): is_simple_build 2024-06-26 11:11:00 +02:00
Folke Lemaitre aa1c9572aa
fix(rocks): build.type instead of build.build_type 2024-06-26 08:50:06 +02:00
Folke Lemaitre 473361139c
fix(rockspec): dont lazy-load rock deps 2024-06-26 08:49:42 +02:00
Folke Lemaitre 6b8bf58ebf
feat(rocks): simple rockspecs are now fully resolved by lazy without luarocks. See #1548 2024-06-25 20:53:42 +02:00
Folke Lemaitre b6eba0d026
ci: auto-get rockspec mappings for rock name => github short url or url 2024-06-25 17:41:16 +02:00
Folke Lemaitre 4ca3e9aa51
fix(rocks): windows 2024-06-25 15:44:13 +02:00
Folke Lemaitre 7d3f69104f
fix(rocks): better errors / warnings when something goes wrong with luarocks 2024-06-25 13:23:25 +02:00
Folke Lemaitre d87da76679
feat(rocks): use hererocks to install luarocks when luarocks is not found 2024-06-25 07:55:30 +02:00
Folke Lemaitre 62a47b921f
fix(loader): no need to check plugin.dir in auto_load 2024-06-24 23:42:53 +02:00
Folke Lemaitre a089d43dba
feat: rewrite some known plugins to lazy specs instead of luarocks (plenary.nvim). Closes #1540 2024-06-24 21:57:34 +02:00
Folke Lemaitre 07c067a1a8
feat: make it easier to disable luarocks 2024-06-24 19:44:07 +02:00
Folke Lemaitre 105d4805ad
fix(runner): sync package specs after installing and before building 2024-06-24 19:38:33 +02:00
Folke Lemaitre 656d3d1f5b
feat: show rockspec deps in plugin details 2024-06-24 18:02:54 +02:00
Folke Lemaitre 9a6c219826 fix(rocks): only build rockspec when it has deps or an advanced build step 2024-06-24 17:15:10 +02:00
Folke Lemaitre dbffad6f44 fix(fragments): prevent adding the same spec instance more than once 2024-06-24 17:15:10 +02:00
Folke Lemaitre fcfd54835d feat: spec.rocks is no longer needed & added support for installing any luarock 2024-06-24 17:15:10 +02:00
Folke Lemaitre 3515cb518f fix(pkg): make sure state dir exists 2024-06-24 17:15:10 +02:00
Folke Lemaitre fd8229d6e3 fix(pkg): versioning and reload specs when pkg-cache is dirty 2024-06-24 17:15:10 +02:00
Folke Lemaitre 4326d4b487 fix(pkg): correctly pre-load package specs and remove them when needed during resolve 2024-06-24 17:15:10 +02:00
Folke Lemaitre c1912e2348 feat(pkg): import package specs in the scope of the plugin 2024-06-24 17:15:10 +02:00
Folke Lemaitre 3be55a4615 feat: added support for plugin packages by lazy, rockspec and packspec 2024-06-24 17:15:10 +02:00