This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-11-26
Channels
- # announcements (2)
- # aws (4)
- # babashka (5)
- # beginners (91)
- # calva (4)
- # cider (17)
- # clara (13)
- # clj-kondo (14)
- # cljsrn (11)
- # clojure (159)
- # clojure-europe (2)
- # clojure-nl (14)
- # clojure-norway (2)
- # clojure-taiwan (2)
- # clojure-uk (32)
- # clojurescript (101)
- # clojutre (4)
- # cursive (13)
- # data-science (1)
- # datomic (46)
- # emacs (68)
- # figwheel-main (5)
- # fulcro (48)
- # graalvm (7)
- # graphql (6)
- # instaparse (5)
- # joker (4)
- # lambdaisland (1)
- # leiningen (2)
- # malli (9)
- # off-topic (41)
- # pedestal (15)
- # re-frame (47)
- # reagent (7)
- # reitit (14)
- # shadow-cljs (180)
- # spacemacs (58)
- # specter (1)
- # tools-deps (13)
Good morning! Darn conj has me so full of ideas now đŽ So what does it take to hook into the tools-deps machinery? Is there a general primer-faq? Reason I'm asking is b/c I'm working with Chris Nuernberger on libpython-clj and I think it would be a very good idea to be able to specify Python deps declaratively. Is tools-deps designed to be extensible like that or should we use a seperate .edn file inspired by deps.edn?
It is extensible, but the clj tool currently doesn't define a way for extensions to be loaded
I thinks it's not extensive in that direction. it's a tool to resolve java dependency and build java classpath, it probably can't be extended for other ecosystems such as python or js. they are too different.
clj is about making classpaths so the question is whether there is any use in putting python stuff on a classpath
So the use case here is for library authors using the libpython-clj tool
You could use just the resolve-deps
part with custom providers to do the transitive expansion
There's a chicken/egg problem -- basically the Python VM needs to be loaded before any libpython-clj libraries can be pulled in
Unclear if thatâs worth doing via tolls deps
Of course! I was't sure if it was designed for that or not
I donât know enough about python stuff to tell but the provider extensions are pretty generic so it could probably be made to work, just not sure if itâs worth doing
Python has literally a PYTHONPATH
which is pretty similar to the classpath. But in practice I think people donât do that. The Python community changed the âde-factoâ dependency manager 4 times in the last 5 years already (I havenât looked deeply into python rencetly, might be wrong).