)]}'
{
  "commit": "1d3edcb0d0b91459bd043086028b5f6c2cc67e5d",
  "tree": "fca8687447810928fcfebd026855c4b700d50512",
  "parents": [
    "a9def79f6f8bf1bc77fbd9bd189c50fd1317e345"
  ],
  "author": {
    "name": "Josh McKenzie",
    "email": "josh.mckenzie@apple.com",
    "time": "Mon Jul 27 13:29:28 2026 -0400"
  },
  "committer": {
    "name": "Josh McKenzie",
    "email": "josh.mckenzie@apple.com",
    "time": "Mon Jul 27 13:29:28 2026 -0400"
  },
  "message": "Add root Gradle front door; retire Makefile orchestration\n\nContributors expect ./gradlew on ASF Gradle projects, so replace the\ntop-level Makefile with a thin, additive root build.gradle that proxies\ninto the two independent child builds.\n\n- settings.gradle has no include/includeBuild: the root stays a standalone\n  build so analytics/ and sidecar/ remain uncoupled (CEP-63 Phase 1).\n- Tasks grouped analytics*/sidecar*/combined; each Execs the child gradlew\n  and inherits ambient toolchain env (JDK/SPARK/SCALA_VERSION, JAVA_HOME).\n- Integration-test task-name divergence absorbed at root\n  (:cassandra-analytics-integration-tests:test vs :integration-tests:integrationTest).\n- *Deps tasks reuse each child\u0027s existing scripts/ presteps; jar \u003d plain assemble.\n- Ported set-version/print-version to setVersion -Pversion\u003dx / printVersion.\n- Root gradle wrapper reuses analytics\u0027 8.14.3 verbatim (only ever Execs children).\n- Delete Makefile; update README Building + Versioning; ignore root /build/.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "66ce77cad29f85a3ad49b108dcea679161720535",
      "old_mode": 33188,
      "old_path": ".gitignore",
      "new_id": "e593b719762dc76e2d1ea4f8a586ed713d34bdf4",
      "new_mode": 33188,
      "new_path": ".gitignore"
    },
    {
      "type": "delete",
      "old_id": "9acbef18ff599d32d814f190c3c596230c78be0c",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "86c9a2986caf829fd433c073907ca4a73c373a37",
      "old_mode": 33188,
      "old_path": "README.md",
      "new_id": "5f291bb57a8efb10bf68af4cda1c6d3f458a56e9",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ed20a340c8dcf168121ec1f8fb35b1982b834206",
      "new_mode": 33188,
      "new_path": "build.gradle"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1b33c55baabb587c669f562ae36f953de2481846",
      "new_mode": 33188,
      "new_path": "gradle/wrapper/gradle-wrapper.jar"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d4081da476bb3ee087bb538a0bb6718958af29a4",
      "new_mode": 33188,
      "new_path": "gradle/wrapper/gradle-wrapper.properties"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "23d15a9367071145e9c79bb4ddf879d1fbe78b5d",
      "new_mode": 33261,
      "new_path": "gradlew"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "779c4f740b70328eee767a3f5aee8767c05c09d6",
      "new_mode": 33188,
      "new_path": "settings.gradle"
    }
  ]
}
