I once got assigned a work project to add new functionality to the web service of a recently-acquired company.
The meat of their codebase was a single lua file to handle web requests, query value from Redis, and then progressively filter out items in a loop. Of course, because Lua has no continue statement, the file was a long series of if / else blocks. It was clear that the development style was to just keep adding new things to the loop. There were, of course, no tests.
I asked the former CTO of the acquired company (now in a sales) why they went with Lua. His reply was something about how if Lua is good enough for fintech, it should be great for web services. He must have been good in the sales role, because when I learned how much our company paid to acquire this crappy Lua script, my jaw dropped.
Anyway, that's all to say that in my sample size of 1, Luarocks has been the least painful part of Lua.