Fork me on GitHub

OK, different question: is there any documentation about how to work on a boot extension? Do you just create a namespace in your project and work there? Or would you draft everything in build.boot and then move the code somewhere else?


@ska I often start in build.boot and then move elsewhere


@ska regarding the license thing: I’m not aware of a boot task for this but you can either a) write one b) generate a project.clj and use lein-licenses


@martinklepsch I already tried variant b which kinda works. I also generated a pom and used the maven report stuff (just run "mvn site") which is massive. I am actually considering writing one myself. I need some time to figure out how to write boot tasks, though.


@ska you could start with something plain clojure that takes a list of deps and returns their license metadata wrapping that in a boot task later will be easy 🙂


Just set up a fresh project and learning from your boot-deps project 🙂


I'll try to spend a few evenings on this. Let's see where it takes me.


Will also study the lein-licenses plugin, maybe the Gradle licenses plugin. Would be awesome to also the the CLJS and JS deps covered.


I'll also probably need some manual override or so.


Just thinking loudly here


@ska I’m interested in this too, keep us in the loop as you progress


@ska have fun & feel free to ask anything 🙂


sanity check - I’m working updating some old boot tutorials, and I’m using LATEST in my dependencies in some examples - I did it for reasons I can’t remember, and I usually advocate that people always pin versions - is it beneficial to even tell people that’s a thing?


(boot (show :verify-deps true))
gives me
for all deps except
cider nrepl and refactor-nrepl. How does one correct signatures?


hey @jjmojojjmojo! nice to see you no here, been too long. i agree re: LATEST, pinning version superior


thanks, I just needed to hear someone else say it lol 😄


Too bad, pod/pom-xml-map only extracts a subset and skips the license part.


@ska pomegranate seems like the thing you want to use, boot notwithstanding. to get data to work with that is


Yeah, I'm wading in pomegranate, boot.aether, boot.pod, lein-licenses and some more. This will take a few days, but just a few minutes ago I got this seq from a test fn: (() nil ("Eclipse Public License") ("Eclipse Public License 1.0") ("Eclipse Public License 1.0") ("Eclipse Public License") ("Eclipse Public License 1.0")) (first strategy: license tag in POM) I guess, that's some progress.


I'm working on this error

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes


While running

java -jar my-uberjar.jar


The solution is to delete manifest's .RSA`` file. I'm hunting to learn how to properly sign my uber jar now