)]}'
{
  "log": [
    {
      "commit": "312cef913cb10a91fcb41ff1fd73f8654b7cff9f",
      "tree": "5422e02a52d0f17fa3884cd7e12e73e336ecd4c0",
      "parents": [
        "6e105bf035a0581a977a0558679be802c58982d9"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Sun Nov 23 12:35:09 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Tue Dec 16 23:11:24 2025 +0100"
      },
      "message": "Updated Java keys for cross-platform tests\n\nThe truststore and keystore were regenerated using keys in test/keys:\n\n    # keytool does not support \"replace\" operation:\n    keytool -delete \\\n        -alias localhost \\\n        -keystore lib/java/src/crossTest/resources/.truststore \\\n        -storepass thrift\n    keytool -import \\\n        -alias localhost \\\n        -file test/keys/CA.pem \\\n        -keystore lib/java/src/crossTest/resources/.truststore \\\n        -storepass thrift\n\n    # server keystore\n    keytool -importkeystore \\\n        -srckeystore test/keys/server.p12 \\\n        -srcstoretype PKCS12 \\\n        -srcstorepass thrift \\\n        -destkeystore lib/java/src/crossTest/resources/.serverkeystore \\\n        -deststoretype pkcs12 \\\n        -deststorepass thrift\n\n    # client keystore\n    keytool -importkeystore \\\n        -srckeystore test/keys/client.p12 \\\n        -srcstoretype PKCS12 \\\n        -srcstorepass thrift \\\n        -destkeystore lib/java/src/crossTest/resources/.clientkeystore \\\n        -deststoretype pkcs12 \\\n        -deststorepass thrift\n\nJava tests were updated to use separate keystores for client and server.\n"
    },
    {
      "commit": "8922f17d591613dcdafade06467ad439cda262fd",
      "tree": "b81baad9a766fdc6e3e793fa769ac513848c25e2",
      "parents": [
        "a32990df27c16de47425ba64e01fc7eeb71d2385"
      ],
      "author": {
        "name": "Christopher Tubbs",
        "email": "ctubbsii@apache.org",
        "time": "Tue Sep 17 20:42:24 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 17 20:42:24 2024 -0400"
      },
      "message": "Remove some gradle deprecation warnings (#3039)\n\nThese are trivial changes for the java/kotlin libraries.\r\n\r\n* Specify JUnit platform explicitly\r\n* Remove unused system property (build.test) from unit test environment\r\n  that relied on a deprecated task property (destinationDir)\r\n* Replace kotlinOptions.jvmTarget with compilerOptions replacement\r\n* Update README to avoid incorrect specification of gradle 8.0, when\r\n  other gradle 8 versions are acceptable"
    },
    {
      "commit": "6fefbf437c7392aa3a1be4eb1b32fb0e7ecb95db",
      "tree": "990ea5ff5c2826b2dc2e87154224c0f7c50d5e1e",
      "parents": [
        "6f339004e6c636d9ce7b114d351e9141edff5c17"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "Jimexist@users.noreply.github.com",
        "time": "Thu Apr 20 07:41:11 2023 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 20 07:41:11 2023 +0800"
      },
      "message": "Upgrade java mockito from version 1.x to version 5 (#2781)\n\n* use mockito 5\r\n\r\n* remove unnecessary flag\r\n\r\n* fix java annotation test file name"
    },
    {
      "commit": "be73a570e29dce424c8f20b5a31c21249303c5c3",
      "tree": "3fa31cb84d7ece8d5be6ec786338eb32ca3ebea8",
      "parents": [
        "79a4b1e9a36248b8350f637b38ad073f49c5fd8f"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "Jimexist@users.noreply.github.com",
        "time": "Fri Apr 14 11:02:43 2023 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 14 11:02:43 2023 +0800"
      },
      "message": "THRIFT-5699: java lib and build tool chain: gradle 8.0.2 (#2779)\n\n"
    },
    {
      "commit": "92b007fa888709a2808993d10a91b524fdf42bda",
      "tree": "32d2e37be11b43ad28907967b6167637cd6c8fe6",
      "parents": [
        "c2cccb6b67b6dd9e3a53eb91b5cc138cba4d5415"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "Jimexist@users.noreply.github.com",
        "time": "Fri Oct 14 13:16:18 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 14 13:16:18 2022 +0800"
      },
      "message": "java to use jdk 17 (#2686)\n\n"
    },
    {
      "commit": "5b158389b01d028e98e59f0ea41c01d625a84242",
      "tree": "7f8da5c4f388d25f9949952bb566baf6b6fdb1a2",
      "parents": [
        "dae1437ca03834527b654cf5bc8d7f41c9412a20"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "Jimexist@users.noreply.github.com",
        "time": "Thu May 12 00:20:37 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 11 12:20:37 2022 -0400"
      },
      "message": "THRIFT-5581: use gradle 7 for java/kotlin (#2601)\n\n* upgrade gradle version to 7.4\r\n* migrate from `maven` plugin to `maven-publish` plugin as required for Gradle 7\r\n* add guard to ktfmt, since it can\u0027t run with JDK 8\r\n\r\nCo-authored-by: Christopher Tubbs \u003cctubbsii@apache.org\u003e"
    },
    {
      "commit": "0c9c9df7637154029a88ca6923e1fc2c0a9fd188",
      "tree": "02f4af68bb31c171fa6e1d0ce6b1db77f3edccaf",
      "parents": [
        "ada086529730b13eedb74a975db5167f405d18af"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "Jimexist@users.noreply.github.com",
        "time": "Fri May 06 03:30:52 2022 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 05 15:30:52 2022 -0400"
      },
      "message": "THRIFT-5560: use JUnit 5 for all Java lib tests (#2574)\n\n"
    },
    {
      "commit": "eac5103f8204021f7b5436001319c2b17ed5644f",
      "tree": "22610465f5927c466b2e9baa87e55fe116347c6c",
      "parents": [
        "8987820e84ac26392293ab40480cf8f2971fb314"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "jiayu.liu@airbnb.com",
        "time": "Fri Mar 11 04:55:13 2022 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Apr 20 23:37:58 2022 +0200"
      },
      "message": "THRIFT-5545: use gradle convention in organizing java project\nClient: java\nPatch: Jiayu Liu\n\nThis closes #2546\n"
    },
    {
      "commit": "1eb361a89372b8676a5f48c2ee4038f6d2d8b4b7",
      "tree": "dd63293e9d5ae5af5e57844fe4bd5bcbcbc7ed8a",
      "parents": [
        "2e0a80599897a57e05127b28640a1b5956ba744d"
      ],
      "author": {
        "name": "Jiayu Liu",
        "email": "jiayu@hey.com",
        "time": "Mon Feb 21 13:36:44 2022 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sat Apr 16 09:58:32 2022 +0200"
      },
      "message": "THRIFT-5521: [java gen] use jdk8 option type in java generator code\nClient: Java\nPatch: Jiayu Liu\n\nThis closes #2525\n"
    },
    {
      "commit": "7004a61e44fe538805b44c3fb66bd5cb872548d4",
      "tree": "51b717fe01b179397b28ff02e6115cc51eb0d224",
      "parents": [
        "f92493b8574a00830d665c5bfac7e0a8175bcb4f"
      ],
      "author": {
        "name": "Alex Volanis",
        "email": "alexvolanis@gmail.com",
        "time": "Wed Jan 24 10:30:13 2018 -0500"
      },
      "committer": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Wed Jan 24 12:28:55 2018 -0500"
      },
      "message": "THRIFT-(1418|1507|3983|4120|4178|4259|4294): Multiple issues\nClient: java\n\nTHRIFT-4294: Java Configure Fails for Ant \u003e\u003d 1.10\nTHRIFT-4259: Thrift does not compile due to Ant Maven task errors\nTHRIFT-4178: Java libraries missing from package when using cmake\nTHRIFT-3983: libthrift is deployed on central with pom packaging\n             instead of jar\nTHRIFT-1507: Maven can\u0027t download resource from central when behind\n             a proxy and won\u0027t use local repository\nTHRIFT-1418: Compiling Thrift from source: Class\n             org.apache.tools.ant.taskdefs.ConditionTask doesn\u0027t\n             support the nested \"typefound\" element\n\nRefactor CMake install hook to allow using \"sudo make install/fast\"\nwhich avoids the THRIFT-1507 and THRIFT-1418 issues.\n\nNew Gradle based build system for Thrift Java Library\n\n* Add Gradle 4.4.1 Wrapper artifacts to enable builds\nUsing the Gradle Wrapper helps normalize the builds on all platforms\nso we use a consistent build tool independent of package managers.\n\nThe Gradle build logic was partitioned into multiple specific\nscripts to simplify understanding and maintenance of the build.\n\nThis is now hooked into CMake and Autoconf processing steps\nand can build/test/publish to Maven. The README.md was updated\nto illustrate the new build options and add some documentation\non the requirements for Maven publication.\n\nCleaned up the CMake files to reduce reliance on file globbing\nwhich is known to cause confusion when multiple users contribute.\n\n* Fix two minor issues in Javadoc and unit test\n\nReturn values were undeclared in Javadoc\nTest was asserting on the wrong test object instance\n\n* Create simple runner scripts for cross-check\n\nUsing Gradle as a java execution wrapper is too heavy.\nI simplified the test client/server execution by using a\nthree generated scripts in the build directory direcly\ncallable by the cross-check test harness.\n\n* Cleanup the remaining Ant build scripts\n\nPulled the Maven Ant task properties out of the Java build\nsince they are no longer used there.\nDeleted the no longer used build.xml and build.properties\nfiles from the Java build.\nMade each Ant build own the Maven Ant task details in their\nbuild.properties file.\n\n* Fix the build issue with Java SSL in the ubuntu-trusty container\n\nThe latest Trusty JDK7 builds seem to have encountered this issue\nbecause the OpenJDK removed the SunEC algorithms.\n\n* Update the developer info as requested in review\n\nUse the generic Apache Thrift developer list for contact information\n\n* Add Clover Code coverage for easy access by developers\n\nClover plugin for Gradle was applied and configured which enables\ncode coverage reports to be available on demand via a command line\noption. The documentation in the README.md was enhanced to give\nthe details of this change and how to take advantage of it.\n"
    }
  ]
}
