Apache Thrift v0.13.0 Release Notes
Release Date: 2019-10-16 // over 4 years ago-
๐ New Languages
- (none)
๐ Deprecated Languages
- ๐ THRIFT-4723 - CSharp and Netcore targets are deprecated and will be removed with the next release) - use NetStd instead.
โ Removed Languages
- ๐ THRIFT-4719 - Cocoa language was removed) - use swift instead.
๐ฅ Breaking Changes
- ๐ THRIFT-4743 - compiler: removed the plug-in mechanism
- ๐ THRIFT-4720 - cpp: C++03/C++98 support has been removed; also removed boost as a runtime dependency
- ๐ THRIFT-4730 - cpp: BoostThreadFactory, PosixThreadFactory, StdThreadFactory removed
- THRIFT-4732 - cpp: CMake build changed to use BUILD_SHARED_LIBS
- ๐ THRIFT-4735 - cpp: Removed Qt4 support
- THRIFT-4740 - cpp: Use std::chrono::duration for timeouts
- THRIFT-4762 - cpp: TTransport::getOrigin() is now const
- THRIFT-4702 - java: class org.apache.thrift.AutoExpandingBuffer is no longer public
- THRIFT-4709 - java: changes to UTF-8 handling require JDK 1.7 at a minimum
- THRIFT-4712 - java: class org.apache.thrift.ShortStack is no longer public
- THRIFT-4725 - java: change return type signature of 'process' methods
- THRIFT-4805 - java: replaced TSaslTransportException with TTransportException
- THRIFT-2530 - java: TIOStreamTransport's "isOpen" now returns false after "close" is called
- THRIFT-4675 - js: now uses node-int64 for 64 bit integer constants
- THRIFT-4841 - delphi: old THTTPTransport is now TMsxmlHTTPTransport
- THRIFT-4536 - rust: convert from try-from crate to rust stable (1.34+), re-export ordered-float
๐ Known Issues (Blocker or Critical)
- โ THRIFT-3877 - C++: library don't work with HTTP (csharp server, cpp client; need cross test enhancement)
As3
- THRIFT-4784 - Thrift should throw when skipping over unexpected data
๐ Build Process
- ๐ THRIFT-2333 - RPMBUILD: Abort build if user did not disable ruby but ruby build will fail later on
- ๐ THRIFT-4689 - Pull changes from 0.12.0 release branch into master
- ๐ THRIFT-4690 - Update dlang deimos for OpenSSL 1.1 (use 1.1.0h tagged release instead of master)
- โฌ๏ธ THRIFT-4694 - Upgrade Java to Java 1.8
- ๐ THRIFT-4716 - Create a version alignment tool to make releases easier
- THRIFT-4760 - Install pkgconfig when using cmake
- ๐ฆ THRIFT-4769 - Change NuGet package to use netstd artifact
- THRIFT-4811 - Add cmake config module
- ๐ท THRIFT-4855 - go CI fails with "cannot find package "golang.org/x/tools/go/packages" in any of ..."
- ๐ท THRIFT-4864 - CI fails at netstd
- THRIFT-4874 - Thrift 0.12.0 Source Distribution (.tar.gz) Contains Hardlinks) - Extract Fails
- ๐ THRIFT-4896 - cpp and c_glib include paths are added to source files when building
- ๐ THRIFT-4966 - Git ignore files generated by the build
C glib
- THRIFT-4842 - Multiplexed protocol has a memory leak in set c_glib
- ๐ THRIFT-4878 - c_glib ThriftSocket support for unix domain sockets
- THRIFT-4950 - fix bind print error and Macro call errors thrift_server_socket
C
- โฑ THRIFT-3587 - C# TTLSSocket does not use timeout for opening the socket
- THRIFT-4024 - Skip() should throw on unknown data types
- THRIFT-4684 - Missing namespace and un-used private fields in WCF fault classes when enable WCF in C# code generation
- THRIFT-4715 - C# union "data" should be strongly-typed
- ๐ THRIFT-4723 - Consolidate C# and netcore into new netstd language target (and finally deprecate both C# and netcore bindings)
- THRIFT-4741 - Missing "inner" argument from one CTOR
- ๐ฆ THRIFT-4769 - Change NuGet package to use netstd artifact
- THRIFT-4859 - Enables changing 'UserAgent'
- THRIFT-4907 - strong named assemblies wanted
C++
- THRIFT-4384 - Using a concurrent client with cpp async is not safe.
- ๐ THRIFT-4441 - C++: support building lib without Boost
- ๐ THRIFT-4487 - gettimeofday: windows implementation not quoting source, applying license to foreign code
- ๐ง THRIFT-4593 - Unit Tests failing on Alpine Linux due to non-portable mutex initializers
- THRIFT-4678 - add noexcept cpp generator option
- ๐จ THRIFT-4720 - Drop support for C++03/C++98 and begin refactoring
- ๐ THRIFT-4730 - Remove pthread and boost::thread library support and use std::thread for C++11
- ๐ THRIFT-4735 - Remove C++ Qt4 support (leave Qt5) - Qt4 LTS ended in 2014
- ๐ THRIFT-4739 - Good old concurrency_test failing on windows builds again with some regularity
- ๐ THRIFT-4740 - Use std::chrono for timeout and remove old structures.
- ๐จ THRIFT-4762 - C++: Applied some C++11 refactorings to the runtime library and compiler
- THRIFT-4776 - Modernize c++11 code by clang-tidy
- THRIFT-4830 - Add to_string function for enum in C++ file generate
- ๐ THRIFT-4861 - Fix use of deprecated boost endian header; move to minimum boost 1.56.0
- ๐ป THRIFT-4936 - add depth limit type exception description
- THRIFT-4962 - Deadlock in TimerManager::stop
cocoa
- ๐ THRIFT-4719 - Remove cocoa language support