)]}'
{
  "log": [
    {
      "commit": "50e1c1425ff4adbcd34e53481b9d448db54023d2",
      "tree": "29a28d5b4fe3b05a267d274f8f94fc6762c847c2",
      "parents": [
        "b1eb448764a0a99148bd0b3c1ec28c3576403d92"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Wed Aug 12 14:10:43 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Wed Aug 12 14:10:43 2026 -0700"
      },
      "message": "Add .gitattributes\n\nNormalize line endings to LF on checkin so cross-platform contributions don\u0027t\nintroduce CRLF noise, and mark common binary types as binary. Release\nexport-ignore rules can be added later alongside the source-release tooling.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "b1eb448764a0a99148bd0b3c1ec28c3576403d92",
      "tree": "7628a4b6382e60445f03473ccf2b68b68903dee7",
      "parents": [
        "99fcd1febc6631ce2fdd5551355f41098a6adffd"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Wed Aug 12 10:11:59 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Wed Aug 12 10:11:59 2026 -0700"
      },
      "message": "Use an allowlisted CI toolchain setup\n\nThe Apache Actions allowlist rejects dtolnay/rust-toolchain, so install the\nRust toolchain through a local composite action (.github/actions/setup-builder)\nthat uses rustup, matching apache/datafusion and apache/iceberg-rust. Pin\narduino/setup-protoc and swatinem/rust-cache to the commit SHAs those Apache\nprojects use (which are on the allowlist), and pin actions/checkout.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "99fcd1febc6631ce2fdd5551355f41098a6adffd",
      "tree": "1122b8ec6ae8ffaf100ad60867e157ac687a182d",
      "parents": [
        "ce35815a2a5e0c7a37e28d2a59fd3ea31d07dcd7"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Wed Aug 12 07:19:03 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Wed Aug 12 07:19:03 2026 -0700"
      },
      "message": "Exclude dev/.rat-excludes from license header check\n\nThe RAT exclude list is a plain data file with no place for an Apache license\nheader, but the skywalking-eyes check flagged it as missing one. Add\n**/.rat-excludes to the licenserc paths-ignore, alongside the other headerless\nconfig files (.gitignore, .gitattributes, .helmignore).\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "ce35815a2a5e0c7a37e28d2a59fd3ea31d07dcd7",
      "tree": "1ca562669717bca02aa8e59752e3c0577057617f",
      "parents": [
        "96b6d77ab0c8aa5939cbc45a365ced299775b9cd"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 15:26:35 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:07 2026 -0700"
      },
      "message": "Add dev/merge_spark_pr.py\n\nCopy Apache Spark\u0027s PR merge tool, which Spark projects use to merge pull\nrequests (squash + well-formed commit message + optional JIRA resolution)\ninstead of the GitHub merge button. Subproject changes: point GITHUB_BASE /\nGITHUB_API_BASE at apache/spark-connect-gateway, treat main as the default\nbranch for fix-version selection, filter SPARK JIRA fix versions by the\nconnect-gateway- prefix, and adjust the header comments. The SPARK JIRA\nintegration is kept as-is since this subproject uses the SPARK project.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "96b6d77ab0c8aa5939cbc45a365ced299775b9cd",
      "tree": "8e7c43f82ea9bafbef7250ce26a2ee5202992a0a",
      "parents": [
        "468317c42eb4a03ca1f308825f5d6f9fe1fd1157"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 14:49:09 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:07 2026 -0700"
      },
      "message": "Add a minimal README\n\nA bootstrap-stage stub: what the gateway is, that it is an Apache Spark\nsubproject, its current bootstrapping status, contribution process, and\nlicense. Deliberately avoids linking to docs/crates/deploy paths that do not\nexist yet; a full README follows when the implementation is imported.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "468317c42eb4a03ca1f308825f5d6f9fe1fd1157",
      "tree": "0a407e4eb74e65cc7cac8f8106a96db996f73187",
      "parents": [
        "007ccd25e530c1f9c28b9c6dbeed8af33f4a1a9e"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 14:20:39 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:07 2026 -0700"
      },
      "message": "Add .gitignore\n\nBased on the reference implementation (target/, Cargo.lock.bak, *.swp),\nextended with editor/OS noise, Helm chart packaging artifacts, Apache RAT\naudit output, and the Apache release distribution directory. Cargo.lock is\ntracked (this project ships a binary), so only the .bak is ignored.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "007ccd25e530c1f9c28b9c6dbeed8af33f4a1a9e",
      "tree": "b59bd8f120cf1d24beb5365fa5acc265999f1a96",
      "parents": [
        "9df079898de0a96ce8dfa224c60bd3c72cad0ab4"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 14:07:15 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:07 2026 -0700"
      },
      "message": "Add basic Rust CI workflow\n\nfmt, clippy (-D warnings), build, and test across the workspace on push and\nPR to main. Installs protoc for the tonic-generated proto crate. Action\nversions follow the toolchain used by the reference implementation.\n\nThis is a baseline; integration tests and a broader matrix can come later.\nThe workflow is a no-op until the gateway Cargo workspace is imported.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "9df079898de0a96ce8dfa224c60bd3c72cad0ab4",
      "tree": "5a26f5f88767f35e3370d35cd09e45fe3d7a5931",
      "parents": [
        "4a77c4ec21e8222d735c683c724984e10df9b244"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 13:20:46 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:07 2026 -0700"
      },
      "message": "Add license header checking\n\nEnforce the Apache-2.0 source header on every tracked source file via\napache/skywalking-eyes, driven by .github/.licenserc.yaml and run in a\ndedicated GitHub Actions workflow. Ignore list covers docs, generated Helm\nNOTES, lockfiles, and build artifacts. dev/.rat-excludes mirrors the ignore\nset for Apache RAT release audits.\n\nThe skywalking-eyes action is pinned to the v0.8.0 commit SHA.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "4a77c4ec21e8222d735c683c724984e10df9b244",
      "tree": "3ecd9fe8605e186b9c460f9d480fd3c0c69e1f85",
      "parents": [
        "5a8582970a66c381fb187ed88c2a30547081b2b5"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 13:10:12 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:07 2026 -0700"
      },
      "message": "Add pull request template\n\nReuse the standard Apache Spark PR template (What changes / Why / user-facing\nchange / How tested / Generative AI tooling), matching apache/spark-connect-rust.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "5a8582970a66c381fb187ed88c2a30547081b2b5",
      "tree": "9aa41aee04fd50d2d2af729b5f71b2886d285786",
      "parents": [
        "d04be825e344992b86d24bec8388525248161d72"
      ],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 12:54:06 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:06 2026 -0700"
      },
      "message": "Add LICENSE and NOTICE\n\nApache License 2.0 (source) and a NOTICE aligned with the Apache Spark\nsubproject convention. The NOTICE retains the Spark Export Control notice\nsince the gateway ships cryptographic functionality (TLS, JWT/OIDC), with\nthe Spark-specific third-party acknowledgements dropped as they do not\napply to this Rust project.\n\nLICENSE-binary / NOTICE-binary are intentionally deferred until a release\nbinary with a confirmed bundled-dependency set exists.\n\nCo-authored-by: Claude Code\n"
    },
    {
      "commit": "d04be825e344992b86d24bec8388525248161d72",
      "tree": "bbbd005eb67e5c069e6519c190db3f828027bf9f",
      "parents": [],
      "author": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 12:34:34 2026 -0700"
      },
      "committer": {
        "name": "Liang-Chi Hsieh",
        "email": "viirya@gmail.com",
        "time": "Tue Aug 11 16:11:06 2026 -0700"
      },
      "message": "Add .asf.yaml with Spark subproject metadata\n\nConfigure repo metadata for the Apache Spark Connect Gateway subproject:\nnotifications routed to the Spark mailing lists, SPARK JIRA autolink, and\nsquash/rebase merge buttons. Modeled on apache/spark-connect-rust\u0027s .asf.yaml.\n\nCo-authored-by: Claude Code\n"
    }
  ]
}
