eastwood has a lot of copied deps here: https://github.com/jonase/eastwood/tree/master/copied-deps/eastwood/copieddeps how does that work licensing-wise? I’d like to do the same with rewrite-clj in clj-kondo to prevent classpath clashes
I think I’ll make a fork and introduce one extra level of namespacing
That’s all the brainchild of @andy.fingerhut
There are two libs that do this kind of thing for you. Dolly (I guess from the cloned sheep) that Andy wrote, and Mr. Anderson, which orchard and friends uses.
cool, I’ll check it out
licensing-wise it works for Eastwood, because all of those dependencies and Eastwood are under the EPL, so there isn't even any license matrix you need to consult to figure out if they are compatible 🙂
tool-wise, dolly isn't what I would consider "finished", or at least certainly it requires manual fixing up of things after running it for some ns forms it doesn't update for you.
I haven't used mrandersen myself, but hopefully it is more finished/polished than dolly is.
ok, I’ll have a look at that. do you think mr-anderson-ingin an MIT licensed project into a EPL licensed project would work?
another question: does eastwood support an ‘unresolved symbol’ type of linter, or does it just crash when you have that in your code, like (fn [foo] bar)
?
Eastwood is intended to eval all of the forms in your code, the same way that (require 'my-ns)
would. It does this so that it can expand all macros and look for warnings about weird stuff in the macro-expanded version of the code, rather than the original (which is counter-productive for a linter to do, depending upon how those macro-expanded forms look).
Given that, I always thought of Eastwood as focusing on telling you stuff about your code that the Clojure compiler does not.
right, that makes sense
Regarding license compatibility, I have done a quick Google search for open source software license compatibility, and the results I found in a few minutes do not mention the Eclipse license yet. e.g. https://dwheeler.com/essays/floss-license-slide.html
A few of Eastwood's individual "linters" look at the original source forms that were read, rather than the macro-expanded version, but it still always tries to macro-expand all of the code.
Given that MIT is the nearest in permissiveness to "Public Domain" in that chart, I would be surprised if combining it with nearly any other licensed code would be a problem, but IANAIPL (I Am Not An Intellectual Property Lawyer)
That’s my hunge too. If that doesn’t work, I could probably publish it as a forked library and just use the library.