| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
| |
Fixes #1414.
|
|
|
|
|
|
|
|
|
|
| |
LuaRocks does not validate the contents of the build table
because each backend defines it on this own. These validations
should be enough to address #1477, but ideally each bundled
`build` backend should have its own validator like the one
on `luarocks.type.rockspec`.
Fixes #1477.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When installing build dependencies, do so for the Lua version on which the
LuaRocks program is actually running, and not the one selected by the user via
config or `--lua-version`.
To do that, we temporarily flip the user-selected Lua version. It's a hacky
approach because we have to do this by flipping a bunch of global config
settings, and we may be missing some entries.
This definitely needs a better solution, but this is what can be done somewhat
easily in the current architecture. A full solution needs to address have
several complications (e.g. if you have a build dependency that needs to be
compiled, it will require C headers for another version of LuaRocks, and the
binary might be compiled with a different Lua version than the one the
developer has set up in their machine.)
|
|
|
|
| |
Fixes #1512.
|
|
|
|
| |
Closes #1513.
|
|
|
|
|
|
| |
Closes #1514.
Co-Authored-By: FractalU <r.beckmann@protonmail.com>
|
|
|
|
|
|
| |
Thanks @RunsFor for the suggested workaround!
Fixes #1529.
|
|
|
|
|
|
|
| |
Reduce some variable aliasing, just in case this is what is triggering
possible LuaJIT bugs on the MIPS-based LoongArch architecture.
See #1553.
|
|
|
|
| |
Fixes #1559
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
I couldn't track down which scenarios cause this, but it has
happened on Windows:
See: https://github.com/lunarmodules/luasystem/pull/17
See: https://github.com/lunarmodules/luasystem/actions/runs/7907096563/job/21583369125?pr=17
|
|
|
| |
Fixes #1540
|
| |
|
|
|
|
| |
Fixes #1545
|
|
|
|
| |
* Fixes a crash in `fulfill_dependency()` on musl
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
As mentioned by @erw7 in
https://github.com/luarocks/luarocks/issues/1443#issuecomment-1483816481,
quotes is required when using io.popen but causes problems when using
io.iopen. This makes luarocks unable to find its own md5sum.exe it is
shipped with.
Fixes https://github.com/luarocks/luarocks/issues/1443
Fixes https://github.com/neovim/neovim/issues/22752
Co-authored-by: erw7 <erw7.github@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Ignore any extra version info in jit.version when separated by a space.
A normal LuaJIT jit.version string looks like "LuaJIT 2.1.0-beta3".
Since official LuaJIT releases have all but stopped, various forks
continue to use the same version for all forks.
This change allows forks and patched rebuilds to add additional version
information at the end of the string without breaking luarocks version
detection, e.g. "LuaJIT 2.1.0-beta3 some-extra-version-info".
|
|
|
|
|
|
|
| |
`admin add` can add rockspec using the file protocol without any problems:
./bin/luarocks-admin add testapp-scm-1.rockspec --server '/tmp/rocks/orig'
But deletion only works using the rsync protocol.
This patch adds deletion via file protocol.
|
|
|
|
|
|
|
|
| |
Current implementation of path normalisation contains various flaws:
- Trailing `.` and `..` at the end of path don't get normalised,
- Path `/` turns into an empty string after normalisation.
This patch changes implementation of normalisation to fix these.
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
* fix `test --prepare` with non-busted rocks
|
|
|
|
| |
distributions use these to use the correct compiler and other tools
|
| |
|
|
|
|
|
|
| |
When running tests we usually need runtime, build and test
dependencies. This avoid having CI setups need to run
`luarocks make --only-deps` in order to run `luarocks test`.
|
| |
|
| |
|
|
|
|
| |
Fixes #1418
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a new second argument, `where`, a string which indicates places
to search for the module.
If `where` contains "l", it will search using the LuaRocks loader; if it
contains "p", it will look in the filesystem using package.path and
package.cpath. You can use both at the same time.
If successful, it will return four values.
* If found using the LuaRocks loader, it will return:
* filename of the module (eg. "/usr/local/lib/lua/5.1/socket/core.so"),
* rock name
* rock version
* "l" to indicate the match comes from the loader.
* If found scanning package.path and package.cpath, it will return:
* filename of the module (eg. "/usr/local/lib/lua/5.1/socket/core.so"),
* "path" or "cpath"
* nil
* "p" to indicate the match comes from scanning package.path and cpath.
If unsuccessful, nothing is returned.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Also, declare Unix version of current_user in
luarocks.fs.unix.tools, so that the pure-Lua version
based on LuaPosix takes precedence when available.
|
| |
|
|
|
|
|
|
| |
They look like useless maintenance burden, and I seriously
doubt anyone uses those in their config files. In any case,
they're easy to derive from cfg.program_version.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Some uses of is_tool_available use binary names that can be overriden
by the user via configuration.
|