[leiningen] Re: A case for minimising or eliminating dependencies

  • From: "Jean Niklas L'orange" <jeannikl@xxxxxxxxxxxx>
  • To: leiningen@xxxxxxxxxxxxx
  • Date: Thu, 6 Oct 2016 23:42:17 +0200

This has actually been on my roadmap for quite some time, but it's
unfortunately a bit hard to get rid of dependencies because people
tend to depend on it in plugins (without explicit deps). I'm happy to
slowly drop many of them over time. For example, `lein search` will
likely be its own plugin soon, which will remove some dependencies.

I'm not sure if using mranderson on the core dependencies will be
possible though. Some of the plugins, like s3-wagon-private,
explicitly depend on the wagon-provider-api. It may be possible on
some dependencies, but will make it hard to hook in if you want to
override them.

On 6 October 2016 at 21:58, Nathan Fisher <nfisher@xxxxxxxxxxxxxx>
wrote:

Interesting I'd need to look at it more but that could
potentially cause some licensing/distribution issues? For stuff I'm
the only consumer of I'm not too fussed but if I understand it
correctly it is equivalent to uber jars?

There shouldn't be any issues with licensing afaik – it just renames
packages and java classes, then bundles it with the [uber]jar you
produce. But if you're not allowed to modify the source then it'll be
a problem.

Another benefit of removing dependencies is that it will be easier to
get Lein into package management systems (see [1]), making it easier
for newcomers to easily grab it and try out Clojure.

[1]: https://github.com/technomancy/leiningen/issues/1608

-- 
Regards,
Jean Niklas L'orange

Other related posts: