-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Module]: rocks-git
for pulling plugins that don't exist on luarocks
#81
Comments
this feature would definitely help more users migrate to this plugin manager. and how does this module behave when there are two plugins depend on a same git repository, but with different versions/tags/branches? for example now I have two plugins:
they all rely on a dependency:
with different version (actually I had upload the can rocks.nvim support isolated versions on the same dependency? |
Some things to consider:
Personally, I like the idea of generating a rockspec. |
I think dependeny management should be outside the scope of this module. The point of rocks.nvim is to take away that burden from the user and make it the plugin authors' responsibility. So we just need to rigourously package plugins that have dependencies (there's not that many at this point) for luarocks, so they can be installed without the rocks-git module. |
luarocks can install different versions of the same package, but I don't know at this point if it causes issues at runtime. My guess would be that a We should probably include some kind of dependency conflict detection at least in the health checks. |
maybe first investigate if isolated runtime path is supported by Neovim. in second thought, maybe it's not supported at all in Neovim. I never read relate things in Neovim documents. update: based on intuition, I guess Neovim is just appending plugin folder to its runtime path, so let Thus provide different runtime path for different plugin seems not possible. Because one process (Neovim editor instance) only have one environment path To support different runtime path, a plugin will have to run in a isolated child process, e.g. a remote plugin. update-2: but how does lua and luarocks community (without considering Neovim) handle such case? If there are two luarocks packages: How does lua handle the runtime path itself? |
We don't add dependencies to the rtp, just to the But it looks like luarocks handles conflicting dependencies as it should. |
then it should be all good, at least luarocks itself solved dependencies with different versions correctly. this issue happens all the time, in all programming languages and package managera: java and maven/gradle, ubuntu and apt, cpp and cmake. |
rocks-git
for pulling plugins that don't exist on luarocks
Starting work on this...
On second thought, this could potentially lead to conflicts with luarocks installations. |
Not everyone must have their plugins present on luarocks. This module would allow users to specify a
git
repository for installation of their plugins:The text was updated successfully, but these errors were encountered: