)]}'
{
  "commit": "c8bb6101f5d55f26d8a9794234041944c2752d19",
  "tree": "3f8d955a5552fbeb6336377155f29c84e698e322",
  "parents": [
    "0e9c34aeaacfcea22c09a654cc3b2c8f582492b6"
  ],
  "author": {
    "name": "Shawn Yang",
    "email": "shawn.ck.yang@gmail.com",
    "time": "Sat Nov 14 09:50:03 2026 +0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sat Nov 14 07:20:03 2026 +0530"
  },
  "message": "chore: update release references to 1.7.8 (#4225)\n\nUpdate installation guides, package READMEs and examples to use the\npublished Apache Fory 1.7.8 release. Add the 1.7.8 entries to the Dart\nchangelogs and update their development-cycle notes.\n\nThe existing 1.8.0 development package versions remain current for main.\nBenchmark provenance and Android integration-test snapshot references\nretain their recorded development versions.\n\nThe Flutter smoke app now imports `widgets.dart` for its basic widgets.\nFlutter 3.50 deprecated the previous Material import, which caused\n`flutter analyze` to fail after the serialization test passed.\n\nValidation: reviewed the version-reference changes, checked for\nremaining 1.7.7 installation references and accidental SNAPSHOT\ninstallation examples, formatted changed Markdown and YAML with\nPrettier, and passed `git diff --check`. Latest-head CI passed,\nincluding the Flutter serialization test, analysis and Linux AOT build,\ncross-language tests, native-image tests, integration tests and wheel\nbuilds. Local Flutter was unavailable; Flutter validation ran in CI.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c83f87ddca90736b2a5f959f67557101c9b28547",
      "old_mode": 33188,
      "old_path": ".github/workflows/ci.yml",
      "new_id": "5dc8ff3341406526dfd017afc71c8ac2c3718023",
      "new_mode": 33188,
      "new_path": ".github/workflows/ci.yml"
    },
    {
      "type": "modify",
      "old_id": "22dc0110d8babb0c7e16911f76e86f1f58bfcb53",
      "old_mode": 33188,
      "old_path": "README.md",
      "new_id": "e6eb77d724e77413af5f2cbc04b935973cd428be",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "modify",
      "old_id": "933e48e0c95778c8b4342407cc4c63fd96fec388",
      "old_mode": 33188,
      "old_path": "csharp/README.md",
      "new_id": "32a4864827a50fdb65515410f55a48b7c5048755",
      "new_mode": 33188,
      "new_path": "csharp/README.md"
    },
    {
      "type": "modify",
      "old_id": "2cfbc34e42d9d985780f32b42a40b8a12df64500",
      "old_mode": 33188,
      "old_path": "dart/CHANGELOG.md",
      "new_id": "2487d17e9cea92cf58bee26e2c1977411e60b12f",
      "new_mode": 33188,
      "new_path": "dart/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "733c1bf43873f36d549eaa6e0a126ba75f70f5b1",
      "old_mode": 33188,
      "old_path": "dart/packages/fory/CHANGELOG.md",
      "new_id": "749b402d1b93765528f46cfa12150a664bb5aea7",
      "new_mode": 33188,
      "new_path": "dart/packages/fory/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "4515a6ef22a9a68916641c50e69f7968928b6860",
      "old_mode": 33188,
      "old_path": "dart/packages/fory/README.md",
      "new_id": "4d04760796c0b31cd44d5aceeb5f457edec29ebd",
      "new_mode": 33188,
      "new_path": "dart/packages/fory/README.md"
    },
    {
      "type": "modify",
      "old_id": "56dbdd39e05d59d2ad1a086648ef3fb180acf8d0",
      "old_mode": 33188,
      "old_path": "docs/compiler/build-integration.md",
      "new_id": "055781a3b957927f760e10114cb4073ed3b1ea7e",
      "new_mode": 33188,
      "new_path": "docs/compiler/build-integration.md"
    },
    {
      "type": "modify",
      "old_id": "70c135f13005d1ac42b900858428980c24ecbff8",
      "old_mode": 33188,
      "old_path": "docs/compiler/cli.md",
      "new_id": "536e37570c431968e3cab68bd0ce97d4931fb579",
      "new_mode": 33188,
      "new_path": "docs/compiler/cli.md"
    },
    {
      "type": "modify",
      "old_id": "00121bce1095fcc81e1d60195ae93fcdd2fed851",
      "old_mode": 33188,
      "old_path": "docs/grpc/csharp.md",
      "new_id": "6fe9f91f02ba45b5c01ce30f684af03e24d7d2be",
      "new_mode": 33188,
      "new_path": "docs/grpc/csharp.md"
    },
    {
      "type": "modify",
      "old_id": "8a94a64980e965c3f4de8c03a51383101762453d",
      "old_mode": 33188,
      "old_path": "docs/grpc/dart.md",
      "new_id": "1bcbdf2fa81a1c42f727679887a0c1d5048ba49e",
      "new_mode": 33188,
      "new_path": "docs/grpc/dart.md"
    },
    {
      "type": "modify",
      "old_id": "7f67b7ca53d23eb0d889818e644e73fdd63daa0d",
      "old_mode": 33188,
      "old_path": "docs/grpc/rust.md",
      "new_id": "29bdeab770bb3e6c1f125ebdd549f9b41f11e04c",
      "new_mode": 33188,
      "new_path": "docs/grpc/rust.md"
    },
    {
      "type": "modify",
      "old_id": "72b2dc4cd401b9823d194f532e871556646721b9",
      "old_mode": 33188,
      "old_path": "docs/json/getting-started.md",
      "new_id": "71c0f4585be9f7184db0a85647f085d06b8afc0c",
      "new_mode": 33188,
      "new_path": "docs/json/getting-started.md"
    },
    {
      "type": "modify",
      "old_id": "efabbc4d7da1eca1ba52634f1205fbf549e7ac07",
      "old_mode": 33188,
      "old_path": "docs/json/kotlin.md",
      "new_id": "9e1bf2aad2b6dd8616c07660f30967981574ac7e",
      "new_mode": 33188,
      "new_path": "docs/json/kotlin.md"
    },
    {
      "type": "modify",
      "old_id": "2fc1509cb9988bf7a1008b536bcb1ec8bc5a75cb",
      "old_mode": 33188,
      "old_path": "docs/json/scala.md",
      "new_id": "918e204734ffd5654ea295f6130d9cfd278c75a5",
      "new_mode": 33188,
      "new_path": "docs/json/scala.md"
    },
    {
      "type": "modify",
      "old_id": "4a3a8d08c2efdba6d0ea58fcc50e16e64e56dd6e",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/cpp/index.md",
      "new_id": "3b8fabcda4c7915691896312413cf26a8f9c1294",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/cpp/index.md"
    },
    {
      "type": "modify",
      "old_id": "cae6940335020fb8846660db11888ef569b88cf6",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/csharp/index.md",
      "new_id": "785349a1866b777dc2c590cb97e78cf262743e26",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/csharp/index.md"
    },
    {
      "type": "modify",
      "old_id": "072ac42620d02c1279d0d29ea7469a29303f9f18",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/dart/index.md",
      "new_id": "2e1882fa99b2e4a99c29a37901c677bb1053b40a",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/dart/index.md"
    },
    {
      "type": "modify",
      "old_id": "41a0134364efe531f61bbaaecd2a2436df199a9d",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/java/index.md",
      "new_id": "776c42de70496ff8f4c71842d8c304fd2d5fa8f4",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/java/index.md"
    },
    {
      "type": "modify",
      "old_id": "894ae92503e8251e96c1b00291d7992513ab8f9b",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/kotlin/index.md",
      "new_id": "72980aa063ae94fd0efa909dbdff42cf065a9b5c",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/kotlin/index.md"
    },
    {
      "type": "modify",
      "old_id": "61fba502e486d78637e3d9ffb39233e798a683ee",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/rust/basic-serialization.md",
      "new_id": "e50802f7040e3d328f3d8fe27cf2bfcd46af45a9",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/rust/basic-serialization.md"
    },
    {
      "type": "modify",
      "old_id": "37632e35117d9856c52aec024199d288524418bd",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/rust/index.md",
      "new_id": "a79843a7b090add655eb548570b30ad08d8b3752",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/rust/index.md"
    },
    {
      "type": "modify",
      "old_id": "2aecbbf8e9f7ca64da6199be93b80c187b241dc5",
      "old_mode": 33188,
      "old_path": "docs/object-serialization/scala/index.md",
      "new_id": "2a75a0e762f5e521fd53d37c4f2abe1d43fd9956",
      "new_mode": 33188,
      "new_path": "docs/object-serialization/scala/index.md"
    },
    {
      "type": "modify",
      "old_id": "cb9f57560dbfbbbd58b7f37d5bcfe1415289efe4",
      "old_mode": 33188,
      "old_path": "docs/row-format/java.md",
      "new_id": "0363ceea66958ebf753e9f4a78b506695a12cddc",
      "new_mode": 33188,
      "new_path": "docs/row-format/java.md"
    },
    {
      "type": "modify",
      "old_id": "4dc8d7c3d33d9027136419602308e5681a54b996",
      "old_mode": 33188,
      "old_path": "docs/start/cpp.md",
      "new_id": "e62f328ff02814571b13023ff3e2ff860182110a",
      "new_mode": 33188,
      "new_path": "docs/start/cpp.md"
    },
    {
      "type": "modify",
      "old_id": "b0b37344345babd1e440e5aaa181dc11bfdd6fb1",
      "old_mode": 33188,
      "old_path": "docs/start/csharp.md",
      "new_id": "83bed24151f532dabb73f96022de4ac090b88ec6",
      "new_mode": 33188,
      "new_path": "docs/start/csharp.md"
    },
    {
      "type": "modify",
      "old_id": "34a5ae1febed000519653ed76236cc9421066173",
      "old_mode": 33188,
      "old_path": "docs/start/dart.md",
      "new_id": "2ec0f288c17a3c29ee6ffa3cee41aa3a8ea25910",
      "new_mode": 33188,
      "new_path": "docs/start/dart.md"
    },
    {
      "type": "modify",
      "old_id": "d9deb503b62801186fc0b32f860b669c64322710",
      "old_mode": 33188,
      "old_path": "docs/start/go.md",
      "new_id": "d7fcc5e2219de3f6f91db6f5205281820a4a092c",
      "new_mode": 33188,
      "new_path": "docs/start/go.md"
    },
    {
      "type": "modify",
      "old_id": "8912b9d0643c5a2af870fbcff60d373335d85d38",
      "old_mode": 33188,
      "old_path": "docs/start/java.md",
      "new_id": "dd0b3e1ebe645b77c01e5119d504c166421e8ba6",
      "new_mode": 33188,
      "new_path": "docs/start/java.md"
    },
    {
      "type": "modify",
      "old_id": "b1b926d8def1864493912c22a2fd69d97b5c94df",
      "old_mode": 33188,
      "old_path": "docs/start/javascript.md",
      "new_id": "1829d06f6260521900b4f3c40fdd68a1a1bc387e",
      "new_mode": 33188,
      "new_path": "docs/start/javascript.md"
    },
    {
      "type": "modify",
      "old_id": "1ad5c966b5322ca62fe9e7802ba8ca61092bff72",
      "old_mode": 33188,
      "old_path": "docs/start/kotlin.md",
      "new_id": "2b94791d0c1d2c6549718c9b4cac6ebc7c70fd38",
      "new_mode": 33188,
      "new_path": "docs/start/kotlin.md"
    },
    {
      "type": "modify",
      "old_id": "3c78c88275b3d5d6bf945165e914f6ddb19157d5",
      "old_mode": 33188,
      "old_path": "docs/start/python.md",
      "new_id": "99c5f000b0a9eb0e46d2c2790482fa8d453b4c33",
      "new_mode": 33188,
      "new_path": "docs/start/python.md"
    },
    {
      "type": "modify",
      "old_id": "85c2ff62ebc79fd1d88bfe92f0fdf92798d07917",
      "old_mode": 33188,
      "old_path": "docs/start/rust.md",
      "new_id": "12b93d65aaa912be3c16440c1393afae4cff847e",
      "new_mode": 33188,
      "new_path": "docs/start/rust.md"
    },
    {
      "type": "modify",
      "old_id": "5e785a0f501e22cdb3fddc558bb5898c8b83fdd9",
      "old_mode": 33188,
      "old_path": "docs/start/scala.md",
      "new_id": "2d6e2f2fd29857646cc83086adc967f6d08cfc49",
      "new_mode": 33188,
      "new_path": "docs/start/scala.md"
    },
    {
      "type": "modify",
      "old_id": "97885c8868aa210808fc79df8387654ea1ed1381",
      "old_mode": 33188,
      "old_path": "docs/start/swift.md",
      "new_id": "240164d86ac5efc79bd037923fce784c182714e4",
      "new_mode": 33188,
      "new_path": "docs/start/swift.md"
    },
    {
      "type": "modify",
      "old_id": "f21845f2aea8cc5c89a18683b4270aace04d9e65",
      "old_mode": 33188,
      "old_path": "examples/cpp/hello_row/MODULE.bazel.example",
      "new_id": "8a033ccf203bd702ed169ab61c2a1ad36eb97cd6",
      "new_mode": 33188,
      "new_path": "examples/cpp/hello_row/MODULE.bazel.example"
    },
    {
      "type": "modify",
      "old_id": "7ed3f2681052ecff172b384364cc196abd08bb7a",
      "old_mode": 33188,
      "old_path": "examples/cpp/hello_row/README.md",
      "new_id": "3fe133aaaaf6ac29829ffde475f73f4639d727fa",
      "new_mode": 33188,
      "new_path": "examples/cpp/hello_row/README.md"
    },
    {
      "type": "modify",
      "old_id": "f21845f2aea8cc5c89a18683b4270aace04d9e65",
      "old_mode": 33188,
      "old_path": "examples/cpp/hello_world/MODULE.bazel.example",
      "new_id": "8a033ccf203bd702ed169ab61c2a1ad36eb97cd6",
      "new_mode": 33188,
      "new_path": "examples/cpp/hello_world/MODULE.bazel.example"
    },
    {
      "type": "modify",
      "old_id": "3190cba317a76728476c6a4d312cf7a4c791dbdc",
      "old_mode": 33188,
      "old_path": "examples/cpp/hello_world/README.md",
      "new_id": "f6109b3cb0a3aa334ce48d05288cdd4d7e80b412",
      "new_mode": 33188,
      "new_path": "examples/cpp/hello_world/README.md"
    },
    {
      "type": "modify",
      "old_id": "5f1cf90ddfd4c92aba26e4122ff789afe81a67fb",
      "old_mode": 33188,
      "old_path": "java/README.md",
      "new_id": "1cb06be7d48b7fc8c7d99e389fa71bae05212593",
      "new_mode": 33188,
      "new_path": "java/README.md"
    },
    {
      "type": "modify",
      "old_id": "b325d7ab7af59cd452d98570599aaec049c7328f",
      "old_mode": 33188,
      "old_path": "java/fory-json/README.md",
      "new_id": "5bc53fc06d7ea5c7b87650a9de3eddadea368e5a",
      "new_mode": 33188,
      "new_path": "java/fory-json/README.md"
    },
    {
      "type": "modify",
      "old_id": "607f8aa6b36c0b31c32ac82fa628195f122391f3",
      "old_mode": 33188,
      "old_path": "kotlin/fory-json-kotlin-ksp/README.md",
      "new_id": "f66bef8879f9205619378ae3132400f56b931a30",
      "new_mode": 33188,
      "new_path": "kotlin/fory-json-kotlin-ksp/README.md"
    },
    {
      "type": "modify",
      "old_id": "ff3575920896fc501e9cecaa085f408577c3b0b7",
      "old_mode": 33188,
      "old_path": "kotlin/fory-json-kotlin/README.md",
      "new_id": "bd91f8a7ca2e7ab238e2a956fa9f6daaf48f2ad1",
      "new_mode": 33188,
      "new_path": "kotlin/fory-json-kotlin/README.md"
    },
    {
      "type": "modify",
      "old_id": "7b3f9bb23278038c973a38f718a1a6f06c7952a6",
      "old_mode": 33188,
      "old_path": "rust/README.md",
      "new_id": "fda1752e9429b93bc3fb9a711112df8ec5ff5920",
      "new_mode": 33188,
      "new_path": "rust/README.md"
    },
    {
      "type": "modify",
      "old_id": "bc6d718986e56a831dae10fdc1101cbdc12ae8b7",
      "old_mode": 33188,
      "old_path": "scala/fory-json-scala/README.md",
      "new_id": "7a3fb303b3218fe6daf5de9984eb1c756f50a9b3",
      "new_mode": 33188,
      "new_path": "scala/fory-json-scala/README.md"
    },
    {
      "type": "modify",
      "old_id": "576890f33b40eb9d1fe5aab58c56521a376ec435",
      "old_mode": 33188,
      "old_path": "scala/fory-scala/README.md",
      "new_id": "2e48c8ecf9d9f45f57b3dcd22ceb8d8d1ffbb5f0",
      "new_mode": 33188,
      "new_path": "scala/fory-scala/README.md"
    },
    {
      "type": "modify",
      "old_id": "6788ca974c120c0c2bc87e946eb396686cb47932",
      "old_mode": 33188,
      "old_path": "swift/README.md",
      "new_id": "f6218da7149dac928e77700d77351dadaf8aba90",
      "new_mode": 33188,
      "new_path": "swift/README.md"
    }
  ]
}
