Code Monkey home page Code Monkey logo

Comments (14)

gigasquid avatar gigasquid commented on July 19, 2024 2

Great - I'll dig in tomorrow and get a branch up for you to take a look at :)

from libpython-clj.

gigasquid avatar gigasquid commented on July 19, 2024 1

I'll look into it and ask around for options and report back :)

from libpython-clj.

jjtolton avatar jjtolton commented on July 19, 2024 1

@sanel that wouldn't be an issue and we'd be happy to maintain. Only issue is that deps.edn can't build libpython-clj because of the Java class files. So currently there's no really any point (that I know of) to a deps.edn file!

from libpython-clj.

gigasquid avatar gigasquid commented on July 19, 2024 1

There are a lot of other benefits from deps.edn. It is becoming a popular build tool for people to use generally, has a faster start up time for repls, and has more benefits (see Rationale) . I think the template shown, has all the same functionality that lein is currently providing:

(From the repo)

  • build jar,
  • compile java sources,
  • create pom,
  • sign jar file
  • local install to .m2
  • deploy jar to clojars
  • run tests using kaocha

It would be possible to just switch from lein to clojure deps as the build tool and not have to maintain 2 dependency systems.

Happy to take some time to spike out a branch for you to check out with the changes. Just let me know.

from libpython-clj.

gigasquid avatar gigasquid commented on July 19, 2024 1

@cnuernber @jjtolton here is a WIP PR - please feel free to take it for a spin and feedback is most welcome 😸 #75

from libpython-clj.

jjtolton avatar jjtolton commented on July 19, 2024

Hi @gigasquid! Would absolutely love this as well but as far as I know, deps.edn simply does not support the Java class building required for libpython-clj. Since you brought it up I'll do a little bit more digging just to make sure I'm not crazy.

from libpython-clj.

jjtolton avatar jjtolton commented on July 19, 2024

https://clojurians.slack.com/archives/C6QH853H8/p1579876343024100
image

As of Jan 24th 2020

Sorry!! I'd love to have this move to deps.edn too. If this ever changes then happy to support that!

Maybe we can find a different way to satisfy this requirement? Some kind of installer script perhaps?

from libpython-clj.

sanel avatar sanel commented on July 19, 2024

If I may suggest, why not keep both, or generate deps.edn from project.clj? Leiningen is pretty standard, more powerful and there is plugin for getting dependencies from git repos.

from libpython-clj.

gigasquid avatar gigasquid commented on July 19, 2024

There is a brand spanking new template out that looks like it handles javac for deps 🎉
(ht to Alex Miller to pointing it out to me)

https://github.com/mikeananev/slib

In particular - here is the aliases to compile jars with javac and just javac alone, etc...

https://github.com/mikeananev/slib/blob/master/resources/clj/new/slib/deps.edn#L50

I haven't tried it myself yet, but if it looks like a good direction to you - I'd be happy to experiment with it in the project to see if it works.

from libpython-clj.

jjtolton avatar jjtolton commented on July 19, 2024

Sure! And I'll do the same. I think this may not solve the :git/url and :sha requirements but a move towards deps.edn is certainly something I'd be in support of. It don't expect it would be much trouble maintaining both in parallel since there's the lein plugin for deps.edn.

from libpython-clj.

jjtolton avatar jjtolton commented on July 19, 2024

I can confirm that this does indeed compile libpython-clj successfully! Just need a sign-off from @cnuernber on being okay to combine the plugin suggestion from @sanel with the toolset proposed by @gigasquid. I still don't think this will allow for direct github pull downs but it could be accomplished with cloning and then running clj -R:bg -A:javac followed by REPL connection as normal (tested on Ubuntu/CIDER).

from libpython-clj.

cnuernber avatar cnuernber commented on July 19, 2024

I am curious as to whether it achieves the goal of the original post - Given this plugin, can you use use a :git/url and sha to pin a specific commit. I use the lein deps plugin elsewhere and it works fine, for sure, but it adds a small layer of indirection and if we aren't concretely getting anything out of that layer I would rather avoid it. On the other hand, if we can get benefit at all from moving to deps.edn + lein plugin I am down.

from libpython-clj.

cnuernber avatar cnuernber commented on July 19, 2024

Well, then, Yes please :-). Let's try it sounds worth it.

from libpython-clj.

cnuernber avatar cnuernber commented on July 19, 2024

Closing this for now. We will then need a build system on top of deps.edn and my current solution of using a project.clj that has the lein-deps plugin is clumsy. We can slow-burn research on this over time as it isn't pressing.

from libpython-clj.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.