-
Notifications
You must be signed in to change notification settings - Fork 17
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
Fetching dependencies from git #91
Comments
No, it's currently not possible, but I long have thought about adding a plugin (i.e. optional extension) to Eldev that would do just this, probably using |
I'd like the functionality and bootstrapping that's available to |
A problem here is that I have never used such functionality. I basically understand what you need and why, and I see how it would be a useful addition to Eldev too. But to design a good and usable interface I'd rather first see some real-world examples. If possible (i.e. not a private project), please provide a link to the outer project and the dependency. If not, at least show some code how you would use it, especially how you autofetch it from Git it in your normal Emacs — I assume you already do that. |
FWIW, for the package (use-package doctest :ensure nil
:vc (doctest :url "https://github.com/ag91/doctest.git"
:branch "master"
:rev :newest)) The |
Hm, I just looked at the docstring of |
My bad! I'm using a not-yet-available-via-upstream-use-package extension called (unless (package-installed-p 'vc-use-package)
(package-vc-install "https://github.com/slotThe/vc-use-package" :newest)) Of course, instead of first installing |
I see. So, basically, if Eldev was to support this, in project's file
And then when it needs to install dependency X, it first checks if it has a URL for it. If it does, fetch (via Git or whatever) from that URL, else fall back to the usual PA lookup. (Internally this could be implemented via some existing tool or not, don't know yet.) Is that the desired mechanism? This means you'd have to enumerate all dependencies not available in package archives (MELPA or something) together with their URL. On the other hand, there is probably no way to look up "canonical repository URL for Elisp package named X", so you do have to specify it manually... |
The simplest implementation I can imagine would be one where in the A more generalized approach would be one which parameterizes over the
Yes, I believe that that's unavoidable (and that's okay). |
@doublep I encountered this issue today when trying to manage my fork of If there were some way to specify git URLs for some of the dependencies (perhaps |
Let's suppose your Probably an option would be that |
If If
I believe if that's the only thing that is implemented, that it would be |
I think Eldev should not treat
If it's just to get dependency information, I am against this idea as it would complicate things both implementation and usage-wise. Since Eldev is a build tool, the only meaningful solution here is to build differently depending on existence of Eldev file - but do it in an 'isolated' way, i.e. without polluting and messing around with
I agree, just an ability to pull dependencies from Git would be a HUGE improvement. It would unblock me from using Eldev in all scenarios that I have. |
Agreed. Hopefully, we won't have to wait too much longer. @doublep please let us know in case there are additional points that you would |
I have a fairly simple project that I would like to set up that requires a dependency that isn't hosted on a package manager. It seems this is becoming more common as people use
straight
andpackage-vc-install
to install directly. Is it possible to declare such a dependency in eldev given that it's not on a package manager or on a local path?The text was updated successfully, but these errors were encountered: