2010/10/11 steve donovan <[email protected]>: > On Mon, Oct 11, 2010 at 3:35 PM, Jerome Vuarand > <[email protected]> wrote: >> First, how is namespace conflict handled by LuaRocks? > > In the old days, there was no problem; any package would specify > exactly what it needed, and it would get that what it needed when it > said 'require', all done with the magic of 'luarocks.require'. And it > still works like that with explicit luarocks.require, certainly on the > local tree. The system was designed around that whole concept, and > only later (due to peer pressure) that modules got copied to the > regular Lua module paths.
While I welcomed the change, when conflicts occurs I'd like to specify which version of a module to use. The documentation only specify that once "luarocks.loader" has been required, dependency trees will be respected, but it doesn't tell how to specify such a dependency at runtime (my script use rocks, but is now one itself). >> module. But then I realized that there are already two rocks which use >> it, lposix and luaposix. > > It gets difficult to explain to people why there are N modules with > the same name, where N > 1. > > What about something like posix-extra? There are additions, but also changes. For example imagine bob's posix.select it taking tables and modify them (like the real select), while my posix.select leaves input tables untouched, and return new tables. I need to tell the system which one I want. >> be unable to remove. So my question is, why isn't LuaRocks using its >> own copy of whatever Lua modules it needs > > I suppose because the repo gatekeepers would not allow something in > that would break the system? When the LuaRocks authors and the rockspec repository gatekeepers are the same people that's easy, but if they diverge that may become troublesome. _______________________________________________ Luarocks-developers mailing list [email protected] http://lists.luaforge.net/cgi-bin/mailman/listinfo/luarocks-developers
