Closed arrdem closed 5 years ago
etc/bootstrap.sh looks good
$ ./kat plan me.arrdem/katamari+uberjar | jq '.buildgraph.targets["me.arrdem/katamari"]'
{
"target": "me.arrdem/katamari",
"paths": [
"/Users/reid.mckenzie/Documents/dat/git/arrdem/katamari/src/katamari/src",
"/Users/reid.mckenzie/Documents/dat/git/arrdem/katamari/src/katamari/resources"
],
"deps": {
"org.clojure/clojure": {
"mvn/version": "1.9.0"
},
"org.clojure/tools.logging": {
"mvn/version": "0.5.0-alpha"
},
"compojure/compojure": {
"mvn/version": "1.6.1"
},
"clj-fuzzy/clj-fuzzy": {
"mvn/version": "0.4.1"
},
"ring/ring-jetty-adapter": {
"mvn/version": "1.7.0-RC1"
},
"ring/ring-json": {
"mvn/version": "0.5.0-beta1"
},
"instaparse/instaparse": {
"mvn/version": "1.4.9"
},
"cider/cider-nrepl": {
"mvn/version": "0.18.0"
},
"cheshire/cheshire": {
"mvn/version": "5.8.0"
},
"me.arrdem/roll-jvm": null,
"me.arrdem/maxwell": null,
"nrepl/nrepl": {
"mvn/version": "0.4.0"
},
"ch.qos.logback/logback-classic": {
"mvn/version": "RELEASE"
},
"ring/ring": {
"mvn/version": "1.7.0-RC1"
},
"me.arrdem/roll": null
},
"manifest": "clojure-library",
"rollfile": "/Users/reid.mckenzie/Documents/dat/git/arrdem/katamari/src/katamari/Rollfile"
}
This patch leverages the manifest prep time across all tools.deps (eg. JVM) backed targets to run some shared initializer code in the JVM extension that reads Katamari's current global default deps.edn data sources.
After that step in manifest prep, at rule prep time all the JVM manifests use the version pinning information currently somewhat magically delivered by the deps config to rewrite! their dependencies. This fixes #19 properly, by making the pinned and versioned deps part of the rule as it is content hashed for fingerprinting.
A (global) version bump will now cause target(s) to become stale.
Fixes #16, #19
Also includes a
plan
task for inspecting the prepped buildgraph, config and resulting plan, as well as some work on Maxwell and the planning machinery required to get it working as documented and intended. It was pretty broken.