You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@thrift.apache.org by "slachiewicz (via GitHub)" <gi...@apache.org> on 2026/09/08 10:23:28 UTC

[PR] Update LANGUAGES.md with current versions and supported features [thrift]

slachiewicz opened a new pull request, #3820:
URL: https://github.com/apache/thrift/pull/3820

   ### Description
   
   This PR updates `LANGUAGES.md` to bring the language support matrix and documentation in step with recent releases (0.23.0, 0.24.0, and 0.25.0 development on master):
   
   - **Header & Navigation**:
     - Update guidance header to `0.25.0`
     - Add version links for `0.24.0`, `0.23.0`, and `0.22.0`
     - Update CI documentation reference from Travis CI to GitHub Actions and fix typo (`Windows..`)
   - **Missing Languages**:
     - Add **Kotlin** row (supported since 0.17.0 via `THRIFT-5548`, with autoconf/cmake builds, UUID, and CI/cross-test coverage)
   - **Field Types**:
     - Update **UUID** support status to green for **Java (SE)** (`THRIFT-5587`, `THRIFT-5925`), **PHP** (`THRIFT-5587`), **Rust** (`b6b6dc715`), and **Lua** (`THRIFT-4386`)
   - **Tested Language / Library Levels**:
     - **PHP**: Update to `8.1` - `8.5` (tested in CI workflow; PHP 7.x dropped)
     - **Python**: Update to `3.10` - `3.14` (tested in CI workflow; Python 2.x dropped)
     - **node.js**: Update to `20.x` (tested in CI and pinned in Dockerfiles)
     - **.NET**: Update to `.NET Standard 2.x, net8, net9, net10` (`THRIFT-5902`, `THRIFT-6002`)
     - **Lua**: Update to `5.1.5` - `5.4` (`THRIFT-4386`)
     - **Rust**: Update to `1.83.0` - `1.85.1`
   - **Build Systems**:
     - Mark **CMake** as supported (green) for **Javascript** and **node.js** (`BUILD_JAVASCRIPT` and `BUILD_NODEJS` in `CMakeLists.txt`)
   - **Transport Wrappers**:
     - Mark **zlib** transport wrapper as supported for **C (glib)** (`THRIFT-5265`)
   - **Hyperlinks**:
     - Fix broken `README.md` links for `javame`, `lua`, and `nodets` to directory trees


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@thrift.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Update LANGUAGES.md with current versions and supported features [thrift]

Posted by "slachiewicz (via GitHub)" <gi...@apache.org>.
slachiewicz commented on PR #3820:
URL: https://github.com/apache/thrift/pull/3820#issuecomment-5599410257

   Both lists check out. Every entry is corrected in #3834, verified against the source at 5c5e93e1e rather than taken on report:
   
   - Java SE now reads 8 / 17, on the CI bounds and the `options.release = 8` toolchain you pointed at.
   - Rust TLS, domain sockets and ThreadPool are marked supported: the `rustls` feature, `TServer::listen_uds` under `#[cfg(unix)]`, and the fixed-size worker pool in `TServer`.
   - Python Memory and Framed transports, and the Threaded and ThreadPool servers.
   - Kotlin reads 2.4.10, and Multiplex, zlib, Nonblocking and ThreadPool are marked supported.
   - Haxe Memory, on `TMemoryStream` and its round-trip tests.
   
   Since the table can't carry a condition, that PR also adds a short notes section: the `rustls` feature is off by default, `listen_uds` is Unix-only, and the Java and Kotlin rows report tested bounds rather than a maximum supported release.
   
   One I left for a separate discussion: Rust has a single server type, a fixed-size pool, and the row now marks it as both Threaded and ThreadPool. ThreadPool is clearly right; whether Threaded should stay is a judgement call I didn't want to bury in a corrections PR.
   
   *This comment was created with AI assistance.*
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@thrift.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Update LANGUAGES.md with current versions and supported features [thrift]

Posted by "HTHou (via GitHub)" <gi...@apache.org>.
HTHou commented on PR #3820:
URL: https://github.com/apache/thrift/pull/3820#issuecomment-5597872521

   With help from an AI tool, I checked the matrix against the source code and found a few more entries that appear to need updating:
   
   - **Rust — Domain sockets and ThreadPool:** Unix domain sockets are supported through [`listen_uds`](https://github.com/apache/thrift/blob/61ffe58/lib/rs/src/server/threaded.rs#L250), and [`TServer`](https://github.com/apache/thrift/blob/61ffe58/lib/rs/src/server/threaded.rs#L43) uses a fixed-size thread pool. Both entries should be marked as supported, with a Unix-platform note for domain sockets.
   - **Python — Memory and Framed transports:** Both [`TMemoryBuffer` and `TFramedTransport`](https://github.com/apache/thrift/blob/61ffe58/lib/py/src/transport/TTransport.py#L220) are implemented, but the matrix marks them as unsupported.
   - **Python — Threaded and ThreadPool servers:** Both [`TThreadedServer` and `TThreadPoolServer`](https://github.com/apache/thrift/blob/61ffe58/lib/py/src/server/TServer.py#L113) are implemented and should be marked as supported.
   - **Kotlin — Tested version:** The [Gradle plugin configuration](https://github.com/apache/thrift/blob/61ffe58/lib/kotlin/settings.gradle.kts#L19) uses **2.4.10**, while the new row lists **1.8**.
   - **Kotlin — Multiplex, zlib, Nonblocking and ThreadPool:** The cross-test server explicitly implements these options using the Java runtime. See the [zlib configuration](https://github.com/apache/thrift/blob/61ffe58/lib/kotlin/cross-test-server/src/main/kotlin/org/apache/thrift/test/TestServer.kt#L220) and [multiplex/server setup](https://github.com/apache/thrift/blob/61ffe58/lib/kotlin/cross-test-server/src/main/kotlin/org/apache/thrift/test/TestServer.kt#L258).
   - **Haxe — Memory transport:** `TMemoryStream` is available and has [round-trip tests](https://github.com/apache/thrift/blob/61ffe58/lib/haxe/test/src/tests/StreamTest.hx#L81), so Memory should be marked as supported.
   
   These observations are based on the source, build configuration and existing test code at the merge commit; I have not rerun the full cross-language test suite. Could these entries also be reviewed for a follow-up update?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@thrift.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Update LANGUAGES.md with current versions and supported features [thrift]

Posted by "Jens-G (via GitHub)" <gi...@apache.org>.
Jens-G merged PR #3820:
URL: https://github.com/apache/thrift/pull/3820


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@thrift.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Update LANGUAGES.md with current versions and supported features [thrift]

Posted by "HTHou (via GitHub)" <gi...@apache.org>.
HTHou commented on PR #3820:
URL: https://github.com/apache/thrift/pull/3820#issuecomment-5597822113

   Thanks for updating the support matrix! Two entries still seem out of date:
   
   - **Java SE:** The tested versions should be **8 / 17**, rather than **11 / 19**. CI [builds with JDK 17](https://github.com/apache/thrift/blob/61ffe58f641e6fe6d576d23ec164e6296d9a01ad/.github/workflows/build.yml#L312-L316) and deliberately [runs cross-tests with Java 8](https://github.com/apache/thrift/blob/61ffe58f641e6fe6d576d23ec164e6296d9a01ad/.github/workflows/build.yml#L1227-L1232). The [Gradle configuration](https://github.com/apache/thrift/blob/61ffe58f641e6fe6d576d23ec164e6296d9a01ad/lib/java/gradle/sourceConfiguration.gradle#L32-L43) also uses a Java 17 toolchain with `options.release = 8`. These are the CI-tested bounds, rather than a maximum supported Java version.
   - **Rust TLS:** This should be marked as **supported**, with a note that it requires the optional `rustls` feature. [THRIFT-6097](https://github.com/apache/thrift/commit/cdb7e5fbe8d5bd7c3dd6dae779d39974f65577f9) already added both client and server TLS support, as documented in the [Rust README](https://github.com/apache/thrift/blob/61ffe58f641e6fe6d576d23ec164e6296d9a01ad/lib/rs/README.md#tls).
   
   Could these entries be updated as well?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@thrift.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org