)]}'
{
  "log": [
    {
      "commit": "a635e68257bb4ddd7b0a4210a0d01d41cae14452",
      "tree": "1d1bae8e04f88c563cebb412ea7c1660a303e25b",
      "parents": [
        "eb6eb85c45e823b33a5bb5368f29cebb9db1a8dc"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Wed Nov 19 18:52:54 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sun Dec 14 23:20:25 2025 +0100"
      },
      "message": "Removed base64 and added logger as an explicit add_dependency\n\nStarting with Ruby 3.4, base64 is no longer a bundled gem, and now Thrift does not load in modern Ruby versions:\n\n    An error occurred while loading ./spec/types_spec.rb.\n\n    Failure/Error: require \u0027base64\u0027\n\n    LoadError:\n      cannot load such file -- base64\n    # ./lib/thrift/protocol/json_protocol.rb:21:in \u0027\u003ctop (required)\u003e\u0027\n    # ./lib/thrift.rb:45:in \u0027\u003ctop (required)\u003e\u0027\n    # ./spec/spec_helper.rb:30:in \u0027\u003ctop (required)\u003e\u0027\n    # ./spec/types_spec.rb:20:in \u0027\u003ctop (required)\u003e\u0027\n\nRuby already has ability to serialize and deserialize base64 without requiring the base64 gem,\nwhich is a thin wrapper for syntactic sugar.\n\nAdditionally, the code throws a warning at the moment, which will become an error in Ruby 3.5:\n\n    /code/lib/thrift/processor.rb:20: warning: logger was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.5.0.\n    You can add logger to your Gemfile or gemspec to silence this warning.\n\nAdded logger as an explicit dependency to avoid this warning.\n"
    },
    {
      "commit": "eb6eb85c45e823b33a5bb5368f29cebb9db1a8dc",
      "tree": "c6865ca3a7c61c6c16aa7f44984495803fd7881d",
      "parents": [
        "497c1dd82e8c597927f40e376738981d6582aef1"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Sat Nov 22 20:03:19 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sun Dec 14 23:17:57 2025 +0100"
      },
      "message": "Fixed Thrift::TypeError exception in specs\n\nAn error occurs while running specs, that changes the behavior of the system under test, leading to false positive:\n\n   NonblockingServer\n   Thrift::NonblockingServer\n   #\u003cThread:0x0000ffff67b9f138 /code/lib/rb/spec/nonblocking_server_spec.rb:147 run\u003e terminated with exception (report_on_exception is true):\n   /code/lib/rb/lib/thrift/types.rb:69:in \u0027Thrift.check_type\u0027: Expected Types::DOUBLE, received Integer for field seconds (Thrift::TypeError)\n          from /code/lib/rb/lib/thrift/struct.rb:157:in \u0027block in SpecNamespace::NonblockingService::Sleep_args#field_accessor\u0027\n          from /code/lib/rb/lib/thrift/client.rb:41:in \u0027block in Thrift::Client#send_message_args\u0027\n          from /code/lib/rb/lib/thrift/client.rb:40:in \u0027Hash#each\u0027\n          from /code/lib/rb/lib/thrift/client.rb:40:in \u0027Thrift::Client#send_message_args\u0027\n          from /code/lib/rb/lib/thrift/client.rb:30:in \u0027Thrift::Client#send_message\u0027\n          from /code/lib/rb/spec/gen-rb/nonblocking_service.rb:75:in \u0027SpecNamespace::NonblockingService::Client#send_sleep\u0027\n          from /code/lib/rb/spec/gen-rb/nonblocking_service.rb:70:in \u0027SpecNamespace::NonblockingService::Client#sleep\u0027\n          from /code/lib/rb/spec/nonblocking_server_spec.rb:160:in \u0027block in RSpec::ExampleGroups::NonblockingServer::ThriftNonblockingServer#setup_client_thread\u0027\n   should kill active messages when they don\u0027t expire while shutting down\n\nWhen an integer 10 is sent to \"sleep\", instead of actually sleeping an error happens, and the method never called, leading to no record of the method execution recorded in the result. Which is the same expectation is if the method call was aborted in the middle.\n"
    },
    {
      "commit": "497c1dd82e8c597927f40e376738981d6582aef1",
      "tree": "df728263c14b37e6c0576a3ba6555e96bc43fcbf",
      "parents": [
        "b940d1229b2bb2faf4307489bbf9e705e57633b9"
      ],
      "author": {
        "name": "Sutou Kouhei",
        "email": "kou@clear-code.com",
        "time": "Fri Aug 08 16:19:10 2025 +0900"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Dec 11 23:10:08 2025 +0100"
      },
      "message": "THRIFT-3268: Suppress gnu-zero-variadic-macro-arguments warnings\n\nClient: cpp\n\nWe can reproduce these warnings by:\n\n    CC\u003dclang CXX\u003dclang++ \\\n      cmake \\\n        -S . \\\n        -B ../thrift.build \\\n        -DWITH_{AS3,JAVA,JAVASCRIPT,NODEJS,PYTHON,C_GLIB}\u003dOFF \\\n        -DCMAKE_CXX_FLAGS\u003d\"-Wgnu-zero-variadic-macro-arguments\"\n    cmake --build ../thrift.build\n\nSample warning:\n\n    lib/cpp/src/thrift/TLogging.h:119:13: warning: token pasting of \u0027,\u0027 and __VA_ARGS__ is a GNU extension [-Wgnu-zero-variadic-macro-arguments]\n      119 |             ##__VA_ARGS__);                                                                        \\\n          |             ^\n"
    },
    {
      "commit": "b940d1229b2bb2faf4307489bbf9e705e57633b9",
      "tree": "991bc3580ad3bb64c1f0b13503c1919c68fc7770",
      "parents": [
        "230d0a96a2757b978545ebc4b2969a987476b846"
      ],
      "author": {
        "name": "dengzh",
        "email": "dengzhhu653@gmail.com",
        "time": "Mon May 26 09:01:02 2025 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Dec 11 23:08:48 2025 +0100"
      },
      "message": "THRIFT-5863: Make TServerTransport able to customize the max message size\n"
    },
    {
      "commit": "230d0a96a2757b978545ebc4b2969a987476b846",
      "tree": "e794dd489316111eb5c031523d8e69c378f1019f",
      "parents": [
        "56f9772a2663c4113de006122a1d096afe107ebd"
      ],
      "author": {
        "name": "Shaoyu Zhang",
        "email": "zsy056@users.noreply.github.com",
        "time": "Wed Nov 12 00:08:50 2025 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Dec 10 23:46:25 2025 +0100"
      },
      "message": "Refresh windows docker setup\n"
    },
    {
      "commit": "56f9772a2663c4113de006122a1d096afe107ebd",
      "tree": "1fdb97b68c0da235300b459adfce3c284b715c49",
      "parents": [
        "1eaa9a41f0aa1c3ef9d61a3269ac2a00eeae2f0a"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Tue Nov 25 14:49:23 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Dec 10 23:45:49 2025 +0100"
      },
      "message": "Inconsistent UUID constants compilation for aliased types\nFor aliased types, UUID constants retain their curly braces, while\ndirect UUID constants do not:\n\n    typedef uuid myUUID\n    const uuid GEN_UUID \u003d  \u002700000000-4444-CCCC-ffff-0123456789ab\u0027\n    const uuid GEN_GUID \u003d \u0027{00112233-4455-6677-8899-aaBBccDDeeFF}\u0027\n    const myUUID MY_UUID \u003d  \u002700000000-4444-CCCC-ffff-0123456789ab\u0027\n    const myUUID MY_GUID \u003d \u0027{00112233-4455-6677-8899-aaBBccDDeeFF}\u0027\n\nWhen uuid is compiled, it produces a string without curly braces, but\nfor alias myUUID the curly braces stay:\n\n    GEN_UUID \u003d %q\"00000000-4444-CCCC-ffff-0123456789ab\"\n    GEN_GUID \u003d %q\"00112233-4455-6677-8899-aaBBccDDeeFF\"\n    MY_UUID \u003d %q\"00000000-4444-CCCC-ffff-0123456789ab\"\n    MY_GUID \u003d %q\"{00112233-4455-6677-8899-aaBBccDDeeFF}\"\n\nThis change ensures that the type is properly resolved to its true type\nbefore validation, resulting in consistent handling of UUID constants\nregardless of whether they are defined using the base type or an alias.\n"
    },
    {
      "commit": "1eaa9a41f0aa1c3ef9d61a3269ac2a00eeae2f0a",
      "tree": "2f63f5bdd234136dd14cf0be70588eccd07995e1",
      "parents": [
        "dee782f410c5d20ceb745d2b840ce447f6d4b7b1"
      ],
      "author": {
        "name": "Martin Haimberger",
        "email": "martin.haimberger@gmail.com",
        "time": "Fri Nov 28 23:21:06 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Dec 10 22:57:59 2025 +0100"
      },
      "message": "- THRIFT-5712 - Added Dart 3 Compatibility\n"
    },
    {
      "commit": "dee782f410c5d20ceb745d2b840ce447f6d4b7b1",
      "tree": "5d387d19481f4154d2ae0f0304d86d1d844deea3",
      "parents": [
        "c630d8fb043fc45554c18602e97023feda2d12fc"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 13:18:53 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Dec 10 22:53:01 2025 +0100"
      },
      "message": "THRIFT-5885 Fix enum generation\nClient: py\nPatch: Carel Combrink\n\nThis closes #3232\n"
    },
    {
      "commit": "c630d8fb043fc45554c18602e97023feda2d12fc",
      "tree": "7fcabef79f6e2a45021b781f0e57a0d751229499",
      "parents": [
        "5cb828f4b1a61357894f58f1dbbe429972c914a6"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Fri Nov 21 21:35:02 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Dec 10 22:04:46 2025 +0100"
      },
      "message": "Updated gemspec to include metadata (repository, changelog), and cleaned deprecated properties\n\nRemoved deprecated rubyforge_project property\n  WARNING:  rubyforge_project\u003d is deprecated and ignored. Please remove this from your gemspec to ensure that your gem continues to build in the future.\n  WARNING:  See https://guides.rubygems.org/specification-reference/ for help\n\nAdded metadata fields, displayed on the RubyGems page. See https://rubygems.org/gems/activeadmin for example:\n  - source_code_uri\n  - changelog_uri\n  - bug_tracker_uri\n  - documentation_uri\n  - mailing_list_uri\n  - homepage_uri\n\n[skip ci]\n"
    },
    {
      "commit": "5cb828f4b1a61357894f58f1dbbe429972c914a6",
      "tree": "f8bb64a8f3b4d8503d12f509eb41a3862dd72211",
      "parents": [
        "5c2183db399fdf72d4aab7eb5a4bdb4c82c2d2a0"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Wed Nov 19 18:40:19 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Tue Dec 02 23:13:18 2025 +0100"
      },
      "message": "Rack response needs to be finished when returned from the Rack application\n\nThis merge request addresses the following test failures:\n\n```\n  1) Thrift::ThinHTTPServer::RackApplication 404 response receives a non-POST\n     Failure/Error: expect(last_response.status).to be 404\n\n       expected #\u003cInteger:809\u003e \u003d\u003e 404\n            got #\u003cInteger:1001\u003e \u003d\u003e 500\n\n       Compared using equal?, which compares object identity,\n       but expected and actual are not the same object. Use\n       `expect(actual).to eq(expected)` if you don\u0027t care about\n       object identity in this example.\n     # ./spec/thin_http_server_spec.rb:102:in \u0027block (3 levels) in \u003ctop (required)\u003e\u0027\n\n  2) Thrift::ThinHTTPServer::RackApplication 404 response receives a header other than application/x-thrift\n     Failure/Error: expect(last_response.status).to be 404\n\n       expected #\u003cInteger:809\u003e \u003d\u003e 404\n            got #\u003cInteger:1001\u003e \u003d\u003e 500\n\n       Compared using equal?, which compares object identity,\n       but expected and actual are not the same object. Use\n       `expect(actual).to eq(expected)` if you don\u0027t care about\n       object identity in this example.\n     # ./spec/thin_http_server_spec.rb:108:in \u0027block (3 levels) in \u003ctop (required)\u003e\u0027\n\n  3) Thrift::ThinHTTPServer::RackApplication 200 response status code 200\n     Failure/Error: expect(last_response.ok?).to be_truthy\n\n       expected: truthy value\n            got: false\n     # ./spec/thin_http_server_spec.rb:135:in \u0027block (3 levels) in \u003ctop (required)\u003e\u0027\n```\n\nFrom the [Rack documentation](https://rack.github.io/rack/2.2/Rack/Response.html),\n\n\u003e Your application’s call should end returning [Response#finish](https://rack.github.io/rack/2.2/Rack/Response.html#method-i-finish).\n\nAdditionally:\n* using identity checks on integers produces weird expectation \"expected #\u003cInteger:809\u003e \u003d\u003e 404\", which is not necessary. Switched to using `eq` matcher\n* `be_truthy` matcher is overly generic and identity matching on `true`/`false` is preferred: \"expected true\" output will be displayed on failure\n"
    },
    {
      "commit": "5c2183db399fdf72d4aab7eb5a4bdb4c82c2d2a0",
      "tree": "3c6b137cbdfb1e28f12920c0965b2715e6b51c31",
      "parents": [
        "9aa75fb5d5e96e8fb0b3afb38bcb057626f9b40b"
      ],
      "author": {
        "name": "Shaoyu Zhang",
        "email": "zsy056@users.noreply.github.com",
        "time": "Thu Nov 13 13:21:07 2025 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Tue Dec 02 22:57:04 2025 +0100"
      },
      "message": "Make generated C++ code compilable with C++/CLI in MSVC\nClient: cpp\nPatch: Shaoyu Zhang\n\nThis closes #3234\n"
    },
    {
      "commit": "9aa75fb5d5e96e8fb0b3afb38bcb057626f9b40b",
      "tree": "4dfcb621a7a2f911e9cf10621018c2d93b48c9d1",
      "parents": [
        "d92b1ae5d53c65d5dc80caa9fe636fd82acb9c72"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Mon Dec 01 17:15:07 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Tue Dec 02 22:41:20 2025 +0100"
      },
      "message": "Commit Gemfile.lock for reproducible tests\n\nAddressed a syntax error in the thrift.gemspec, and committed\nGemfile.lock files for both the gem and tests. Gems source switched\nto https://rubygems.org.\n\nThis is a strongly recommended approach according to the Bundler team:\n\n\u003e As a result, you SHOULD check your Gemfile.lock into version control,\n\u003e in both applications and gems. If you do not, every machine that\n\u003e checks out your repository (including your production server) will\n\u003e resolve all dependencies again, which will result in different\n\u003e versions of third-party code being used if any of the gems in the\n\u003e Gemfile(5) or any of their dependencies have been updated.\nhttps://bundler.io/man/bundle-install.1.html#THE-GEMFILE-LOCK\n\nAlso helps with Dependabot, which will be able to bump the lock file,\nwhile we can relax version requirements in the gemspec.\n"
    },
    {
      "commit": "d92b1ae5d53c65d5dc80caa9fe636fd82acb9c72",
      "tree": "fec1f7f46de4aa7f48833602b2e20eb9a3396360",
      "parents": [
        "4c5a7b047a124b52831c4942c03679c7e20a178f"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:16:46 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:16:46 2025 +0100"
      },
      "message": "Fix: Error: thrift/simple_server.go:27:2: \"net\" imported and not used\n"
    },
    {
      "commit": "4c5a7b047a124b52831c4942c03679c7e20a178f",
      "tree": "c8048f9c2e303fd816321cd2077e47c20ee4b2c8",
      "parents": [
        "3aab90213385d2911d9932effd84c7e8f35384cd"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:11:12 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:11:12 2025 +0100"
      },
      "message": "Fix Dependabot alert #132\n"
    },
    {
      "commit": "3aab90213385d2911d9932effd84c7e8f35384cd",
      "tree": "bec25d76f57f875cebc12cad1802161f1c62753e",
      "parents": [
        "cadf5117610517dcda71e4b86a6114e78a8d7e0b"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:09:07 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:09:07 2025 +0100"
      },
      "message": "Fix Dependabot alert #140\n"
    },
    {
      "commit": "cadf5117610517dcda71e4b86a6114e78a8d7e0b",
      "tree": "11501e148d7137a7189e5ea35fad1e1970baf08f",
      "parents": [
        "010027bbe77e2ad21e2ca58ebaa131b1279483f3"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:06:42 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 23:06:54 2025 +0100"
      },
      "message": "Fix Dependabot alert #132\n"
    },
    {
      "commit": "010027bbe77e2ad21e2ca58ebaa131b1279483f3",
      "tree": "df1c69d6d22d754093542116dc33e6c9a9e323b3",
      "parents": [
        "6d04f12df6d4a218410639a46b8d902b93f88244"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 22:57:08 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 22:57:33 2025 +0100"
      },
      "message": "Fix for Dependabot alerts #151 and #152\n"
    },
    {
      "commit": "6d04f12df6d4a218410639a46b8d902b93f88244",
      "tree": "53988b2005f8dcfb9b027a2219d2d91d95fa0e9e",
      "parents": [
        "4a21581f78c38ef5077cb8a0d8013727e4d56165"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Sun Nov 30 10:14:54 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:52:33 2025 +0100"
      },
      "message": "Fix CMake boost linking issue on AppVeyor MINGW\n"
    },
    {
      "commit": "4a21581f78c38ef5077cb8a0d8013727e4d56165",
      "tree": "acff354e4d5dbba406004910a96b36b16b530faf",
      "parents": [
        "d925d34911b49825727f035e47a9db627fd92e7d"
      ],
      "author": {
        "name": "Jun.S.Shen",
        "email": "jun.s.shen@oracle.com",
        "time": "Fri Nov 17 23:28:25 2023 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 22:40:03 2025 +0100"
      },
      "message": "enforce to close accepted connection after processing\nClient: go\nPatch: Jun.S.Shen \u003cjun.s.shen@oracle.com\n\nThis closes #2883\n"
    },
    {
      "commit": "d925d34911b49825727f035e47a9db627fd92e7d",
      "tree": "eefecbe740c47a5590a3282547c7be7248c4f307",
      "parents": [
        "be7a9e50eeea9315ea17b7fd21fa0a2e357fa402"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Sun Nov 30 17:29:12 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:33:35 2025 +0100"
      },
      "message": "Fix spurious wakeups in ThreadManager test sleep\n\nThe ThreadManager load test used Monitor::wait() to sleep, which can return early on spurious wakeups. That occasionally produced zero-duration tasks and tripped the `delta \u003e 0` assertion in CI. Switching the test helper to `std::this_thread::sleep_for` makes the sleep deterministic and stops the intermittent assertion failure.\n"
    },
    {
      "commit": "be7a9e50eeea9315ea17b7fd21fa0a2e357fa402",
      "tree": "ff56014fe5f0fcee5f5678f1238bf5b23c777892",
      "parents": [
        "1646c0492bf09a6a4dc7b7b02fd5d11e64007a7a"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Fri Nov 07 09:27:39 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:30:46 2025 +0100"
      },
      "message": "Put back Windows shared lib building\n"
    },
    {
      "commit": "1646c0492bf09a6a4dc7b7b02fd5d11e64007a7a",
      "tree": "d9fa10d114ffc974819ca64e2ef4f010896a3645",
      "parents": [
        "0835277ec274c300bf8935649132d623a93ab172"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 03 12:59:21 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:30:46 2025 +0100"
      },
      "message": "Moving the body of setManualOpenSSLInitialization() to the cpp file\n\nSee the comment made in here where it was suggested but never done: https://github.com/apache/thrift/pull/1714#issuecomment-2459192022\n"
    },
    {
      "commit": "0835277ec274c300bf8935649132d623a93ab172",
      "tree": "44c34d58946db49ba2b0d1f08b7a37375c9f3456",
      "parents": [
        "58d385eee256e5bd59ed1bc9e5e85aaf3e748cef"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 03 12:15:06 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:30:46 2025 +0100"
      },
      "message": "THRIFT-5898: Replace global variable with a singleton getter\nClient: cpp\n"
    },
    {
      "commit": "58d385eee256e5bd59ed1bc9e5e85aaf3e748cef",
      "tree": "136adeb16aa3dc6dd0f3d3da738f793de9a3d829",
      "parents": [
        "5b53b554a3ac6faff70081d541680fbcec55fbb7"
      ],
      "author": {
        "name": "zeshuai007",
        "email": "51382517@qq.com",
        "time": "Sat Aug 29 11:13:41 2020 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Mon Dec 01 22:17:49 2025 +0100"
      },
      "message": "Supplement Jsonprotocol module testcase\nClient: rb\nPatch: Zezeng Wang\n\nThis closes #2223\n"
    },
    {
      "commit": "5b53b554a3ac6faff70081d541680fbcec55fbb7",
      "tree": "5fbbb7a3494f6775c51034ddfda1661c9c90bef1",
      "parents": [
        "3364b4ac563872b40c91d7843f6d0971d84979ec"
      ],
      "author": {
        "name": "Hongxu Jia",
        "email": "hongxu.jia@windriver.com",
        "time": "Thu Nov 20 11:43:45 2025 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:13:30 2025 +0100"
      },
      "message": "support reproducible builds\n\nIn order to support reproducible builds [1], while using bison to generate\nsource code, add COMPILE_FLAGS --file-prefix-map [2] to remove build path\nprefix and source path prefix in the generated header file.\n\n[1] https://reproducible-builds.org/\n[2] https://cgit.git.savannah.gnu.org/cgit/bison.git/commit/?id\u003ddd878d18519689c7bbcd72de4c9f9e53085a3cbf\n\nSigned-off-by: Hongxu Jia \u003chongxu.jia@windriver.com\u003e\n"
    },
    {
      "commit": "3364b4ac563872b40c91d7843f6d0971d84979ec",
      "tree": "3f7957bdb5a6b01a501e8789853f4ae865621044",
      "parents": [
        "724b038b9fbd81a2f0e7c4b66c5c8546bbd99ce9"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Dec 01 06:43:18 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:04:33 2025 +0100"
      },
      "message": "Bump com.diffplug.spotless from 8.0.0 to 8.1.0 in /lib/kotlin\n\nBumps com.diffplug.spotless from 8.0.0 to 8.1.0.\n\n---\nupdated-dependencies:\n- dependency-name: com.diffplug.spotless\n  dependency-version: 8.1.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "724b038b9fbd81a2f0e7c4b66c5c8546bbd99ce9",
      "tree": "1c3a9fe0067d7f45f6caf846beba23a42304c5a9",
      "parents": [
        "d90f2bb1e87252613c642d632395a65d3e8835f6"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Dec 01 06:29:44 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:04:10 2025 +0100"
      },
      "message": "Bump actions/setup-python from 3 to 6\n\nBumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 6.\n- [Release notes](https://github.com/actions/setup-python/releases)\n- [Commits](https://github.com/actions/setup-python/compare/v3...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/setup-python\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "d90f2bb1e87252613c642d632395a65d3e8835f6",
      "tree": "5e036ffba9b17f274f8afcfead3a5b68b8e5261b",
      "parents": [
        "55bc35f5d581f61f8dac816eb17493911ff8e75a"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Dec 01 06:29:38 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Mon Dec 01 22:03:38 2025 +0100"
      },
      "message": "Bump actions/checkout from 3 to 6\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3 to 6.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/v3...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/checkout\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "55bc35f5d581f61f8dac816eb17493911ff8e75a",
      "tree": "fea3daf5c7500bd7d99051e11f95609cbb739e86",
      "parents": [
        "a6ee3c0b1d0e7fcbaa439c573e370fa129e3c7b5"
      ],
      "author": {
        "name": "Shaoyu Zhang",
        "email": "zsy056@users.noreply.github.com",
        "time": "Tue Nov 25 13:59:16 2025 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Fri Nov 28 22:59:13 2025 +0100"
      },
      "message": "fix py ext windows build\n"
    },
    {
      "commit": "a6ee3c0b1d0e7fcbaa439c573e370fa129e3c7b5",
      "tree": "af234013bdc9a2575d9b7dbfe156e1f62c0d105e",
      "parents": [
        "c5a371280cc89a927e7278486233b16b189c6e9e"
      ],
      "author": {
        "name": "David Heejong Park",
        "email": "hee.jong.park@dnv.com",
        "time": "Tue Nov 04 07:20:28 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sun Nov 23 14:56:06 2025 +0100"
      },
      "message": "Reset consumed message size after reading from buffer\n"
    },
    {
      "commit": "c5a371280cc89a927e7278486233b16b189c6e9e",
      "tree": "de3393932b6d7b57eae7283923c700aafe8b6588",
      "parents": [
        "ac3feed1b24389efbc0865b742be1854be0406dc"
      ],
      "author": {
        "name": "Lysandros Nikolaou",
        "email": "lisandrosnik@gmail.com",
        "time": "Fri Jul 25 15:11:44 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Sun Nov 23 14:52:12 2025 +0100"
      },
      "message": "THRIFT-5888 Do not dynamically enable the GIL under free-threaded Python\nClient: py\nPatch: Lysandros Nikolaou\n\nThis closes #3180\n"
    },
    {
      "commit": "ac3feed1b24389efbc0865b742be1854be0406dc",
      "tree": "f9d87c81d249645f42086cf62d261413fd04f995",
      "parents": [
        "10d5a65d1a6c0308145352f31157628b9643c942"
      ],
      "author": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "yuxuan.wang@reddit.com",
        "time": "Tue Sep 17 09:53:02 2024 -0700"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sun Nov 23 14:43:12 2025 +0100"
      },
      "message": "Fix python compiler generated all_structs with type_hints\n\nCurrently with type_hints enabled, we do not explicitly declare the type\nof generated all_structs. It\u0027s meant to be a list of different types,\nbut that will cause problems, as the generated code is usually like\nthis:\n\n    all_structs \u003d []\n    ...\n    all_structs.append(Type1)\n    ...\n    all_structs.append(Type2)\n    ...\n\nThe first append infers the type of all_struct to be list[Type1], so\nmypyc would start complaining from the 2nd append as the type is\nunexpected.\n\nExplicitly declare all_struct to be list[typing.Any] instead, which\nfixes the issue.\n"
    },
    {
      "commit": "10d5a65d1a6c0308145352f31157628b9643c942",
      "tree": "5f4a890b2ed09b7e82fa739d1bcd8ae2cf5819c3",
      "parents": [
        "120d496dbdb8aa6bd2cbc9586af81946b5b2e057"
      ],
      "author": {
        "name": "Dmytro Shteflyuk",
        "email": "kpumuk@kpumuk.info",
        "time": "Wed Nov 19 15:24:32 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Fri Nov 21 17:42:52 2025 +0100"
      },
      "message": "ruby: Set TCP_NODELAY on accepted sockets\n"
    },
    {
      "commit": "120d496dbdb8aa6bd2cbc9586af81946b5b2e057",
      "tree": "2b7183f0054ca05c37808573d577155f59d4e245",
      "parents": [
        "5abe53feaf598e40ab84eb259399113a79461791"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Nov 20 22:13:24 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 23:17:42 2025 +0100"
      },
      "message": "Bump js-yaml from 3.14.1 to 3.14.2 in /lib/ts\n\nBumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 3.14.2.\n- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2)\n\n---\nupdated-dependencies:\n- dependency-name: js-yaml\n  dependency-version: 3.14.2\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "5abe53feaf598e40ab84eb259399113a79461791",
      "tree": "ba1bfe81c2004d18b072090ef24816cf306151ba",
      "parents": [
        "f274d9891fc042bac06f28f51ab5901b9077a0da"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Thu Nov 13 06:16:41 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 20 23:12:02 2025 +0100"
      },
      "message": "Thrift-5900: Fix Tests for Python 3.14\nClient: py\nPatch: Carel Combrink\n\nThis closes #3239\n\n- Disclaimer: Claude came up with this\n- Python 3.14 made files explicitly unpicklable for reasons\n- The out can\u0027t be pickled in SummaryReporter\n- stop in TestDispatcher is an instance method that should not be captured\n\nDelay the imports to where they are needed\n\n- Claude believes this is due to the way that the server is called vs the client is called and the server does not have enough time to set up completely\n\nAttempt to fix issue with python 3.14\n\n- Looks like python is getting more strict about scoping\n- Decided to go with a local option instead of global or module variable\n"
    },
    {
      "commit": "f274d9891fc042bac06f28f51ab5901b9077a0da",
      "tree": "9452b3a480a762ea8a0dfabd88318f24dd3d74cd",
      "parents": [
        "32b80f6292b591fe2b77d3070dbade91b0fdfd58"
      ],
      "author": {
        "name": "Tdxdxoz",
        "email": "tdxdxoz@gmail.com",
        "time": "Tue Sep 26 12:52:05 2023 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 22:56:34 2025 +0100"
      },
      "message": "enable TCP_NODELAY for rust client channel\n"
    },
    {
      "commit": "32b80f6292b591fe2b77d3070dbade91b0fdfd58",
      "tree": "89d72c060457ec36781f7d25b8533fd401f40af1",
      "parents": [
        "1e17c93555b680d4719ba61965c088590a2053dd"
      ],
      "author": {
        "name": "Amos Bird",
        "email": "amosbird@gmail.com",
        "time": "Fri Jun 30 15:30:28 2023 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 22:55:25 2025 +0100"
      },
      "message": "THRIFT-5720: Encode binary args in Python remote\n"
    },
    {
      "commit": "1e17c93555b680d4719ba61965c088590a2053dd",
      "tree": "1964a9a00a8c0fa87cf886dbd9aae8fcde92ed82",
      "parents": [
        "5b096a00027582983f1ae141a4bbf4eed806c310"
      ],
      "author": {
        "name": "George Koehler",
        "email": "kernigh@gmail.com",
        "time": "Mon Feb 06 18:08:05 2023 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 22:52:36 2025 +0100"
      },
      "message": "rewrite the endian conversion to fix a big-endian host\nClient: py\n\nChange htolell(dub) to htolell(transfer.t) in compact.h, because the\nconversion takes a long long, not a double.  This matters on a\nbig-endian host, where the conversion must swap bytes.\n\nThe big-endian letohll(n) failed because ntohl(n) is just n, doesn\u0027t\nswap n.  Rewrite ntohll(n) and letohll(n) to use the same code with\nboth big-endian and little-endian hosts.  Expect the compiler to\noptimize away one of ntohll(n) or letohll(n) when it doesn\u0027t swap n.\n"
    },
    {
      "commit": "5b096a00027582983f1ae141a4bbf4eed806c310",
      "tree": "fd6cb88d32d3f11e099074e1dafe78153a68bd7f",
      "parents": [
        "4f89bfdeeb900e2d64bf5c5f726b78d8591593cc"
      ],
      "author": {
        "name": "Maarten Pronk",
        "email": "git@evetion.nl",
        "time": "Sun Sep 11 17:36:39 2022 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 20 22:44:28 2025 +0100"
      },
      "message": "Lowercased all MinGW headers.\nPatch: Maarten Pronk\n\nThis closes #2649\n"
    },
    {
      "commit": "4f89bfdeeb900e2d64bf5c5f726b78d8591593cc",
      "tree": "0c5ac7dc955658cf7bad5536c73613ee392a84af",
      "parents": [
        "80279b551a8f86c5085afedd454e26611d5b3cba"
      ],
      "author": {
        "name": "pspeter",
        "email": "peter.schmidbauer@oebb.at",
        "time": "Wed Apr 13 14:44:30 2022 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 20 22:34:53 2025 +0100"
      },
      "message": "Fix bug in Python\u0027s THttpClient proxy handling\nClient: py\nPatch: Peter Schmidbauer\n\nThis closes #2565\n\nFix conversion to str without including quotes\n\nEnsure return type is str in Py2 and 3\n\nIn Python2, str(cr) returns a cr unchanged, since it is already a str. In Python3, \u0027cr\u0027 is a binary array (like str in Python2), but we cannot concat a str with a bin in Py3. Therefore, we convert it to str using str(cr), before concatenating it with \u0027Basic \u0027.\nFix bug in THttpClient proxy handling\n"
    },
    {
      "commit": "80279b551a8f86c5085afedd454e26611d5b3cba",
      "tree": "3914dd15a94455e188e2e60e878143ce39cb1209",
      "parents": [
        "2d8546837cb3f55df4c1724cdfe7b42badbb2dbe"
      ],
      "author": {
        "name": "Francisco Ayala Le Brun",
        "email": "frankxlebrun@gmail.com",
        "time": "Sat Apr 23 15:03:30 2022 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 20 22:32:26 2025 +0100"
      },
      "message": "THRIFT-5559: Make handler public in Rust codegen\nClient: rs\nPatch: Francisco Ayala Le Brun\n\nThis closes #2586\n"
    },
    {
      "commit": "2d8546837cb3f55df4c1724cdfe7b42badbb2dbe",
      "tree": "ee2252494f0415ffb6f66b60fbebbf46378ed444",
      "parents": [
        "0c7833caaa38b0baaf305c047d724dd5b878c93e"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 20 22:20:57 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 20 22:20:57 2025 +0100"
      },
      "message": "Reverted, breaks CI\n\nRevert \"use ok_or_else\"\nThis reverts commit 0c7833caaa38b0baaf305c047d724dd5b878c93e.\n\nRevert \"check overflow on reading field id\"\nThis reverts commit 49fe0e2a7c13417719409e90f65c92ac5ed88ebd.\n"
    },
    {
      "commit": "0c7833caaa38b0baaf305c047d724dd5b878c93e",
      "tree": "f67e93594d1d0a0172cfea89ffab5f28ead37c4e",
      "parents": [
        "49fe0e2a7c13417719409e90f65c92ac5ed88ebd"
      ],
      "author": {
        "name": "Jinpeng",
        "email": "zjpzlz@163.com",
        "time": "Wed Nov 19 23:59:22 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 22:16:20 2025 +0100"
      },
      "message": "use ok_or_else"
    },
    {
      "commit": "49fe0e2a7c13417719409e90f65c92ac5ed88ebd",
      "tree": "448f5ae3845c5735ee1125f11b2f40d933481890",
      "parents": [
        "f8ce26cd422f743493423da58591dd5ef1142bdb"
      ],
      "author": {
        "name": "Jinpeng",
        "email": "zjpzlz@163.com",
        "time": "Thu Dec 12 17:31:29 2024 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 22:16:20 2025 +0100"
      },
      "message": "check overflow on reading field id"
    },
    {
      "commit": "f8ce26cd422f743493423da58591dd5ef1142bdb",
      "tree": "ee2252494f0415ffb6f66b60fbebbf46378ed444",
      "parents": [
        "d804bd1c1fc9d790a0b1cf29a4ffdb24ecd8b1ab"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Wed Nov 12 14:24:55 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Fix issue with deprecated function in test\n\n- assert_   was removed in Python 3 and later removed\n- Fixed the script to error out correctly when the tests fail\n   - The RunClientServer.py test did not fail as expected on this error\n"
    },
    {
      "commit": "d804bd1c1fc9d790a0b1cf29a4ffdb24ecd8b1ab",
      "tree": "fd697c6ca0269dac3469190f2191a5214d336e2b",
      "parents": [
        "20a90bf9ffcbddf9e77dcdefde1182a2d51e986a"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Wed Nov 12 07:16:31 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Reworked the local_libpath() using the code form _import_local_thrift\n\n- Common problem, common code\n"
    },
    {
      "commit": "20a90bf9ffcbddf9e77dcdefde1182a2d51e986a",
      "tree": "030656903dbdd3892021fc18940be622dc8b1fc3",
      "parents": [
        "9f96b485f78b9d5405c57b354b85e99d222646f9"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Tue Nov 11 13:56:57 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Also skip the type_hints and enum tests\n"
    },
    {
      "commit": "9f96b485f78b9d5405c57b354b85e99d222646f9",
      "tree": "683469b52845a6401975ed02627d19e7ba620ca6",
      "parents": [
        "f2534ad343d165ec37201f635002bcb007ba16b3"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Tue Nov 11 13:36:06 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Skip ssl tests\n\n- See https://issues.apache.org/jira/browse/THRIFT-5901\n"
    },
    {
      "commit": "f2534ad343d165ec37201f635002bcb007ba16b3",
      "tree": "74af7b6d76fd6edec40dba562fd71259979ee32b",
      "parents": [
        "eec3fbb10df4e2be89d00f5b5c03b1043bc8bf78"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Tue Nov 11 12:51:21 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Pin python building also to 3.13\n\n- No need for the check in the step any more since not supporting python 2\n"
    },
    {
      "commit": "eec3fbb10df4e2be89d00f5b5c03b1043bc8bf78",
      "tree": "516d4e02d4c0fda5a84a5129881d07bfa3abdf27",
      "parents": [
        "7770d27499b2e8b6ace652275617a006ee02c829"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Tue Nov 11 12:31:11 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Also use the 0.16 file for the makefile\n\n- Same as per the cmake side\n"
    },
    {
      "commit": "7770d27499b2e8b6ace652275617a006ee02c829",
      "tree": "7f7e21713a490b853a3d27ca4cd3a76c42884190",
      "parents": [
        "f9449eacfbdbe150640df46c248393c64f17fce4"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Tue Nov 11 14:07:19 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Put back the actual python tests\n"
    },
    {
      "commit": "f9449eacfbdbe150640df46c248393c64f17fce4",
      "tree": "bf1bced6a6c85c2a84161f5c9ea81328007e9821",
      "parents": [
        "cdd8e3b1e8643812c96e9f0298e62d09cb814d4d"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Tue Nov 11 08:33:41 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Try to force python version\n\n- The change in find_package favours the latest Python\n- Force cmake to use the one specified\n- Put back the echo again since it is needed\n"
    },
    {
      "commit": "cdd8e3b1e8643812c96e9f0298e62d09cb814d4d",
      "tree": "47a6d19adf04067c83a6291bf780bb393b90b124",
      "parents": [
        "3adca0ecfee7dcb70f1bdf844050b5d02ed61d76"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 15:16:18 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Print Python version\n\n- And add message if interpreter not found\n- Remove the QUIET to get some idea of what cmake is doing\n- Trying to debug issue on Appveyor\n"
    },
    {
      "commit": "3adca0ecfee7dcb70f1bdf844050b5d02ed61d76",
      "tree": "7f020f754140e81a04089da95ff0d21a262ee914",
      "parents": [
        "eae1094d399e6d96a76b87ae98686a06dc11db5b"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 14:56:54 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Missed actually using the new variables from the new calls to get Python\n"
    },
    {
      "commit": "eae1094d399e6d96a76b87ae98686a06dc11db5b",
      "tree": "b6ca3336690369186df0575799ba706cb30bd616",
      "parents": [
        "11c960848c86583c85c22cb5e4c50e23068f0435"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 14:19:48 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Use the v0.16 thrift for type_hints also\n\n- Full UUID support not added and this seems to work for some cases but not all, thus removing until full UUID is added\n"
    },
    {
      "commit": "11c960848c86583c85c22cb5e4c50e23068f0435",
      "tree": "720090ee58d577c438bcc64b6062d15c5b2b9374",
      "parents": [
        "5c22d91b435341324e23dc505fe26850ddf3485e"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 14:07:50 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Add option to search the local lib path\n\n- Locally and in Windows actions the second option is needed\n"
    },
    {
      "commit": "5c22d91b435341324e23dc505fe26850ddf3485e",
      "tree": "f9d4382eb8765eb66b8663238f79810c99f684ec",
      "parents": [
        "9aac8ad7aadd7446309dc6d756158cc54c68fe2d"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 14:03:02 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Fix collection test\n\n- collections.abc was added in 3.3 collections.Hashable removed in 3.10\n"
    },
    {
      "commit": "9aac8ad7aadd7446309dc6d756158cc54c68fe2d",
      "tree": "37e2e91fb060a62263b16d31a863c3b51d42153d",
      "parents": [
        "23e29d67f443e8bc1a04120d8b004e9e7b210066"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 14:02:40 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "Fix call to deprecated test methods\n\n- Deprecated in Python 3.2 and removed in 3.11\n"
    },
    {
      "commit": "23e29d67f443e8bc1a04120d8b004e9e7b210066",
      "tree": "d7c4e4431870e5c3b27154a1ab7cf8101b038238",
      "parents": [
        "d6fc79122b7dce9731033b86cc54b2de07e6fa43"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Mon Nov 10 14:00:18 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 20 00:01:57 2025 +0100"
      },
      "message": "FIx cmake warning on CMP0148\n\n- find_package(PythonInterp) and find_package(PythonLibs) were deprecated in 3.12 and removed in 3.27\n- The project minimum is at 3.16 already\n"
    },
    {
      "commit": "d6fc79122b7dce9731033b86cc54b2de07e6fa43",
      "tree": "c1364e987692f2889319f4613e09ea25b53f1c02",
      "parents": [
        "ead302baf8c1cd231f10354b8f75a51499d2283a"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 19 22:04:39 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 23:56:40 2025 +0100"
      },
      "message": "bump nuget packages\n"
    },
    {
      "commit": "ead302baf8c1cd231f10354b8f75a51499d2283a",
      "tree": "cacada6068293014ee2c1aec616a7279c2cdff1c",
      "parents": [
        "d0531c412f12cc1dd71e24650f6f7a408dbdcab6"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 19 23:50:18 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Wed Nov 19 23:50:18 2025 +0100"
      },
      "message": "Revert \"lib: py: remove distutils in favor of setuptools\"\n\nThis reverts commit b4432b8f57aae67ef9ec23e539e973a5e486a48c.\n"
    },
    {
      "commit": "d0531c412f12cc1dd71e24650f6f7a408dbdcab6",
      "tree": "7c1170acf9559aff2d89da629035dbc080dc90ea",
      "parents": [
        "90ba80427dd1b65af846717fd5c16fdcb9ab4078"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Nov 19 16:21:25 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:46:46 2025 +0100"
      },
      "message": "Bump js-yaml from 3.14.1 to 3.14.2 in /lib/js\n\nBumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 3.14.2.\n- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2)\n\n---\nupdated-dependencies:\n- dependency-name: js-yaml\n  dependency-version: 3.14.2\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "90ba80427dd1b65af846717fd5c16fdcb9ab4078",
      "tree": "72af5e1b3d197d88ae5bfd7cbfabf75c7aaa916e",
      "parents": [
        "cfc460213187ed9849c5e56c229668eb80859d50"
      ],
      "author": {
        "name": "James E. King III",
        "email": "jking@apache.org",
        "time": "Mon Apr 04 13:17:57 2022 -0400"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:41:42 2025 +0100"
      },
      "message": "THRIFT-5546: automate pypi publishing [ci skip]\n\nWhen a pre-release is created on GitHub for the repo it will publish\nto the TestPyPI service, and if that pre-release is promoted to a\nrelease, it will publish to the PyPI (real) service.\n"
    },
    {
      "commit": "cfc460213187ed9849c5e56c229668eb80859d50",
      "tree": "3695f332ea303e98ee8861ccb25b22d3e0719499",
      "parents": [
        "b4432b8f57aae67ef9ec23e539e973a5e486a48c"
      ],
      "author": {
        "name": "Stan Hu",
        "email": "stanhu@gmail.com",
        "time": "Mon Nov 28 11:29:50 2022 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:38:44 2025 +0100"
      },
      "message": "ruby: fix failing tests with Ruby 3.0\n\nThe tests were previously failing due to keyword argument changes in\nRuby 3.0.\n"
    },
    {
      "commit": "b4432b8f57aae67ef9ec23e539e973a5e486a48c",
      "tree": "b9a344259440506d78ec643f44e6c22467378ec2",
      "parents": [
        "d66ce925513fb3424deaa0ea4bb1a2491970d1dd"
      ],
      "author": {
        "name": "Pyrox",
        "email": "pyrox@pyrox.dev",
        "time": "Fri Jul 19 14:19:04 2024 -0400"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:37:01 2025 +0100"
      },
      "message": "lib: py: remove distutils in favor of setuptools\n\nAs distutils is removed in python 3.12, and setuptools provides the same\ninterface, it can be switched in place with minor changes. This allows\nusing the thrift bindings on versions of Python 3.12 or greater.\n"
    },
    {
      "commit": "d66ce925513fb3424deaa0ea4bb1a2491970d1dd",
      "tree": "0d8cef615b069ee5de119ff845703703b6b2e24d",
      "parents": [
        "f17d36cea582b79d3798c2be9520146d7a3fb0af"
      ],
      "author": {
        "name": "bwangelme",
        "email": "bwangel.me@gmail.com",
        "time": "Tue Jul 02 10:40:58 2024 +0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:36:20 2025 +0100"
      },
      "message": "fix: make timeout error more future\n\nClient: [\"python\"]\n"
    },
    {
      "commit": "f17d36cea582b79d3798c2be9520146d7a3fb0af",
      "tree": "4f18128713c7fa93662f60fe45dca4bfc34cb0db",
      "parents": [
        "52df9d7060387276cf0a5e2af1b4e0660183b38b"
      ],
      "author": {
        "name": "sbrandprog",
        "email": "sbrandprog@gmail.com",
        "time": "Sun Aug 24 17:49:35 2025 +0300"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:35:26 2025 +0100"
      },
      "message": "Expose thriftnb cmake target\nClient: cpp\n"
    },
    {
      "commit": "52df9d7060387276cf0a5e2af1b4e0660183b38b",
      "tree": "fd5ee49719d8ada60f6d73123176a786eeb2c440",
      "parents": [
        "c0caee3847eab836b16c347d9ec9895348ceda71"
      ],
      "author": {
        "name": "Gabe Jones",
        "email": "gabe.jones@emerson.com",
        "time": "Thu Oct 16 22:03:22 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:31:40 2025 +0100"
      },
      "message": "tOutput: Mark args unused when THRIFT_SQUELCH_CONSOLE_OUTPUT\nClient: cpp\n"
    },
    {
      "commit": "c0caee3847eab836b16c347d9ec9895348ceda71",
      "tree": "7c3cff03d062768a54013d8ef2a41ec85c966bad",
      "parents": [
        "17c8b838e1ee1fbcedf8f7b0d16e93380a547b03"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Nov 17 15:22:30 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:20:37 2025 +0100"
      },
      "message": "Bump js-yaml\n\nBumps  and [js-yaml](https://github.com/nodeca/js-yaml). These dependencies needed to be updated together.\n\nUpdates `js-yaml` from 4.1.0 to 4.1.1\n- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)\n\nUpdates `js-yaml` from 3.13.1 to 3.14.2\n- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)\n\n---\nupdated-dependencies:\n- dependency-name: js-yaml\n  dependency-version: 4.1.1\n  dependency-type: indirect\n- dependency-name: js-yaml\n  dependency-version: 3.14.2\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "17c8b838e1ee1fbcedf8f7b0d16e93380a547b03",
      "tree": "42e9aea26a1ad731cc1b1583dde3a98e4af0d0b6",
      "parents": [
        "0e4abab35a41206b9b7260adbb9c1af1bb3bb434"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Nov 01 06:01:40 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:20:13 2025 +0100"
      },
      "message": "Bump actions/upload-artifact from 4 to 5\n\nBumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.\n- [Release notes](https://github.com/actions/upload-artifact/releases)\n- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)\n\n---\nupdated-dependencies:\n- dependency-name: actions/upload-artifact\n  dependency-version: \u00275\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "0e4abab35a41206b9b7260adbb9c1af1bb3bb434",
      "tree": "209ecbbd6e8494e9be5d65a6b415094e67a8b3b0",
      "parents": [
        "87079492f8005409b5c985e0b1782841f54fc9fc"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Nov 01 06:01:43 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Wed Nov 19 17:19:57 2025 +0100"
      },
      "message": "Bump actions/download-artifact from 5 to 6\n\nBumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6.\n- [Release notes](https://github.com/actions/download-artifact/releases)\n- [Commits](https://github.com/actions/download-artifact/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/download-artifact\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "87079492f8005409b5c985e0b1782841f54fc9fc",
      "tree": "3c17dcf1fd1704f095a39ae91258f07d043abaf9",
      "parents": [
        "822671218dc7df11d7e1d5b100cb81baba97c757"
      ],
      "author": {
        "name": "Michael Smith",
        "email": "michael.smith@cloudera.com",
        "time": "Fri Nov 14 13:47:42 2025 -0800"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sun Nov 16 12:41:45 2025 +0100"
      },
      "message": "THRIFT-792: Preserve last connect exception\n\nPreserves the last exception when TSocket connect fails to provide more\ncontext to callers. The exceptions are already logged at info level, but\ncallers may suppress that or want to view details in the exception, so\nattach the last as an inner layer of TTransportException, similar to\ngaierror above.\n"
    },
    {
      "commit": "822671218dc7df11d7e1d5b100cb81baba97c757",
      "tree": "3198a7adf888d20a75ce341f93e937a5df5a5dbc",
      "parents": [
        "2f214c28d89a0199a088a3acd0c16b3c6d99fb72"
      ],
      "author": {
        "name": "Carel",
        "email": "Carel.combrink@gmail.com",
        "time": "Sat Nov 15 09:08:21 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 14 23:08:21 2025 -0800"
      },
      "message": "Mark the go-java SSL failures as known (#3237)\n\n"
    },
    {
      "commit": "2f214c28d89a0199a088a3acd0c16b3c6d99fb72",
      "tree": "9af049cb5d8c29ba299c9de312346f518897e928",
      "parents": [
        "ed55a18c30cf1ffdf793fcde5afae61f0f4c02cf"
      ],
      "author": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Thu Nov 13 23:24:45 2025 +0100"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Fri Nov 14 21:17:28 2025 +0100"
      },
      "message": "THRIFT-5902 Add net10 support\nClient: netstd\nPatch: Jens Geyer\n"
    },
    {
      "commit": "ed55a18c30cf1ffdf793fcde5afae61f0f4c02cf",
      "tree": "2a3a6eeab694af499381e0a61f7200b2da083223",
      "parents": [
        "b08ae57c318d8188d9b7d5391d6fb9d32aa8f75f"
      ],
      "author": {
        "name": "Carel",
        "email": "Carel.combrink@gmail.com",
        "time": "Fri Nov 14 10:54:52 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 14 16:54:52 2025 +0800"
      },
      "message": "Remove kotlin cross tests (#3236)\n\n- They have been failing for months now without any actions\n- The red builds have already desensitized the project to checking for failures"
    },
    {
      "commit": "b08ae57c318d8188d9b7d5391d6fb9d32aa8f75f",
      "tree": "fc6a35a00bafa4703c8fc1aacce5fd0257c47cd9",
      "parents": [
        "12e86dd3ec6640108d1f03842fa9bf86d91cdd8f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Nov 13 21:02:40 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 13 22:34:32 2025 +0100"
      },
      "message": "Bump com.ncorti.ktfmt.gradle from 0.24.0 to 0.25.0 in /lib/kotlin\n\nBumps com.ncorti.ktfmt.gradle from 0.24.0 to 0.25.0.\n\n---\nupdated-dependencies:\n- dependency-name: com.ncorti.ktfmt.gradle\n  dependency-version: 0.25.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "12e86dd3ec6640108d1f03842fa9bf86d91cdd8f",
      "tree": "eae329f0c877c01a83f890fd13022fc6c9c5e8a6",
      "parents": [
        "7089a3a0b45ecf07f26b4c90175d498583950b9f"
      ],
      "author": {
        "name": "Ben Gemmill",
        "email": "bgemmill@users.noreply.github.com",
        "time": "Thu Nov 06 10:13:58 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 13 22:06:52 2025 +0100"
      },
      "message": "Update TBinaryProtocol.tcc\n\nOne last strlen"
    },
    {
      "commit": "7089a3a0b45ecf07f26b4c90175d498583950b9f",
      "tree": "ebc8926c4341757d17d1c4102a03d7adcb36e390",
      "parents": [
        "0039f8799210017a6432d818b899ca3c0c450c17"
      ],
      "author": {
        "name": "Ben Gemmill",
        "email": "bgemmill@users.noreply.github.com",
        "time": "Thu Nov 06 10:11:12 2025 -0500"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 13 22:06:52 2025 +0100"
      },
      "message": "Update TCompactProtocol.tcc\n\nSkip the strlen() calls here too for speed"
    },
    {
      "commit": "0039f8799210017a6432d818b899ca3c0c450c17",
      "tree": "4b6b66ec826f4c4bba0a3de4948014aa8e1456d1",
      "parents": [
        "e720e6fecb75f1242154d1847b3b2954ae9d0965"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Nov 01 06:02:53 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Nov 13 22:00:39 2025 +0100"
      },
      "message": "Bump jvm from 2.2.20 to 2.2.21 in /lib/kotlin\n\nBumps [jvm](https://github.com/JetBrains/kotlin) from 2.2.20 to 2.2.21.\n- [Release notes](https://github.com/JetBrains/kotlin/releases)\n- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)\n- [Commits](https://github.com/JetBrains/kotlin/compare/v2.2.20...v2.2.21)\n\n---\nupdated-dependencies:\n- dependency-name: jvm\n  dependency-version: 2.2.21\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "e720e6fecb75f1242154d1847b3b2954ae9d0965",
      "tree": "aeebd2655eac72bef9e21cc4f1c33b442fe2dd8b",
      "parents": [
        "e7ab34eccb272584441f5462104d87f08b217ea7"
      ],
      "author": {
        "name": "Carel",
        "email": "Carel.combrink@gmail.com",
        "time": "Fri Nov 07 10:48:27 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 07 08:48:27 2025 +0000"
      },
      "message": "THRIFT-5899: Python tests fail for the Appveyor MSVC builds (#3229)\n\n* Temporarily switch off shared build\n\n- See THRIFT-5898\n\n* Skip type_hints tests for python lower than 3.7\n\n- PR#2929 called out that the changes breaks Python 3.5 since types came in in 3.6\n- Python 3.6 errors out with \u0027from __future__ import annotations\u0027 since it looks like it was only added in 3.7\n\n* More appveyer issues on Windows due to old python\n\n* Remove enum tests for old python versions\n\n- Getting `raise TApplicationException(TApplicationException.MISSING_RESULT, \"testEnum failed: unknown result\"` error\n- PR#2825 state it is a breaking change, not sure why and for what version of Python\n\n* Disable SSL tests for old Python\n\n- Appveyor error: ` AttributeError: module \u0027ssl\u0027 has no attribute \u0027PROTOCOL_TLS_CLIENT\u0027`\n\n* Can\u0027t get the test to skip so revert the change that broke it\n\n- See PR#3050\n\n* THRIFT-5900: Pin the cross test stage to python 3.13\n\n- See https://issues.apache.org/jira/browse/THRIFT-5900"
    },
    {
      "commit": "e7ab34eccb272584441f5462104d87f08b217ea7",
      "tree": "62a545d02ffa332ed71a6ccf08e14130bfcfd059",
      "parents": [
        "3b21bc9fb4b4fe191f2c5b94ccaa1e3e99193c58"
      ],
      "author": {
        "name": "Atharva Chiplunkar",
        "email": "73574922+AtharvaChiplunkar12@users.noreply.github.com",
        "time": "Thu Oct 30 07:40:33 2025 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 30 14:40:33 2025 +0000"
      },
      "message": "THRIFT-5897: Use Read Lock for Listener in TServerSocket.Accept()\n\nProblem:\nAccept() previously used two separate lock acquisitions:\nRLock() to read interrupted field\nLock() (write lock) to read listener field\nWrite lock was unnecessary since listener is only being read, not modified\nWrite locks block all other goroutines (both readers and writers)\n\nSolution:\nConsolidate both field reads under a single RLock()/RUnlock() pair\nBoth interrupted and listener are read-only operations, so read lock is sufficient"
    },
    {
      "commit": "3b21bc9fb4b4fe191f2c5b94ccaa1e3e99193c58",
      "tree": "b7237ba18c7c94ed4f6a198ed36e713934c05919",
      "parents": [
        "06bc1958f2b42a5e07fd78d203feebecbdd4f8a4"
      ],
      "author": {
        "name": "Federico Giovanardi",
        "email": "federico.giovanardi@cnhind.com",
        "time": "Fri Aug 22 15:29:24 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "jensg@apache.org",
        "time": "Fri Oct 24 00:55:30 2025 +0200"
      },
      "message": "Support socket activation by fd passing\nClient: cpp\nPatch: Federico Giovanardi\n\nThis closes #3211\n"
    },
    {
      "commit": "06bc1958f2b42a5e07fd78d203feebecbdd4f8a4",
      "tree": "4385e6abddcfa7d0e9b14bb72d893ce759e9e850",
      "parents": [
        "2620a12bfa92dfb808fb9668b3d84a2c56526fc3"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Aug 22 20:14:25 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Sat Oct 18 22:16:13 2025 +0200"
      },
      "message": "Bump cipher-base from 1.0.4 to 1.0.6 in /lib/ts\n\nBumps [cipher-base](https://github.com/crypto-browserify/cipher-base) from 1.0.4 to 1.0.6.\n- [Changelog](https://github.com/browserify/cipher-base/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/crypto-browserify/cipher-base/compare/v1.0.4...v1.0.6)\n\n---\nupdated-dependencies:\n- dependency-name: cipher-base\n  dependency-version: 1.0.6\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "2620a12bfa92dfb808fb9668b3d84a2c56526fc3",
      "tree": "b16ea601f668e6d1203513394a8552f84419864a",
      "parents": [
        "d9a97c1610372eeb6db9f1a54e590a0a89067aea"
      ],
      "author": {
        "name": "Atharva Chiplunkar",
        "email": "atharvamchiplunkar12@gmail.com",
        "time": "Thu Oct 16 13:50:09 2025 -0700"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Fri Oct 17 12:59:39 2025 -0700"
      },
      "message": "THRIFT-5896: Fix race condition in TServerSocket.Addr()\nClient: go\n"
    },
    {
      "commit": "d9a97c1610372eeb6db9f1a54e590a0a89067aea",
      "tree": "64a325b95d0f72c68d2f8220d64d9c0bc0cd75e6",
      "parents": [
        "9bfed8bd82e9ff30f9563aa33644f510a7807578"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Oct 01 15:26:25 2025 +0000"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Wed Oct 01 08:41:08 2025 -0700"
      },
      "message": "Bump com.ncorti.ktfmt.gradle from 0.23.0 to 0.24.0 in /lib/kotlin\n\nBumps com.ncorti.ktfmt.gradle from 0.23.0 to 0.24.0.\n\n---\nupdated-dependencies:\n- dependency-name: com.ncorti.ktfmt.gradle\n  dependency-version: 0.24.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "9bfed8bd82e9ff30f9563aa33644f510a7807578",
      "tree": "37988ed663f8a3332f2a087fdd5a4395af52b561",
      "parents": [
        "652915434015ccefd2117774e27896f32a2ce8fa"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Oct 01 14:49:59 2025 +0000"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Wed Oct 01 08:20:56 2025 -0700"
      },
      "message": "Bump jvm from 2.2.10 to 2.2.20 in /lib/kotlin\n\nBumps [jvm](https://github.com/JetBrains/kotlin) from 2.2.10 to 2.2.20.\n- [Release notes](https://github.com/JetBrains/kotlin/releases)\n- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)\n- [Commits](https://github.com/JetBrains/kotlin/compare/v2.2.10...v2.2.20)\n\n---\nupdated-dependencies:\n- dependency-name: jvm\n  dependency-version: 2.2.20\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "652915434015ccefd2117774e27896f32a2ce8fa",
      "tree": "09cab6f1b9d8dc644cc33c20b5c0c2ce19889b26",
      "parents": [
        "1a5b7fc85bbf6ff48d869e74ca675900a46d3750"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Oct 01 06:02:02 2025 +0000"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Wed Oct 01 07:47:44 2025 -0700"
      },
      "message": "Bump com.diffplug.spotless from 7.2.1 to 8.0.0 in /lib/java\n\nBumps com.diffplug.spotless from 7.2.1 to 8.0.0.\n\n---\nupdated-dependencies:\n- dependency-name: com.diffplug.spotless\n  dependency-version: 8.0.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "1a5b7fc85bbf6ff48d869e74ca675900a46d3750",
      "tree": "8f7993866ed06dc65dace27028f0f8c468096916",
      "parents": [
        "755f7d9faf463ed505f28492961a8452fc70493d"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Oct 01 06:01:59 2025 +0000"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Wed Oct 01 07:34:18 2025 -0700"
      },
      "message": "Bump actions/setup-python from 5 to 6\n\nBumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.\n- [Release notes](https://github.com/actions/setup-python/releases)\n- [Commits](https://github.com/actions/setup-python/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/setup-python\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "755f7d9faf463ed505f28492961a8452fc70493d",
      "tree": "8cc5cdcb64e0d145553cd751dbe5cd896a44cc75",
      "parents": [
        "81723d0f3f0ed2199167d9b21c7baf98d3e61927"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Oct 01 06:01:55 2025 +0000"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Wed Oct 01 07:33:25 2025 -0700"
      },
      "message": "Bump actions/setup-go from 5 to 6\n\nBumps [actions/setup-go](https://github.com/actions/setup-go) from 5 to 6.\n- [Release notes](https://github.com/actions/setup-go/releases)\n- [Commits](https://github.com/actions/setup-go/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/setup-go\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "81723d0f3f0ed2199167d9b21c7baf98d3e61927",
      "tree": "fa56ef18cbf6e544dffb52c50d72a896fc15fc52",
      "parents": [
        "86268584f64690dae9dd08ef9fd113827fad884a"
      ],
      "author": {
        "name": "James Guthrie",
        "email": "JamesGuthrie@users.noreply.github.com",
        "time": "Fri Sep 26 16:35:51 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 26 08:35:51 2025 -0700"
      },
      "message": "go: reduce memory consumption of small fields (#3212)\n\nIn the context of THRIFT-5322 commit 37c2ceb7 introduced the\nsafeReadBytes method, which prevents allocating very large buffers on\nmalformed input by using a bytes.Buffer as the backing buffer to contain\ndata.\n\nDue to how io.CopyN and bytes.Buffer interact, and bytes.Buffer\u0027s grow\nbehaviour, the smallest buffer size is 512 bytes, but typically buffer\nsizes are at least 1024 bytes. In degenerate cases (reading many small\nfields) this can cause significant bloat, e.g. a value of 8 bytes in\nlength sits in a buffer of 1024 bytes.\n\nThis change eliminates bloat by allocating an array of exactly the\ndesired size, when the desired size is below bytes.Buffer\u0027s minimum\nbuffer size.\n"
    },
    {
      "commit": "86268584f64690dae9dd08ef9fd113827fad884a",
      "tree": "b7a105b4800dcd008c3c5afe35bffbc07e8a5942",
      "parents": [
        "37c7910072de4bf282f95f7c64f91155d6f2ce7e"
      ],
      "author": {
        "name": "Jonathan Haapala",
        "email": "jhaapala@newrelic.com",
        "time": "Mon Jun 30 14:50:49 2025 -0700"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Sun Sep 21 12:28:01 2025 -0700"
      },
      "message": "Add various/minor changes to some TProtocols for consistency and convenience\nClients: \"java\"\n"
    },
    {
      "commit": "37c7910072de4bf282f95f7c64f91155d6f2ce7e",
      "tree": "538255b51699481f3a3ea092c882c7c048b758d2",
      "parents": [
        "5501e8f84b7e735f1592b86492ab785a2f401bcf"
      ],
      "author": {
        "name": "Csaba Ringhofer",
        "email": "csringhofer@cloudera.com",
        "time": "Mon Sep 15 14:40:17 2025 +0200"
      },
      "committer": {
        "name": "Yuxuan \u0027fishy\u0027 Wang",
        "email": "fishywang@gmail.com",
        "time": "Tue Sep 16 18:23:18 2025 -0700"
      },
      "message": "THRIFT-5892: Always define PY_SSIZE_T_CLEAN before including Python.h\n\nThe error THRIFT-5488 tried to solve resurfaced in a spefic\nenvironment: Python3.11.13, chainguard based docker image, GCC 15\n\nDefining PY_SSIZE_T_CLEAN in module.cpp fixed the issue in that\nenvironment. Also defined it in types.cpp to consistently define\nit before including Python.h, which seems to be the recommended way:\nhttps://docs.python.org/3.11/c-api/intro.html#include-files\n\nIt is not clear to me why this was a problem in some environments\nand not in others. My guess is that including Python.h with different\ndefines leads to different behavior based on GCC version and options.\n"
    },
    {
      "commit": "5501e8f84b7e735f1592b86492ab785a2f401bcf",
      "tree": "a7d65ef3c3f5c5400ab78d02b16f9974fedc2d59",
      "parents": [
        "95245246390f2fa44d4ce1f11fe5052e30391dfc"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Sep 05 16:37:40 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 05 16:37:40 2025 -0400"
      },
      "message": "Bump com.ncorti.ktfmt.gradle from 0.20.1 to 0.23.0 in /lib/kotlin (#3174)\n\n* Bump com.ncorti.ktfmt.gradle from 0.20.1 to 0.23.0 in /lib/kotlin\n\nBumps com.ncorti.ktfmt.gradle from 0.20.1 to 0.23.0.\n\n---\nupdated-dependencies:\n- dependency-name: com.ncorti.ktfmt.gradle\n  dependency-version: 0.23.0\n  dependency-type: direct:production\n  update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\n\n* Apply ktmftFormat changes for new ktfmt version\n\n---------\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: Christopher Tubbs \u003cctubbsii@apache.org\u003e"
    },
    {
      "commit": "95245246390f2fa44d4ce1f11fe5052e30391dfc",
      "tree": "78ef60f4deba7bd3692ca878c5d9ccc29efac3c2",
      "parents": [
        "eaec898df1c2e541a72a91135bb572b4450519aa"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Sep 05 15:53:41 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 05 15:53:41 2025 -0400"
      },
      "message": "Bump jvm from 2.2.0 to 2.2.10 in /lib/kotlin (#3209)\n\nBumps [jvm](https://github.com/JetBrains/kotlin) from 2.2.0 to 2.2.10.\n- [Release notes](https://github.com/JetBrains/kotlin/releases)\n- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)\n- [Commits](https://github.com/JetBrains/kotlin/compare/v2.2.0...v2.2.10)\n\n---\nupdated-dependencies:\n- dependency-name: jvm\n  dependency-version: 2.2.10\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "eaec898df1c2e541a72a91135bb572b4450519aa",
      "tree": "b165a9f2f747fd777e8a703f0dc92fb460f48a54",
      "parents": [
        "55783f90db255214898eab619cd9fdd9e85804e4"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Sep 05 15:53:08 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 05 15:53:08 2025 -0400"
      },
      "message": "Bump actions/setup-java from 4 to 5 (#3206)\n\nBumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5.\n- [Release notes](https://github.com/actions/setup-java/releases)\n- [Commits](https://github.com/actions/setup-java/compare/v4...v5)\n\n---\nupdated-dependencies:\n- dependency-name: actions/setup-java\n  dependency-version: \u00275\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "55783f90db255214898eab619cd9fdd9e85804e4",
      "tree": "69c765d2645e7c4a9113546401032c569b2cfcfb",
      "parents": [
        "e6f532421c96b566e6622ba81fa3d06e8c3110bc"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Sep 05 15:52:26 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 05 15:52:26 2025 -0400"
      },
      "message": "Bump actions/download-artifact from 4 to 5 (#3207)\n\nBumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 5.\n- [Release notes](https://github.com/actions/download-artifact/releases)\n- [Commits](https://github.com/actions/download-artifact/compare/v4...v5)\n\n---\nupdated-dependencies:\n- dependency-name: actions/download-artifact\n  dependency-version: \u00275\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "e6f532421c96b566e6622ba81fa3d06e8c3110bc",
      "tree": "e6dcbd3c46382923b79bc7d7bafa2ac488f80214",
      "parents": [
        "922cd0e2c4652df3f4ac4a83d9c8a6c771063f7f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Sep 05 15:50:09 2025 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 05 15:50:09 2025 -0400"
      },
      "message": "Bump actions/checkout from 4 to 5 (#3208)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/v4...v5)\n\n---\nupdated-dependencies:\n- dependency-name: actions/checkout\n  dependency-version: \u00275\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "922cd0e2c4652df3f4ac4a83d9c8a6c771063f7f",
      "tree": "0fcf5ec1c85eaf81679c03365b6d74cb0020152a",
      "parents": [
        "860b1e539c74b9664bb83e568cf1ed1b4bf26ae0"
      ],
      "author": {
        "name": "Guillaume Maudoux",
        "email": "layus.on@gmail.com",
        "time": "Thu Oct 24 00:54:37 2024 -0700"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Aug 28 00:43:59 2025 +0200"
      },
      "message": "Add support for boringssl\n\nCo-authored-by: Dev-iL \u003c6509619+Dev-iL@users.noreply.github.com\u003e\n"
    },
    {
      "commit": "860b1e539c74b9664bb83e568cf1ed1b4bf26ae0",
      "tree": "cf4139d3f18506cf7739b07efe2a4ce53bf59b71",
      "parents": [
        "fbe685aae10a02054e247bd79857009104563324"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Aug 26 15:00:56 2025 +0000"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Aug 28 00:40:11 2025 +0200"
      },
      "message": "Bump sha.js from 2.4.11 to 2.4.12 in /lib/ts\n\nBumps [sha.js](https://github.com/crypto-browserify/sha.js) from 2.4.11 to 2.4.12.\n- [Changelog](https://github.com/browserify/sha.js/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/crypto-browserify/sha.js/compare/v2.4.11...v2.4.12)\n\n---\nupdated-dependencies:\n- dependency-name: sha.js\n  dependency-version: 2.4.12\n  dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "fbe685aae10a02054e247bd79857009104563324",
      "tree": "871a2b31f85305ef824d4ff011ff856f466c05ab",
      "parents": [
        "0a760ff35ab8f348001aeaf85d00dd43ab3fc1a7"
      ],
      "author": {
        "name": "Carel Combrink",
        "email": "carel.combrink@gmail.com",
        "time": "Thu Jun 05 08:38:07 2025 +0200"
      },
      "committer": {
        "name": "Jens Geyer",
        "email": "Jens-G@users.noreply.github.com",
        "time": "Thu Aug 28 00:36:39 2025 +0200"
      },
      "message": "Add cpp cross tests to the build workflow\n\n- Remove usage of v0.16 thrift files for C++ since UUID support was added\n- Need to install the locals for some of the unit tests\n- Fix UUID support for THeaderProtocol\n    - Without this the protocol went into an infinite loop due to virtual function calls that recursed to itself\n    - Best case was a crash, worst case was process got stuck\n- Fix UUID support for TProtocolTap\n- Sorted the known failures\n- Mark cpp and java ssl tests as known failures\n"
    }
  ],
  "next": "0a760ff35ab8f348001aeaf85d00dd43ab3fc1a7"
}
