X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ceph%2Fsrc%2Fjaegertracing%2Fthrift%2FLANGUAGES.md;fp=ceph%2Fsrc%2Fjaegertracing%2Fthrift%2FLANGUAGES.md;h=923b045f8473796905238a6b2417bfbe7eae6127;hb=f67539c23b11f3b8a2ecaeeddf7a403ae1c442a8;hp=0000000000000000000000000000000000000000;hpb=64a4c04e6850c6d9086e4c37f57c4eada541b05e;p=ceph.git diff --git a/ceph/src/jaegertracing/thrift/LANGUAGES.md b/ceph/src/jaegertracing/thrift/LANGUAGES.md new file mode 100644 index 000000000..923b045f8 --- /dev/null +++ b/ceph/src/jaegertracing/thrift/LANGUAGES.md @@ -0,0 +1,391 @@ +# Apache Thrift Language Support # + +Guidance For: 0.13.0 | +[0.12.0](https://github.com/apache/thrift/blob/v0.12.0/LANGUAGES.md) | +[0.11.0](https://github.com/apache/thrift/blob/0.11.0/LANGUAGES.md) + +Thrift supports many programming languages and has an impressive test suite that +exercises most of the languages, protocols, and transports. Each build exercises +a matrix of thousands of possible combinations. Each language typically has a +minimum required version as well as support libraries - some mandatory and some +optional. The information provided below will help you assess whether you can +use Apache Thrift with your project. Obviously this is a complex matrix to +maintain and may not be correct in all cases - if you spot an error please inform +the developers using the mailing list, or better yet, +[Edit on GitHub](https://github.com/apache/thrift/edit/master/LANGUAGES.md). + +Apache Thrift currently uses two build systems. The `autoconf` build system is +the most complete and builds all supported languages, however it does not support +Windows.. The `cmake` build system works on Linux and Windows, and has been +designated by the project to replace `autoconf` however this transition will +take quite some time to complete. During that transition, the cmake build will +not support all languages. + +The Language/Library Levels indicate the minimum and maximum versions that are +used in the [continuous integration environments](build/docker/README.md) +(Appveyor, Travis) for Apache Thrift. Other language levels may be supported +for each language, however tested less thoroughly; check the README file inside +each lib directory for additional details. Note: while a language may contain +support for protocols, transports, and servers, the extent to which each is tested +as part of the overall build process varies. The definitive integration test for +the project is called the "cross" test which executes a test matrix with clients +and servers communicating across languages. + +Thrift's core transport (supported by all languages) is TSocket. +Thrift's core protocol is TBinary, supported by all languages except for JavaScript. + +
Language | +Since | +Build Systems | +Lang/Lib Levels (Tested) | +Low-Level Transports | +Transport Wrappers | +Protocols | +Servers | +Open Issues | +|||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
autoconf | cmake | +Min | Max | +Domain | File | Memory | Pipe | Socket | TLS | +Framed | Header | http | zlib | +Binary | Compact | JSON | Multiplex | +Forking | Nonblocking | Simple | Threaded | ThreadPool | +|||
ActionScript | +0.3.0 | ++ | FLEX SDK 4.6 | ++ | + | + | + | ActionScript | +|||||||||||||||||
C (glib) | +0.6.0 | ++ | 2.48.2 | 2.56.4 | ++ | + | + | + | C (glib) | +||||||||||||||||
C++ | +0.2.0 | ++ | C++11 | ++ | + | + | + | C++ | +|||||||||||||||||
C# | +0.2.0 Deprecated use netstd |
++ | .NET 3.5 / mono 3.2.8.0 | .NET 4.6.1 / mono 4.6.2.7 | ++ | + | + | + | C# (.NET) | +||||||||||||||||
Common LISP | +0.12.0 | ++ | SBCL 1.4.x | SBCL 1.5.3 | ++ | + | + | + | Common LISP | +||||||||||||||||
Dlang | +0.9.0 | ++ | 2.075.1 | 2.087.0 | ++ | + | + | + | D | +||||||||||||||||
Dart | +0.10.0 | ++ | 2.0.0 | 2.4.0 | ++ | + | + | + | Dart | +||||||||||||||||
Delphi | +0.8.0 | ++ | 2010 | unknown | ++ | + | + | + | Delphi | +||||||||||||||||
.NET Core | +0.11.0 Deprecated use netstd |
++ | 2.1.4 | 2.2.101 | ++ | + | + | + | .NET Core | +||||||||||||||||
.NET Standard | +0.13.0 | ++ | .NET 4.5+, .NET Standard 2.x | ++ | + | + | + | .NET Standard | +|||||||||||||||||
Erlang | +0.3.0 | ++ | 18.3 | 22.0 | ++ | + | + | + | Erlang | +||||||||||||||||
Go | +0.7.0 | ++ | 1.10.8 | 1.13.1 | ++ | + | + | + | Go | +||||||||||||||||
Haskell | +0.5.0 | ++ | 7.10.3 | 8.0.2 | ++ | + | + | + | Haskell | +||||||||||||||||
Haxe | +0.9.3 | ++ | 3.2.1 | 3.4.4 | ++ | + | + | + | Haxe | +||||||||||||||||
Java (SE) | +0.2.0 | ++ | 1.8.0_151 | 11.0.3 | ++ | + | + | + | Java SE | +||||||||||||||||
Java (ME) | +0.5.0 | ++ | unknown | ++ | + | + | + | Java ME | +|||||||||||||||||
Javascript | +0.3.0 | ++ | ES5 | ES6 | ++ | + | + | + | Javascript | +||||||||||||||||
Lua | +0.9.2 | ++ | 5.1.5 | 5.2.4 | ++ | + | + | + | Lua | +||||||||||||||||
node.js | +0.6.0 | ++ | 6.x | 10.x | ++ | + | + | + | node.js | +||||||||||||||||
node.ts | +0.12.0 | ++ | 3.1.6 | + | + | + | + | + | node.ts | +||||||||||||||||
OCaml | +0.2.0 | ++ | 4.04.0 | ++ | + | + | + | OCaml | +|||||||||||||||||
Perl | +0.2.0 | ++ | 5.22.1 | 5.26.1 | ++ | + | + | + | Perl | +||||||||||||||||
PHP | +0.2.0 | ++ | 7.0.22 | 7.2.19 | ++ | + | + | + | PHP | +||||||||||||||||
Python | +0.2.0 | ++ | 2.7.12, 3.5.2 | 2.7.15, 3.6.8 | ++ | + | + | + | Python | +||||||||||||||||
Ruby | +0.2.0 | ++ | 2.3.1p112 | 2.5.1p57 | ++ | + | + | + | Ruby | +||||||||||||||||
Rust | +0.11.0 | ++ | 1.35.0 | 1.35.0 | ++ | + | + | + | Rust | +||||||||||||||||
Smalltalk | +0.2.0 | ++ | unknown | ++ | + | + | + | Smalltalk | +|||||||||||||||||
Swift | +0.12.0 | ++ | 4.2.1 | ++ | + | + | + | Swift | +|||||||||||||||||
Language | +Since | +autoconf | cmake | +Min | Max | +Domain | File | Memory | Pipe | Socket | TLS | +Framed | Header | http | zlib | +Binary | Compact | JSON | Multiplex | +Forking | Nonblocking | Simple | Threaded | ThreadPool | +Open Issues | +
Build Systems | +Lang/Lib Levels (Tested) | +Low-Level Transports | +Transport Wrappers | +Protocols | +Servers | +