Package Release Info

thrift-python-0.25.0-160000.1.1

Update Info: Base Release
Available in Package Hub : 16.0

platforms

AArch64
ppc64le
s390x
x86-64

subpackages

python313-thrift

Change Logs

* Fri Oct 02 2026 mpluskal@suse.com
- Update to 0.25.0:
  * CVE-2026-93925: stack-based buffer overflow in the C++ varint
    writer, reached through THeaderProtocol frames (boo#1284093)
  * CVE-2026-91135: heap-based buffer overflow when the ZLIB transform
    is enabled on C++ THeaderTransport frames (boo#1284100)
  * CVE-2026-82459: integer underflow in the 32-bit C++
    THeaderTransport frame size leads to an out-of-bounds write
    (boo#1284077)
  * CVE-2026-93926: memory not released after its effective lifetime in
    THeaderTransport (boo#1284092)
  * CVE-2026-82458: allocation of resources without limits in the C++
    protocol reader (boo#1284076)
  * CVE-2026-85086: the Perl SSLSocket defaulted to SSL_VERIFY_NONE,
    leaving TLS unauthenticated (boo#1284078)
  * CVE-2026-85494: improper length handling and uncaught exceptions in
    the Python, Perl and PHP bindings (boo#1284079)
  * CVE-2026-91137: unvalidated quantity in PHP input causes unbounded
    allocation (boo#1284080)
  * CVE-2026-94642: uncaught exception in the PHP bindings
    (boo#1284081)
  * CVE-2026-94644: allocation of resources without limits in the PHP
    bindings (boo#1284097)
  * CVE-2026-94634: unbounded allocation and insecure default
    initialization in the Python bindings (boo#1284099)
  * CVE-2026-94650: uncontrolled recursion in the c_glib protocol
    reader (boo#1284082)
  * CVE-2026-85483: use of an uninitialized resource and a wrong status
    code in the c_glib bindings (boo#1284102)
  * CVE-2026-96289: uncontrolled recursion in the PHP bindings
    (boo#1284112)
  * CVE-2026-94653: inefficient algorithm complexity in the PHP bindings
    (boo#1284122)
  * CVE-2026-96287: inefficient algorithm complexity in the Perl
    bindings (boo#1284114)
  * CVE-2026-96286: uncaught exception in the Perl bindings
    (boo#1284115)
  * CVE-2026-94654: loop with an unreachable exit condition in the
    Python bindings (boo#1284121)
  * The remaining CVEs fixed by this release affect bindings this
    package does not build and are therefore not affected here:
    CVE-2026-85493 (boo#1284101, Dart and Java ME)
    CVE-2026-94635 (boo#1284090, Lua)
    CVE-2026-94633 (boo#1284091, Dart)
    CVE-2026-96990 (boo#1284094, Erlang)
    CVE-2026-94651 (boo#1284095, Java)
    CVE-2026-94645 (boo#1284096, node.js)
    CVE-2026-94639 (boo#1284098, Java)
    CVE-2026-96292 (boo#1284111, Lua)
    CVE-2026-96288 (boo#1284113, Erlang)
    CVE-2026-96277 (boo#1284116, Ruby)
    CVE-2026-94658 (boo#1284117, Lua)
    CVE-2026-94657 (boo#1284118, Java ME)
    CVE-2026-94656 (boo#1284119, Ruby)
    CVE-2026-94655 (boo#1284120, Lua)
    CVE-2026-86537 (boo#1284123, D).
* Sat Aug 15 2026 mpluskal@suse.com
- Build the bindings as _multibuild flavors of this one spec
  (@BUILD_FLAVOR@): perl, python and the new php. None links the
  C++ core, so they no longer extend its critical path. Each
  flavor needs its own Name: to keep its src and debug packages
  from colliding with the core's; the new thrift-rpmlintrc zeroes
  the resulting invalid-spec-name badness.
- New package php8-thrift: the Thrift\ class library plus the
  thrift_protocol accelerator extension.
- Fix the 15.x build, which failed everywhere: the
  suse_version >= 1550 guard forced Python 3.6. Use
  %{?sle15_python_module_pythons}, renaming the 15.x binary to
  python311-thrift. Add BuildRequires: gcc-c++, without which
  setup.py silently drops the fastbinary accelerator.
- Stop installing the Perl bindings twice - upstream's
  INSTALL_BASE=/usr/local overrode INSTALLDIRS=vendor. Drive
  Makefile.PL directly, dropping the bogus "mv
  %{_perl_vendorlib}" workaround. perl-thrift is now noarch and
  requires perl(Bit::Vector), without which
  Thrift::BinaryProtocol failed.
- Split libthrift_c_glib-devel out of libthrift-devel; a
  pkgconfig/*.pc glob had put all four .pc files in one package.
- Pin the library %files to %{version} instead of globbing
  libthrift-*.so, and assert %{libversion} in %build so a missed
  bump is an FTBFS.
- Add %check to every binding flavor. The C++ suite stays
  disabled - it needs a static Boost, which openSUSE lacks.
- Drop the dead java, ruby and qt5 bconds and the c bcond
  (default-on, so it only ever served to break the shipped
  libthrift_c_glib0), Conflicts: libthrift-0_11_0, %define
  oldpython and the backports.ssl_match_hostname Recommends;
  raise the Suggests floors to setup.py's tornado >= 6.3.0 and
  Twisted >= 24.3.0.
- Add License: and %license to every subpackage, switch to
  %ldconfig_scriptlets and %make_build, drop Group tags, the
  CXXFLAGS export and the redundant %make_install re-runs.
- Use rpmlint filter instead of setBadness
* Mon Jul 27 2026 dmueller@suse.com
- update to 0.24.0 (
    bsc#1272609, CVE-2026-41608,
    bsc#1272654, CVE-2026-58023,
    bsc#1272655, CVE-2026-55970,
    bsc#1272656, CVE-2026-49158,
    bsc#1272657, CVE-2026-48586,
    bsc#1272658, CVE-2026-48145,
    bsc#1272652, CVE-2026-58389,
    bsc#1272653, CVE-2026-55971,
    bsc#1272645, CVE-2026-48144,
    bsc#1272647, CVE-2026-45112,
    bsc#1272648, CVE-2026-43871,
    bsc#1272649, CVE-2026-55969,
    bsc#1272650, CVE-2026-55968,
    bsc#1272651, CVE-2026-58662,
    bsc#1272609, CVE-2026-41608):
  * THRIFT-5930 - thrift_server_socket() copies Unix socket paths
    into sockaddr_un.sun_path without bounds checking
  * #3585 - limit recursion depth in c_glib thrift_protocol_skip
  * #3507 - Add peer hostname validation to c_glib TLS client
  * #3393 - Fix parent class resolution in c_glib generated
    dispatch_call
  * THRIFT-3165 - Disable unsafe TLSv1.0 and TLSv1.1 by default
  * THRIFT-6021 - When C++ client with HTTP transport calls a
    oneway RPC method, it must not expect a response
  * THRIFT-6060 - C++ THttpClient does not reopen socket after
    server sends Connection: close
  * THRIFT-6073 - Allow injecting external SSL_CTX into C++
    SSLContext
  * #3597 - link UnitTests against libthriftz to resolve
    THeaderTransport vtable
  * #3597 - fix off-by-ten header bounds check in
    readHeaderFormat
  * #3569 - Add the cpp.ref (&) annotation to the recursive
    exception in Recursive.thrift
  * #3519 - Preserve private_optional field order
  * #3498 - change sprintf to snprintf to eliminate security
    warnings on OSX
  * #3506 - Enforce RFC 6125 wildcard placement in TSSLSocket
    hostname matching
  * #3508 - Replace memory-safety asserts with unconditional
    throws in TBufferTransports
  * #3431 - Remove another boost header from the public API
  * #3529 - nodejs+compiler: Add opt-in BigInt support for int64
    via js:bigint flag
  * #3461 - Migration *.sln to *.slnx (except c++ libs)
  * #2957 - Fix PHP cross-test server IPv4 binding
  * #3372 - Fix JavaScript exception construction implementation
    (ES6)
  * #3520 - added thrift-threat-model.md, SECURITY.md and
    security section to AGENTS.md
  * THRIFT-6030 - Harden Erlang protocol negative sizes
  * #3410 - Add byte-count limit to TCompactProtocol varint
    reader
  * THRIFT-5214 - go: Implement connection check in TSocket
  * THRIFT-5969 - Introduce gofmt for Go library
  * THRIFT-5996 - go: connection check should work for TLS
    sockets
  * THRIFT-6011 - Make compiled Go code formatting compatible
    with gofmt
  * THRIFT-6012 - Fix inverted regexp.MatchString arguments and
    precompile patterns in Go validator
  * THRIFT-6044 - Limit struct read/write recursion depth in Go
    library
  * THRIFT-6071 - Validate container size fits int32 range before
    narrowing conversion in TSimpleJSONProtocol
  * #3604 - Bound the container element count before the 64-bit
    size precheck in the Go JSON protocol
  * #3604 - widen container size precheck to 64-bit in go
    protocols
  * #3599 - check wire-supplied size in simple json ReadMapBegin
  * #3497 - Bump golang.org/x/sys to
    0.0.0-20220412211240-33da011f77ad
  * #3458 - Prevent concurrent calls to socketConn.Close() in Go
  * #3428 - Fix range check on 32-bit architectures
  * #3379 - Replace addr with factory in TServerSocket
  * #3410 - Add byte-count limit to TCompactProtocol varint
    reader
  * #3381 - added int range checks
  * #3618 - Bump jvm from 2.3.21 to 2.4.0 in /lib/kotlin
  * #3619 - Bump com.diffplug.spotless from 8.5.1 to 8.7.0 in
    /lib/kotlin
  * #3605 - enforce stringLengthLimit in
    TCompactProtocol.readBinary
  * #3574 - Bump com.diffplug.spotless from 8.4.0 to 8.5.1 in
    /lib/kotlin
  * #3572 - Bump org.jetbrains.kotlinx:kotlinx-coroutines-jdk8 in
    /lib/kotlin
  * #3452 - Add message byte tracking to consumeBuffer() in Java
    transports
  * #3434 - Bump jvm from 2.3.20 to 2.3.21 in /lib/kotlin
  * #3420 - Fix Java Spotless formatting
  * #3415 - Connect skip() to TConfiguration recursion limit
  * #3412 - Use bounded default for maxSkipDepth in TProtocolUtil
  * #3410 - Add byte-count limit to TCompactProtocol varint
    reader
  * #3396 - Enable TLS hostname verification in
    TNonblockingSSLSocket
  * #3390 - Enable TLS hostname verification in
    TSSLTransportFactory
  * THRIFT-5915 - Python 3.12+ is not supported due to distutils
  * THRIFT-5923 - UUID support for Python
  * THRIFT-6024 - Python THeaderTransport and TZlibTransport
    default max frame/decompressed size should be
    DEFAULT_MAX_FRAME_SIZE (16384000), not HARD_MAX_FRAME_SIZE
    (0x3FFFFFFF)
  * THRIFT-6043 - Harden Python binary protocol negative sizes
  * THRIFT-6067 - Python: pip install fails on setuptools < 69
    due to sys.exit() in setup.py (PEP 517 build backend)
  * THRIFT-6069 - suggestion for a few python perf improvements
  * THRIFT-6070 - Publish Python wheel distributions to PyPI
  * #3410 - Add byte-count limit to TCompactProtocol varint
    reader
  * #3413 - Use sslcompat hostname matcher in TSSLSocket
  * #3411 - Add default recursion depth limit to TProtocol.skip()
  * #3408 - Add decompressed payload size limit to Python
    THeaderTransport
  * #3377 - Optimize Python C extension readStruct for nested
    structs
  * #2957 - Fix PHP cross-test server IPv4 binding
* Thu Apr 30 2026 dmueller@suse.com
- update to 0.23.0 (bsc#1263557, CVE-2026-41602,
    bsc#1263492, CVE-2026-41604,
    bsc#1263438, CVE-2026-41605,
    bsc#1263365, CVE-2026-41606,
    bsc#1263321, CVE-2026-41607,
    bsc#1263322, CVE-2026-41636):
  * THRIFT-5877 - Add cpp cross tests
  * THRIFT-5866 - Dockerfile to support Ubuntu 24.04 LTS (Noble
    Numbat)
  * THRIFT-5909 - add Ruby in GitHub workflow
  * THRIFT-5649 - add go in GitHub workflow / action
  * THRIFT-5871 - Improve MAX_MESSAGE_SIZE check and friends
  * THRIFT-5911 - Inconsistent UUID compilation for aliased types
  * THRIFT-5912 - Assertion failed: `delta > 0`, file
    ThreadManagerTests.h, line 162
  * THRIFT-5880 - C++ TSocket on an IPv6-only system fails if you
    use a hostname of 127.0.0.1
  * THRIFT-3268 - warning: token pasting of ',' and `__VA_ARGS__`
    is a GNU extension
  * THRIFT-5887 - build/cmake/ should be prepended (not appended)
    to CMAKE_MODULE_PATH
  * THRIFT-5878 - Add UUID support for THeaderProtocol and
    TProtocolTap
  * THRIFT-5898 - Unable to build Thrift as a shared library on
    Windows
  * THRIFT-5939 - Replace GUID generation with stable UUID
    algorithm
  * THRIFT-5876 - Add Delphi WinHTTP client TLS1.3 support
  * THRIFT-5896 - Race condition in TServerSocket.Addr() method
  * THRIFT-5925 - UUID implementation in JAVA is not according to
    the Thrift Specification
  * THRIFT-5869 - Close the transport after TServerEventHandler
    deleteContext
  * THRIFT-5863 - Make TServerTransport able to customize the max
    message size
  * THRIFT-5774 - Add remote client's IP address to ServerContext
    in TServerEventHandler
  * THRIFT-4280 - Add async nonblocking ssl support in java
    client
  * THRIFT-5879 - java and kotlin cross tests fail in the GitHub
    action
  * THRIFT-5902 - Add net10 support
  * THRIFT-5874 - Introduce new type `MESSAGE_SIZE_LIMIT` in
    TTransportException
  * THRIFT-5937 - nodejs episodic generation does not handle
    extending services
  * THRIFT-5924 - UUID support for nodejs and nodets
  * THRIFT-4987 - TProtocolException: Bad version in
    readMessageBegin when using XHR client with C++ server
  * THRIFT-5924 - UUID support for nodejs and nodets
  * THRIFT-5935 - Fix deprecated non-canonical casts for PHP 8.5
    compatibility
  * THRIFT-5921 - Ubuntu focal fail to run composer install
  * THRIFT-5929 - Fix build failure on PHP 8.5 due to removed
    zend_exception_get_default
  * THRIFT-5927 - Cannot use reserved language keyword "None"
    with target language Python
  * THRIFT-5885 - TBinaryProtocolAccelerated incorrectly
    deserializes IntEnum to None
  * THRIFT-5923 - UUID support for Python
  * THRIFT-5926 - TSaslClientTransport.open() crashes with
    DIGEST-MD5 due to None initial response
  * THRIFT-5915 - Python 3.12+ is not supported due to distutils
  * THRIFT-5892 - PY_SSIZE_T_CLEAN error in some environments
  * THRIFT-5873 - mTLS broken with python THttpClient
  * THRIFT-792 - TSocket hides underlying exceptions when open()
    fails
  * THRIFT-5888 - declare support for free-threaded CPython in
    extension modules
  * THRIFT-5900 - Thrift Cross Test broken in Github (Python
    3.14)
  * THRIFT-5308 - implement ruby seq replyÂ
  * THRIFT-5910 - Add UUID support in Ruby
  * THRIFT-5906 - Remove Fixnum references to support modern Ruby
    versions
  * THRIFT-5905 - Add base64 and logger as explicit dependencies
  * THRIFT-5903 - Fixnum is no longer supported since Ruby 3.2
  * THRIFT-5687 - Ruby gems deprecation warning:
    Gem::Specification#has_rdoc= is deprecated with no
    replacement
  * THRIFT-4035 - Thrift ruby runtime does not send unique
    sequence IDs in requests according to the unit tests
  * THRIFT-1911 - IOError not being caught in socket.rb
  * THRIFT-4526 - Implement rubocop for ruby in the sca build,
    once clean into every make
  * THRIFT-5273 - warning in ruby version >= 2.4
  * THRIFT-5918 - Implement header protocol support for Ruby
  * THRIFT-5559 - Processor can be implemented on handler trait
    itself
  * THRIFT-5928 - skip() call on unknown binary field fails
    deserialization instead of graceful skipping over field
  * THRIFT-5739 - set_nodelay should be enabled for TTcpChannel
* Tue Oct 28 2025 steven.kowalik@suse.com
- Use pyproject macros to build and install.
* Thu Jun 19 2025 jfunk@funktronics.ca
- Update to 0.22.0:
  * ### Build Process
  - THRIFT-5836 - 0.21.0 fails to build from sources at Arch Linux: No rule
    to make target 'Thrift5272.thrift', needed by
    'gen-cpp/Thrift5272_types.h'
  - THRIFT-5860 - cmake 3.5 as a minimum version does not work with cmake
    4.0.0
  * ### C glib
  - THRIFT-5817 - [C++] Avoid copy of TUuid
  * ### C++
  - THRIFT-5637 - Thrift compiler should be able to output c++ Aggregate
    types
  - THRIFT-5667 - Make ThriftConfig.cmake relocatable
  - THRIFT-5817 - [C++] Avoid copy of TUuid
  - THRIFT-5821 - Cannot compile against aws-lc libcrypto (openssl
    replacement from AWS)
  - THRIFT-5841 - possible init/deinit conflict with manual initialization
    flag
  - THRIFT-5853 - Remove oldstyle casts from TBufferTransports and
    TCompactProtocol
  - THRIFT-5854 - TCompactProtocol readString checks maxMessageSize at wrong
    position and off by one
  - THRIFT-5868 - UUID Support for TCompactProtocol
  - THRIFT-5865 - Fix TBinayProtocol with list<UUID>
  * ### Compiler (General)
  - THRIFT-5823 - Fix illegal uses of exceptions as normal struct type
  - THRIFT-5835 - Allow exceptions to be used as regular struct datatype
  * # Delphi
  - THRIFT-5822 - Remove deprecated AnsiString functions from the library
  - THRIFT-5824 - Migrate, refactor and improve Delphi code generation test
    script
  - THRIFT-5825 - UUID constants lead to uncompileable Delphi code
  - THRIFT-5826 - binary constants create uncompilable Delphi code
  - THRIFT-5827 - enums in typedefs are not resolved in all cases
  - THRIFT-5837 - Delphi implementation for THRIFT-5835
  - THRIFT-5839 - incorrect cast under Win64
  - THRIFT-5850 - Switch IThriftConfiguration interface from Cardinal to
    Integer
  - THRIFT-5851 - Promote known total stream sizes for seekable stream
    transports properly
  - THRIFT-5856 - Client should validate HTTP status
  * ### Go
  - THRIFT-5833 - go: Combine I/O and original error in compiler generated
    Process functions
  - THRIFT-5845 - The write error for union fields should be TException
  - THRIFT-5859 - go: Generate a map for know values of an enum type
  * ### Java
  - THRIFT-5858 - Introduce new type MESSAGE_SIZE_LIMIT in
    TTransportException
  * ### netstd
  - THRIFT-5832 - Drop net6 support and add net9 instead
  - THRIFT-5838 - THttpTransport.FlushAsync does not include original
    exception
  - THRIFT-5852 - Promote known total stream sizes for seekable stream
    transports
  * ### Node.js
  - THRIFT-5811 - Add ES module support to JS codegen
  - THRIFT-5848 - Expose InputBufferUnderrunError in nodejs client
  - THRIFT-5849 - Expose createClient in browser version of nodejs package
  * ### PHP
  - THRIFT-1482 - Unix domain socket support under PHP
  - THRIFT-5829 - PHP lib Use of "static" in callables is deprecated notice
  * ### Python
  - THRIFT-5024 - tutorial\py.tornado\PythonServer.py failed under Tornado6
  - THRIFT-5847 - Python3.12 deprecation in THttpClient
  - THRIFT-5857 - Remove deprecated Tornado io_loop usage
  - THRIFT-5861 - Add isOpen method to TTornadoStreamTransport
  * ### Swift
  - THRIFT-4838 - add unix domain socket support to Swift TSocketTransport
    implementation
* Fri Feb 09 2024 dimstar@opensuse.org
- Add python-setuptools BuildRequires: fix build.
* Fri Dec 29 2023 fcrozat@suse.com
- Update download url.
* Mon Dec 05 2022 dmueller@suse.com
- update to 0.17.0:
  * ### C++
  * THRIFT-5093 - lib: cpp: test: clarify effect of MemoryPolicy on
    TMemoryBuffer
  * THRIFT-5510 - On Windows NOMINMAX and WIN32_LEAN_AND_MEAN are unset even
    if set before
  * THRIFT-5515 - Oneway requests can stuck in TNonblockingServer with
    TSSLSocket
  * THRIFT-5529 - Missing space "<::" in C++ generator
  * THRIFT-5576 - fix old-style cast at const value ctor/copy and redundant
    copy at ctor
  * ### Common LISP
  * THRIFT-5501 - Remove Common Lisp support
  * THRIFT-5567 - remove reference to common lisp namespace
  * ### Go
  * THRIFT-5495 - Go lib server not close client when shutdown
  * THRIFT-5527 - generated Process function in go will swallow exceptions
    defined in thrift IDL
  * THRIFT-5539 - Performance penalty of using TDebugProtocol.DuplicateTo
  * THRIFT-5569 - generated Go code crashes when reading invalid
    map/set/list
  * THRIFT-5583 - Add a skip_remote arg to go compiler
  * THRIFT-5605 - Go client middleware has no (easy) access to IDL
    exceptions
  * THRIFT-5609 - TJSONProtocol is unsafe to be used with TDeserializerPool
  * ### Java
  * THRIFT-4086 - Java compiler generates different meta data depending on
    order of structures in file
  * THRIFT-5485 - @SuppressWarnings is placed above Javadoc
  * THRIFT-5494 - byte count of
    FrameBuffer(AbstractNonblockingServer.readBufferBytesAllocated) is not
    subtracted
  * THRIFT-5502 - Is it necessary to report CONNECTION RESET as an ERROR?
  * THRIFT-5519 - Java async client loses exceptions in void methods
  * THRIFT-5520 - add method to convert Option type to java Optional
  * THRIFT-5521 - In Java lib, add param for option_type to generate JDK8
    optional types
  * THRIFT-5522 - Upgrade to gradle 6 for Java build
  * THRIFT-5525 - java gen to use reuse_objects instead of reuse-objects as
    a consistent param casing
  * THRIFT-5526 - java gen to use private_members instead of private-members
    as a consistent param casing
  * THRIFT-5533 - Fix Java warnings: @param, @return and deprecation
  * THRIFT-5543 - Java lib FieldMetaData should be more type-safe by adding
    type parameter to metadata registerations
  * THRIFT-5544 - add java code gen param to support including field
    annotation as metadata
  * THRIFT-5545 - Follow newer gradle convention in organizing source code
    directories
  * THRIFT-5552 - Apply clang-format to java code gen file
  * THRIFT-5553 - java library to use newer gradle API
  * THRIFT-5555 - Java codegen and library to support future-returning
    client interface and implementation
  * THRIFT-5557 - Move Java-only tests from /test to /lib/java
  * THRIFT-5560 - Use JUnit 5 (Jupiter) for Java unit tests
  * THRIFT-5562 - remove gradle wrapper jar file from source tree
  * THRIFT-5563 - fix deprecation and enable xlint for java library
  * THRIFT-5568 - Use spotless gradle plugin and google-java-format to
    enforce a consistent code format
  * THRIFT-5570 - update java lib document about gradle usage
  * THRIFT-5581 - Upgrade gradle version to 7.4+
  * THRIFT-5582 - Improve TProtocol.java
  * THRIFT-5584 - Use gradle toolchain to specify build time Java version
  * ### JSON
  * THRIFT-5549 - Json generator should indent properly while generating
    includes
  * THRIFT-5535 - Ability to support connection on OpenHarmonyOS
  * ### Perl
  * THRIFT-5532 - Perl Thrift/HttpClient.pm headers bug
  * ### Python
  * THRIFT-2059 - Support for Python 3.4 enums
  * THRIFT-5449 - Use select.poll instead of select.select in Python
    TNonblockingServer if available
  * THRIFT-5467 - CannotSendHeader exception with 0.15
  * THRIFT-5595 - TSocket errors with SSLSocket
  * ### Rust
  * THRIFT-4100 - Extract Rust read/write struct methods into a trait
  * ### Wish List
  * THRIFT-3461 - Support Method Deprecation
* Tue Jun 14 2022 dmueller@suse.com
- update to 0.16.0:
  * C++ library don't work with HTTP
  * Swift service generator doesn't support oneway
  * Deprecate Common Lisp support
  [#]## C++
  * Add support for Unix domain sockets on Windows 10 or later
  * C++ to_string and ostream operator not always generated
  * ServerSocket doesn't ignore SIGPIPE
  [#]## Erlang
  * Introduce delimiter and app_prefix options to erl generator
  * Invalid golang code generated for optional set<binary> with a default value
  * Go lib skip map value may cause stack overflow
  * Improve memory efficiency in go THeader implementation
  * Potential connection leaks caused by the connectivity check
  * Error: Constraint check failure for haxe.ds.ObjectMap.K
  [#]## Java
  * add support for partial deserialization of Thrift
  * fix issues found by spotbugs
  * Update java dependencies
  [#]## JavaScript
  * Wrong type mapping of thrift binary type
  [#]## netstd
  * MaxMessageSize reached exception thrown in TEndpointTransport
  * Support for deprecated methods (via annotation)
  * Add net 6 support
  * TThreadPoolAsyncServer using TFramedTransport mistakenly drops client
  * consolidate netstd server implementation details into one common model
  * Uncompilable code when .thrift struct 'System' exists
  * CA2254 Message template should be compile time constant
  [#]## Perl
  * Fix build-cpan-dist.sh to create a CPAN distribution correctly
  * Allow UDP Socket Client In Perl
  [#]## Python
  * Python TProcessPoolServer does not spawn expected number of worker processes
  * SystemError when using fast binary or compact protocol in python 3.10
  [#]## Rust
  * Make server optional
- drop patch thrift-pr2487-py310.patch (upstream)
- remove python2 subpackage