why lein run &
does not run in background? it will not start to listen for ports unless I run fg
later - weird because if I run simple bash script this way it will run in background.
@twaima hm? Are you running lein run
then doing CTRL+Z or something? As that would pause the execution of the process
with &
but just found a solution it is: https://github.com/technomancy/leiningen/issues/1173
huh, interesting. Learned something new today
Hi, I'm using immutant messaging in my luminus project with figwheel. Long short, HornetQ starts itself during lein figwheel
and either hangs waiting for a lock if my dev REPL is started first (thus HornetQ is already started) or prevents my REPL from starting if fighweel is started first.
Is there an easy way of removing the immutant messaging dependency from the lein fighweel
task? Or do I just have to start fighweel from my dev REPL?
is there documentation somewhere on what the alternative to "implicit hooks" is?
maybe I need to focus on what the hooks are trying to do 😕
@gfredericks I thought that hooks were like a monkey-patch that tried to revert the monkey patch when done
that was what I thought it could be summarized as at least hah
thought they were managed via https://github.com/technomancy/robert-hooke
Perhaps it’s more like an intercepter pattern over functions you don’t control.. .anyways: https://github.com/technomancy/leiningen/blob/master/doc/FAQ.md has this
Q: I'm getting warnings for implicit hooks or implicit middleware.
A: Hooks are a deprecated feature where plugins can modify the behavior of built-in Leiningen functionality; they result in situations which can be very difficult to debug and usually point to situations in which the original API is not flexible enough.
Leiningen also has a deprecated feature for implicitly loading middleware. Middleware is not deprecated but should now be declared using :middleware instead of being auto-detected from plugins.
Adding :implicits false to project.clj will disable all implicit features.
To me, it is a bit concerning how it will be worked around in some plugins though. I think some do the hooks since the API isn’t exposed enough to do what they do. So I’m not sure what they will do instead. I can’t remember any concrete examples of plugins facing this without looking though.
oh also: https://github.com/technomancy/leiningen/blob/master/doc/PLUGINS.md#hooks if you didn’t see it.
yeah I think I found both of those
I guess I was hoping there was something called "explicit hooks" that I could easily switch to, but it seems like that's not the case
Can leiningen support dependencies that are only pom files? Adding [software.amazon.awssdk/services "2.5.17"]
doesn't seem to be enough.
@yefoakira add :extension "pom"
perhaps
but not sure what you expect to happen when this dependency is pulled to the classpath?
[software.amazon.awssdk/services "2.5.17" :extension "pom"]
Well, that does seem to do the work. Is that documented anywhere?
@yefoakira https://github.com/technomancy/leiningen/blob/master/sample.project.clj#L44 has examples using it
however, it is missing from the tutorial doc I noticed
that example mentions “what is supported by pomegranate
“, which the lib dependencies info is passed through for resolution
In that libs github, I actually don’t see the dependency coordinate structure documented directly, but in it’s actual source comments, you can see https://github.com/cemerick/pomegranate/blob/pomegranate-1.0.0/src/main/clojure/cemerick/pomegranate/aether.clj#L707