summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Release 3.11.0v3.11.0Hisham Muhammad2024-03-131-1/+1
|
* tweaks to --verbose outputHisham Muhammad2024-03-134-42/+69
| | | | | | | | * Make output more informative for bug reports: * print `luarocks config` output at the top * Make output a bit more compact: * shorter output for os.execute * do not output fs.current_dir()
* always make --global target the system treeHisham Muhammad2024-03-111-6/+13
| | | | | | | This alleviates the issue in the specific invocation given in #1425, but I don't think it is a full solution. See #1425.
* fix(windows): parse slashes correctly when reading rock_manifestHisham Muhammad2024-03-062-2/+3
|
* fix(windows): output native slashes on fs.findHisham Muhammad2024-03-062-4/+7
|
* fs(windows): avoid excessive icacls callsHisham Muhammad2024-03-061-4/+9
|
* fix: check permissions before trying to lockHisham Muhammad2024-03-057-27/+8
| | | | This should provide a better error message.
* feat: improve permissions error messageHisham Muhammad2024-03-051-3/+35
|
* fix(make): --no-install doesn't need lockingHisham Muhammad2024-03-051-1/+1
|
* fix(path): break Windows cmd to avoid argparse word wrapHisham Muhammad2024-03-051-1/+2
|
* fix: on windows environment variables are passed with trailing spaceSewbacca2024-02-291-1/+1
|
* feat: better error message when lacking permissionsHisham Muhammad2024-02-292-6/+12
| | | | | | The lock error message has clobbered the check_command_permissions error message. This is an interim solution, but we should probably move the permissions check further up for a more informative error.
* fix: don't try to lock when using --pack-binary-rockHisham Muhammad2024-02-297-7/+22
|
* fix: don't crash when root_dir is a tableHisham Muhammad2024-02-291-1/+1
|
* tests: speed up and simplifyHisham Muhammad2024-02-291-15/+16
|
* feat: more informative reports no bad LUA_{INC,LIB}DIR configsHisham Muhammad2024-02-293-15/+93
|
* move luarocks.argparse to luarocks.vendor.argparseHisham Muhammad2024-02-292-1/+1
|
* deps: bump vendored dkjson to version 2.7Hisham Muhammad2024-02-291-9/+10
|
* feat(fs): drop stale lock files (older than 1 hour)Hisham Muhammad2024-02-291-1/+9
| | | | This feature is dependent on lfs.
* feat: always reuse cached files younger than 10 secondsHisham Muhammad2024-02-292-7/+32
| | | | This feature depends on lfs being available.
* feat(build,install): only rebuild and reinstall when using --forceHisham Muhammad2024-02-294-3/+27
|
* fix: refuse to use luasec < 1.1Hisham Muhammad2024-02-281-2/+8
| | | | | | This can happen if a distro-installed luasec is too old. See #1302 #1309 #1316 #1360 #1422 #1500
* fix: more resilient sysconfdir detectionHisham Muhammad2024-02-271-1/+5
|
* fix(fs): make copy_contents behavior consistent on UnixHisham Muhammad2024-02-271-1/+4
| | | | Make it match the win32 behavior.
* fix(fs): make current_dir always return 1 arg onlyHisham Muhammad2024-02-271-5/+11
|
* perf: speed up untar operationHisham Muhammad2024-02-271-4/+21
|
* fix: if --lua-* flags are given, don't use the hardcoded pathsHisham Muhammad2024-02-252-15/+26
| | | | | | Thanks @Frityet for the help with troubleshooting! Fixes #1611
* fix: better normalization for paths and slashesHisham Muhammad2024-02-2312-92/+122
| | | | Fixes #1195.
* fix: handle error if test.command is not a string.Hisham Muhammad2024-02-211-0/+6
| | | | Fixes #1055.
* fix(init): do not write spurious .gitignore entriesHisham Muhammad2024-02-211-2/+2
|
* fix: let runtime detection handle LUALIB filenameHisham Muhammad2024-02-201-3/+1
| | | | | | | | This should be more flexible than hardcoding a value that may become incorrect once people reconfigure their LuaRocks to point to another Lua distribution, especially on Windows. Fixes #905.
* improve and simplify Lua interpreter searchHisham Muhammad2024-02-205-40/+49
| | | | | | | * do not proceed with commands if interpreter is not found * begin retiring LUA_DIR and LUA_BINDIR, and promote LUA as the main way to setup the interpreter location (from which we derive the rest)
* fix: don't show "no downloader" error for every mirrorHisham Muhammad2024-02-194-7/+10
|
* fix(init): inject project's package.(c)path in lua wrapper scriptHisham Muhammad2024-02-191-1/+20
| | | | Fixes #924.
* fix(init): use absolute paths when deletingHisham Muhammad2024-02-191-2/+2
| | | | Thanks to @imolein for pointing it out!
* fix(config): print boolean values correctly on Lua 5.1Hisham Muhammad2024-02-191-1/+5
|
* fix(lint): don't crash when missing descriptionHisham Muhammad2024-02-191-2/+2
|
* fix(build): don't look for Lua headers when installing pure-Lua rocksHisham Muhammad2024-02-194-57/+85
| | | | | | | This only applies to 'builtin' as we can't know about other modes, but this should be good enough. Fixes #1275.
* improve dependency match messageHisham Muhammad2024-02-191-1/+1
|
* fix(config): ensure directory exists when saving config fileHisham Muhammad2024-02-191-3/+10
| | | | Fixes #1261.
* when picking a default dependency dir, look for lib/ firstHisham Muhammad2024-02-192-9/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a rockspec specifies `external_dependencies` but those don't define a `library` entry, we don't have a way to check for the various possible `external_deps_subdirs` to find the one that contains the library. (But people really should specify a `library` entry there if they're linking the library!) Previously, we were just picking the first one from the list. On Windows, this meant that sometimes setting `MY_DEPENDENCY_DIR` would not be sufficient if the library was under `$MY_DEPENDENCY_DIR/lib`, because "" was picked first. We now improve the heuristic by putting "lib" first on the list and checking if it exists. I'm still keeping "bin" in the end of the list, because I think this is less common that a flat directory structure on Windows, so "lib" covers the Unix-like trees and "" covers flat trees (I don't remember why have "bin" as a library subdir on Windows, but if it's there then we must have seen it in the wild!) This means that "bin" will never get auto-picked by this heuristic, but it will be available for the cases where `library` _is_ set. While I'm at it, I also flipped the order of some Unix entries, so that this heuristic for these kind of rockspecs gets a nicer behavior on Unix systems that have things like `/usr/lib64` and `/usr/lib/<platform>` as well. Fixes #1041.
* fix(builtin): compile C modules in a temp directoryHisham Muhammad2024-02-192-6/+34
| | | | Fixes #1492.
* vendor in the dkjson dependencyHisham Muhammad2024-02-194-30/+750
| | | | | | Fixes #1243. Fixes #1168. Fixes #559.
* silence warning which only appears when rebuilding manifestHisham Muhammad2024-02-191-1/+0
| | | | Fixes #1446.
* normalize project dirHisham Muhammad2024-02-191-1/+1
| | | | | Avoid showing things like `/foo/bar/../.././lua_modules` when running `luarocks path`.
* feat(path): add --full flag for --lr-path and --lr-cpathHisham Muhammad2024-02-191-14/+26
| | | | | | | | | | | By default, `--lr-path` and `--lr-cpath` only include the paths derived by the LuaRocks rocks_trees. Using `--full` includes any other components defined in your system's package.(c)path, either via the running interpreter's default paths or via `LUA_(C)PATH(_5_x)` environment variables (in short, using `--full` produces the same lists as shown in the shell outputs of `luarocks path`. Closes #1351.
* fix program search when using absolute paths and .exe extensionsHisham Muhammad2024-02-192-1/+25
| | | | | | Fixes #1001. Thanks @badrazizi for the suggestion!
* fix: do not attempt setting exec permissions for folders on WindowsHisham Muhammad2024-02-181-3/+5
| | | | | | | | | Not sure of what are the circumstances that make this cause problems on Windows, but running this shouldn't be necessary on Windows, since the concept of "execute permissions for directories means traversal permissions" is a Unixism. Fixes #991.
* drop cfg.lua_interpreter, use cfg.variables.LUAHisham Muhammad2024-02-189-68/+98
|
* feat(builtin): inherit inc and libdirs from external_dependenciesHisham Muhammad2024-02-171-4/+5
| | | | | | | | | | | | If a rockspec has external_dependencies but the module entry does not specify incdirs or libdirs, then autoextract those values from external_dependencies and apply it to the module entry. Hopefully this will improve compatibility of existing rockspecs that did not fully specify their incdirs and libdirs, such as https://github.com/brimworks/lua-yajl/blob/078e48147e89d34b8224a07129675aa9b5820630/rockspecs/lua-yajl-2.0-1.rockspec Fixes #1239.