)]}'
{
  "commit": "440647e26420dffac3f8d89155cee23c6094805b",
  "tree": "cef9246ccb85ada070622fd1511653b4e23ca7ad",
  "parents": [
    "9bf24ecf26137d71ccaca9e860983712b1abb72a"
  ],
  "author": {
    "name": "Tanmay Rauth",
    "email": "t_rauth@apple.com",
    "time": "Tue May 05 13:20:45 2026 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue May 05 22:20:45 2026 +0200"
  },
  "message": "feat(catalog): add hadoop namespace operations (#963)\n\n[3: Namespace\noperations](https://github.com/apache/iceberg-go/issues/798#issuecomment-4320784323)\nImplement all six namespace interface methods. CreateNamespace uses\nos.MkdirAll and errors if the directory already exists or if non-empty\nproperties are passed. DropNamespace checks that there are no tables or\nchild namespaces before calling os.Remove. CheckNamespaceExists uses\nos.Stat. ListNamespaces reads directory entries and filters out table\ndirs via isTableDir. LoadNamespaceProperties returns a synthetic\n{\"location\": path} (not persisted). UpdateNamespaceProperties returns an\nunsupported error. Tests cover create, create duplicate, create nested\n(a.b.c), create with properties (error), drop, drop non-existent, drop\nnon-empty with tables and child namespaces, list empty and mixed\nentries, check exists, load properties, and update properties error.\n\nRelates to #798",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e44fc697df7af219c7f6f40faab1bdceed4f5ed0",
      "old_mode": 33188,
      "old_path": "catalog/hadoop/hadoop.go",
      "new_id": "be656450d30884cd832422a0f524a66210f5a710",
      "new_mode": 33188,
      "new_path": "catalog/hadoop/hadoop.go"
    },
    {
      "type": "modify",
      "old_id": "23ecaff2e6ddef1d3af2fbe6873ff5a68dd5cc7b",
      "old_mode": 33188,
      "old_path": "catalog/hadoop/hadoop_test.go",
      "new_id": "dbdeb27de5f51c9b4001e2203bdbe60329753280",
      "new_mode": 33188,
      "new_path": "catalog/hadoop/hadoop_test.go"
    }
  ]
}
