luarocks fail on moonlibs/algo
Open
Nobody has claimed this yet.
bug
- Dominant language
- Go
- Stars
- 113
- Forks
- 18
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 23
Description
Version
$ tt --version
<..weary sigh..>
$ tt version
Tarantool CLI version 2.2.0, linux/amd64. commit: c30bf96
Steps to reproduce
$ git clone https://github.com/moonlibs/algo.git
$ cd algo
$ tt rocks test --prepare
Result
Error: LuaRocks 3.9.2 bug (please report at https://github.com/luarocks/luarocks/issues).
Arch.: linux-x86_64
<string>:243: assertion failed!
stack traceback:
[G]: in function 'assert'
<string>:243: in function 'fulfill_dependency'
<string>:336: in function 'fulfill_dependencies'
<string>:138: in function 'process_dependencies'
<string>:379: in function <<string>:350>
(tailcall): ?
<string>:154: in function <<string>:117>
(tailcall): ?
<string>:237: in function 'fulfill_dependency'
<string>:336: in function 'fulfill_dependencies'
<string>:66: in function <<string>:37>
(tailcall): ?
(tailcall): ?
[G]: in function 'xpcall'
<string>:646: in function 'run_command'
<string>:65: in function 'exec'
<string>:1: in main chunk
[G]: ?
Full output
$ tt rocks test --prepare
algo scm-1 depends on lua ~> 5.1 (5.1-1 provided by VM)
Missing dependencies for algo scm-1:
luacheck (not installed)
luatest (not installed)
luacov (not installed)
luacov-coveralls (not installed)
luacov-console (not installed)
luabench (not installed)
algo scm-1 depends on luacheck (not installed)
Installing https://rocks.tarantool.org/luacheck-scm-1.rockspec
Cloning into 'luacheck'...
remote: Enumerating objects: 6326, done.
remote: Counting objects: 100% (133/133), done.
remote: Compressing objects: 100% (63/63), done.
remote: Total 6326 (delta 57), reused 100 (delta 53), pack-reused 6193
Receiving objects: 100% (6326/6326), 2.27 MiB | 3.64 MiB/s, done.
Resolving deltas: 100% (4119/4119), done.
Missing dependencies for luacheck scm-1:
argparse >= 0.6.0 (not installed)
luacheck scm-1 depends on lua >= 5.1, < 5.4 (5.1-1 provided by VM)
luacheck scm-1 depends on argparse >= 0.6.0 (not installed)
Installing https://luarocks.org/argparse-0.7.1-1.src.rock
argparse 0.7.1-1 depends on lua >= 5.1, < 5.5 (5.1-1 provided by VM)
No existing manifest. Attempting to rebuild...
argparse 0.7.1-1 is now installed in /home/alex/tmp/try-tt-rocks-on-algo/algo/.rocks (license: MIT)
Error: LuaRocks 3.9.2 bug (please report at https://github.com/luarocks/luarocks/issues).
Arch.: linux-x86_64
<string>:243: assertion failed!
stack traceback:
[G]: in function 'assert'
<string>:243: in function 'fulfill_dependency'
<string>:336: in function 'fulfill_dependencies'
<string>:138: in function 'process_dependencies'
<string>:379: in function <<string>:350>
(tailcall): ?
<string>:154: in function <<string>:117>
(tailcall): ?
<string>:237: in function 'fulfill_dependency'
<string>:336: in function 'fulfill_dependencies'
<string>:66: in function <<string>:37>
(tailcall): ?
(tailcall): ?
[G]: in function 'xpcall'
<string>:646: in function 'run_command'
<string>:65: in function 'exec'
<string>:1: in main chunk
[G]: ?
Findings
Search on fulfill_dependencies on the LuaRocks bug tracker gives the following open reports.
- https://github.com/luarocks/luarocks/issues/910 (attempt to index nil value)
- https://github.com/luarocks/luarocks/issues/1034 (attempt to index nil value)
And the following closed ones.
- https://github.com/luarocks/luarocks/issues/1553 (attempt to index nil value)
- https://github.com/luarocks/luarocks/issues/1549 (the same line 243! the same version 3.9.2!)
- https://github.com/luarocks/luarocks/issues/1369 (attempt to index nil value)
https://github.com/luarocks/luarocks/issues/1549 looks promising.
There is luarocks v3.10.0.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing tt rocks test --prepare in moonlibs/algo and inspect how the command invokes LuaRocks 3.9.2 during dependency resolution. Compare the failure with LuaRocks issue 1549 and the available 3.10.0 release. Done means the reported dependency installation completes without the assertion failure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, lua
- Domain
- cli, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100