aboutsummaryrefslogtreecommitdiff
path: root/spec (follow)
Commit message (Collapse)AuthorAgeFilesLines
* cmd: fallback to actual PATH searchHisham Muhammad2020-01-141-1/+1
|
* win32: fix split root for quoted absolute path handlingHisham Muhammad2019-12-121-0/+34
|
* Add quotes around usernames to handle usernames with space on WindowsStephen Baynham2019-12-021-3/+3
|
* Add --no-manifest flag to skip creating/updating a global manifestdaurnimator2019-11-301-1/+10
|
* dependency pinning: luarocks.lock file and --pin flagHisham Muhammad2019-11-2912-4/+222
| | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for pinning dependencies in projects and rocks: * Adds a new flag called `--pin` which creates a `luarocks.lock` when building a rock with `luarocks build` or `luarocks make`. This lock file contains the exact version numbers of every direct or indirect dependency of the rock (in other words, it is the transitive closure of the dependencies.) For `make`, the `luarocks.lock` file is created in the current directory. The lock file is also installed as part of the rock in its metadata directory alongside its rockspec. When using `--pin`, if a lock file already exists, it is ignored and overwritten. * When building a rock with `luarocks make`, if there is a `luarocks.lock` file in the current directory, the exact versions specified there will be used for resolving dependencies. * When building a rock with `luarocks build`, if there is a `luarocks.lock` file in root of its sources, the exact versions specified there will be used for resolving dependencies. * When installing a `.rock` file with `luarocks install`, if the rock contains a `luarocks.lock` file (i.e., if its dependencies were pinned with `--pin` when the rock was built), the exact versions specified there will be used for resolving dependencies.
* refactor dependency scanning for reuse when building lockfileHisham Muhammad2019-11-291-1/+1
|
* tests: simplify descriptions and set lazy setup/teardownHisham Muhammad2019-11-292-35/+35
|
* config: fix --unsetHisham Muhammad2019-11-291-0/+21
|
* Support make --no-doc (#1092)Paul Ouellette2019-11-151-0/+16
| | | | | | * Support make --no-doc * Add test for make --no-doc
* repos: rollback on installation failure (#1101)Hisham Muhammad2019-10-181-1/+34
|
* cmd: add compatibility mode for pre-argparse external commandsHisham Muhammad2019-09-033-0/+84
| | | | See #1070.
* fs: fix Lua wrapper for interactive modeHisham Muhammad2019-09-031-0/+39
|
* build: fix --branch flagHisham Muhammad2019-09-033-7/+58
| | | | | | | | | | | | The `--branch` flag is optional and takes a string argument. The `--branch` flag does not make sense for `luarocks make` because it does not fetch sources, it builds/installs based on whatever is in the current directory. This also adds tests that verify the behavior, but these don't run in Travis CI because of issues running a Git daemon there. They were verified locally.
* Fix some failing testsPaul Ouellette2019-08-011-1/+1
|
* cfg: avoid setting LUA_LIBDIR and LUA_INCDIR too earlyHisham Muhammad2019-07-261-1/+2
|
* path: keep order of existing entries in PATHHisham Muhammad2019-07-171-5/+23
| | | | | | | | | | Implements suggestion by @FSMaxB: > Add an additional flag to util.cleanup_path that specifies if the cleanup > happens from the right or from the left. If append is true, clean up from the > left, otherwise clean up from the right. Fixes #763.
* which: search in package.path and cpath as wellHisham Muhammad2019-07-121-0/+47
| | | | Also, add some tests.
* Tests: add tests for fs.is_file and fs.is_dir with symlinksHisham Muhammad2019-06-061-0/+36
| | | | Regression test for #1021.
* Enable use of lua-bz2Hisham Muhammad2019-06-061-1/+3
| | | | Fixes #1005.
* Fix and reorganize Lua version detectionHisham Muhammad2019-06-031-0/+70
| | | | | | | | | | Make it more robust when detecting the Lua version when working inside a project, and hopefully make the detection logic easier to track in the code. Reorganized code so that the `detected` table becomes internal to the `init_config` operation and only the regular `cfg` global table is used after that. Includes regression tests.
* Tests: add a couple of tests for dir.normalizeHisham Muhammad2019-06-031-6/+17
|
* cmd: fix crash if LuaRocks is given a bad LUA_DIRHisham Muhammad2019-06-031-0/+34
| | | | Includes a regression test.
* Tests: cleanup signature before signingHisham Muhammad2019-04-262-0/+4
|
* Tests: add test for fs.wrap_scriptHisham Muhammad2019-04-191-13/+53
|
* spec/init_spec.lua: cleanup testHisham Muhammad2019-04-091-3/+1
|
* config: add modes for reading, writing and unsetting individual entriesHisham Muhammad2019-04-031-65/+176
| | | | | | | | | | | | | | | | | | | | Includes special config keys `lua_dir` and `lua_version`, which are essentially persistent versions of --lua-dir and --lua-version: * `lua_dir` writes a number of LUA_* variables and cfg.lua_interpreter in the current scope's config file. * `lua_version` writes default-lua-version.lua to the given scope. Also deprecates the "flag" versions for various getters: * `--lua-incdir`: use `luarocks config variables.LUA_INCDIR` * `--lua-libdir`: use `luarocks config variables.LUA_LIBDIR` * `--lua-ver`: use `luarocks config lua_version` * `--system-config`: use `luarocks config config_files.system.file` * `--user-config`: use `luarocks config config_files.user.file` * `--rock-trees`: use `luarocks config rocks_trees`
* update to luacov 0.13.1 + cluacov 0.1.1Hisham Muhammad2019-04-035-14/+17
|
* upload: add --sign optionHisham Muhammad2019-04-011-1/+5
|
* Add --sign option to `luarocks pack`Hisham Muhammad2019-04-016-0/+12
| | | | | | | | * Introduce a new module, `luarocks.signing` * Add `--sign` option to `luarocks pack`, which produces a detached GPG signature * Includes a basic test, along with some fixtures with a password-less GPG key
* cmd: refactor detection code and improve detection of project dirHisham Muhammad2019-04-011-1/+3
|
* Support installations without documentationGeorge Roman2019-02-121-2/+6
|
* persist: handle keys that are keywords correctly.Hisham Muhammad2018-12-101-0/+8
| | | | Closes #947.
* Tests: add tests for luarocks.core.sysdetect (#939)Hisham Muhammad2018-10-301-0/+73
|
* core.sysdetect: add fork-free OS detection (#938)Hisham Muhammad2018-10-301-2/+2
| | | | | Detect operating system and architecture without forking subprocesses, doing `file`-like detection reading data from well-known system executables.
* cmd: fix setting up deployment paths from a treeFYP2018-10-291-0/+17
| | | | | | (Amended with a regression test.) Co-authored-by: Hisham Muhammad <hisham@gobolinux.org>
* Tests: add shebang test for fs.is_luaHisham Muhammad2018-09-261-0/+6
|
* write_rockspec: fix representation of Lua version dependencyHisham Muhammad2018-09-251-0/+21
| | | | | | | | The Lua version dependency specified with --lua-versions was using the internal table format. This commit ensures that it is stored in rockspecs using the string format. Includes a regression test.
* Tests: add regression test for luarocks.loader startupHisham Muhammad2018-09-112-1/+15
|
* write_rockspec, init: rename --lua-version to --lua-versionsHisham Muhammad2018-09-071-5/+5
| | | | | | | Fixes conflict between the use of --lua-version in write_rockspec to list supported Lua versions in a rockspec (now renamed to --lua-versions) and the general --lua-version flag used to select a Lua interpreter.
* Tests: add test cases for rocks with conflicting module namesHisham Muhammad2018-09-048-1/+159
| | | | | This tests the behavior of upgrades and downgrades on rocks that deploy both foo.lua and foo.so
* Fix: do not detect .luarocks/config-5.x.lua and lua_modules as modulesHisham Muhammad2018-08-021-1/+51
| | | | | | | | | | | | | Running luarocks init a second time after deleting the rockspec was mis-detects .luarocks/config-5.x.lua as a module, creating an entry `["luarocks.config-5.3"] = ".luarocks/config-5.3.lua"` in `build.modules`. Same problem happened with modules under `lua_modules`. This excludes `.luarocks` and `lua_modules` from module detection. Includes a regression test. Closes #847.
* Do not rewrite path in util.cleanup_path if the desired version is a ↵Ryan Hartlage2018-08-011-0/+14
| | | | | | | | substring of the version (#868) * Do not rewrite path in util.cleanup_path if the desired version is a substring of the version * Improve test coverage for core.util.cleanup_path
* Tests: refactor and add fixtures for the doc testsGeorge Roman2018-07-312-37/+122
|
* fs: fix rwx_to_number, add negated mask modeHisham Muhammad2018-07-261-0/+22
| | | | Fixes #856.
* Tests: add test_env.run_in_tmp utility functionGeorge Roman2018-07-244-265/+217
|
* Tests: add more unit tests for fun.luaGeorge Roman2018-07-241-0/+57
|
* fs.copy: skip copying if the source and destination are the same filesGeorge Roman2018-07-221-1/+1
|
* Tests: use more fixtures in the build testsGeorge Roman2018-07-223-53/+101
|
* fs: make unpack_archive platform-agnostic using specific fs functionsHisham Muhammad2018-07-182-0/+16
| | | | | | | Use luarocks.tools.tar for handling tar files, and add platform-specific functions fs.zip, fs.unzip, fs.bunzip2, fs.gunzip, giving them native implementations using Lua modules or alternative implementations using third-party tools.
* Tests: tweak dependencies for env=full testsHisham Muhammad2018-07-181-11/+10
|