I just threw this together https://github.com/mfikes/planck/pull/272
@slipset: Yeah. I’d almost prefer Planck support the concepts intrinsically. Meaning as simple as an option specifying a dependencies vector.
This is one of those “interface” issues where it is probably much more important to get the interface right than the details on how it is actually implemented.
Yeah, I totally agree. Just threw something together to start a discussion
Cool
If you decomplect, it seems like there is (a) saying you depend on a lib, (b) retrieving that lib, (c) dealining with transitive deps of that lib.
What I’d like, personally would be if planck by default used whatever it found in some directory as its classpath
I agree.
What I’d like to solve is, I’ve got all my dependencies somewhere, please load them
Yeah, definitely, consuming .m2
deps is more painful right now than it should be.
This way I could use some other tool, like myself, to get the required libs in said directory
I think there is something appealing about being able to simply include an opt that says that you depend on a certain version of a lib.
planck -m ‘[[foo “0.1.0”][bar “0.2.0”]]’
with Planck just “figuring it out”.Perhaps an additional option to override ~/.m2
as the Maven repo location.
(Just thinking out loud.)
Honestly, the scary thing about this for me is the complexity that I presume is associated with actually implementing the download portion properly. There must be a lot of stuff in lein that understands ~/.m2/settings.xml
, and lots of crap that could fail when dowloading.
Yeah, problem is, (which might not be a problem), I chased the dependency resolution code in lein down to some java-libs
which means that you’d have to reimplement dependency resolution in cljs if you’d want for this to work without using java
Ahh… interesting.
Didn’t know lein
worked that way. So, even lein
is delegating that scary work.
yes, at least that’s what I found, but I could be reading the wrong code right, or even the right code wrong.
But, that’s sort of why I gave up on the whole dependency resolution thingy for planck/clojurescript
But, again, a nice start would be if you outsourced the dependency resolution and downloading to something else, and just had all the libs you wanted in a directory, and that planck could load deps from that lib.
planck —dependencies-lib=./lib/
I guess a lot of people already have stuff in .m2
that they just want to easily depend upon.
Yes, but I have so much more :simple_smile:
like spring and stuff from java projects
I wonder if
planck -c `lein classpath`
itself works for many peopleyes, but then you need java :simple_smile:
and the startuptime would be rather slow
I am being difficult here, I know.
Yes… that’s why I don’t like using lein classpath
… latency
http://stackoverflow.com/questions/12579335/leiningen-how-to-customize-the-location-of-the-m2-folder