./devel/ruby-thrift, Ruby bindings for the Apache Thrift RPC system

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.15.0, Package name: ruby27-thrift-0.15.0, Maintainer: pkgsrc-users

The Apache Thrift software framework, for scalable cross-language services
development, combines a software stack with a code generation engine to build
services that work efficiently and seamlessly between C++, Java, Python, PHP,
Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml
and Delphi and other languages.

This package provides Ruby bindings for the Apache Thrift RPC system.


Required to run:
[lang/ruby24-base]

Required to build:
[pkgtools/cwrappers]

Master sites: (Expand)

Filesize: 3951.621 KB

Version history: (Expand)


CVS history: (Expand)


   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-25 18:49:37 by Adam Ciarcinski | Files touched by this commit (10) | Package updated
Log message:
thrift: updated to 0.15.0

0.15.0

Known Open Issues (Blocker or Critical)

THRIFT-3877 - C++: library don't work with HTTP (csharp server, cpp client; need \ 
cross test enhancement)
Removed Languages

THRIFT-5229 - ActionScript 3 support dropped
THRIFT-5347 - Haskell support dropped
Breaking Changes

THRIFT-5381 - possible collisions at VOID type with some 3rd-party libraries on \ 
Haxe cpp targets
THRIFT-5396 - deprecate netstd "Async" method postfix
THRIFT-5453 - go: NewTSocketConf and NewTSSLSocketConf no longer return an error
AS3

THRIFT-5229 - Deprecate/remove ActionScript 3 support
Build Process

THRIFT-5334 - version of thrift-maven-plugin is not sync with the main project
THRIFT-5394 - AppVeyor CI tries to download outdated cmake
THRIFT-5429 - build: autotools: add foreign to AM_INIT_AUTOMAKE
C glib

THRIFT-5244 - Dynamic exception specifications are deprecated in C++11[-Wdeprecated]
THRIFT-5265 - Add the zlib transport to c_glib
THRIFT-5399 - Fix socket leak in abnormal situation
THRIFT-5421 - Fix the problem of incorrect setting of errno in some files
C++

THRIFT-5341 - Fix Old-Style-Cast, Missing override and Possible noexcept
THRIFT-5342 - Apply 'noexcept' attribute to Init/Copy/Move Constructors and \ 
Assignments
THRIFT-5355 - Do not rely on compiler and check boundaries
D language

THRIFT-4303 - D deprecation warnings
THRIFT-4979 - Still D deprecation warnings about std.datetime.* in current master
THRIFT-5376 - Fix deprecation warnings in D library
Dart

THRIFT-5285 - Update to dart 2, widen range on http package
Delphi

THRIFT-5350 - 0.14.0 fails to build on non-x86
THRIFT-5438 - Inconsistent handling of exceptions during message read vs. \ 
message write phase
THRIFT-5384 - Improved error message for HTTP transports
THRIFT-5385 - XML-HTTP client reports IsOpen=TRUE even if it is not
THRIFT-5386 - XML-HTTP client may throw "max message size reached" \ 
incorrectly
THRIFT-5387 - Improved and simplified Delphi test setup
THRIFT-5390 - Named Pipes transport hardening
THRIFT-5428 - Prevent costly reallocations to improve performance
THRIFT-5437 - Make TProtocolImpl CTOR virtual
Documentation

THRIFT-5332 - Question: list all the reserved words in thrift doc
THRIFT-5348 - Update debian/copyright
Erlang

THRIFT-5377 - Remove Erlang R16 support
Go

THRIFT-5337 - Go set fields write improvement
THRIFT-5353 - Namespace from type is ignored in generated code
THRIFT-5358 - Add go.mod file(s)
THRIFT-5369 - Malformed payload can still cause huge allocations
THRIFT-5389 - Thrift compiler generates uncompilable go code around optional \ 
constants
THRIFT-5404 - TTransportException.Timeout would correctly return true when it's \ 
connect timeout during TSocket.Open call
THRIFT-5447 - Update supported Go versions before 0.15.0 release
THRIFT-5453 - go: NewTSocketConf should not call net.ResolveTCPAddr
THRIFT-5459 - Adding a new exception to an endpoint is kinda breaking in go
THRIFT-5453 - Defer DNS lookups from NewTSocketConf (without any timeout check) \ 
to TSocket.Open (subject to ConnectTimeout set in TConfiguration)
THRIFT-5459 - Client calls will return TApplicationException with MISSING_RESULT \ 
when the result is a struct but is unset, and no other error is known.
Haskell

THRIFT-5347 - Deprecate Haskell bindings
Haxe

THRIFT-5370 - Haxe 4 compatibility
THRIFT-5381 - possible collisions at VOID type with some 3rd-party libraries on \ 
Haxe cpp targets
THRIFT-5393 - Incorrect namespaces for included types
THRIFT-3036 - create official haxelib Thrift package
THRIFT-5413 - Int vs String in method get_size required by property size
Java

THRIFT-5375 - Put org.apache.tomcat.embed:tomcat-embed-core into scope test
THRIFT-5383 - TJSONProtocol Java readString throws on bounds check
THRIFT-5400 - Java library does not export the .annotation package
THRIFT-5425 - Throw an exception when reading TSimpleJson in Java
THRIFT-5430 - FieldMetaData synchronized method can trigger deadlock during \ 
static class initialization in JVM native code
THRIFT-5432 - TSaslTransport throw TTransportException of MaxMessageSize reached
THRIFT-5433 - Add Counter To Thread Name of TThreadPoolServer
JavaScript

THRIFT-3508 - JS:TS Generator set all fields of the struct as required
Lua

THRIFT-5417 - Fix Lua compiler omitting default values in Lua service functions
THRIFT-5439 - Lua Generator does not support const i64
netstd

THRIFT-5354 - disable IDE0083 warning
THRIFT-5382 - Netstd default list/set enums values are generated incorrectly in \ 
some cases
THRIFT-5395 - inconsistent treatment of methods ending in "Async"
THRIFT-5396 - deprecate "Async" method postfix
THRIFT-5408 - Support for deprecated methods (via annotation)
THRIFT-5414 - Use of specific parameter names generates uncompileable code
THRIFT-5442 - Separate client service calls into send/recv methods and make them \ 
public
THRIFT-5444 - Netstd generator produces uncompileable code for enums ending with \ 
"_result" or "_args"
THRIFT-5445 - "cancellationToken" cannot be used as argument name
THRIFT-5236 - THttpTransport.cs still has bad timeout code
THRIFT-5349 - Add net5.0 as supported platform
THRIFT-5373 - HTTP status in case of Protocol/Transport exceptions
THRIFT-5391 - Named pipes transport hardening
THRIFT-5398 - ThreadPoolServer not stoppable via CancellationToken
THRIFT-5407 - Keep support for .NET Core 3.1
THRIFT-5419 - Incorrect usage of thread pool in TThreadPoolAsyncServer may lead \ 
to poor performance
THRIFT-5422 - add threadpool server to netstd test suite impl
THRIFT-5431 - Response should include 'content-type' header
THRIFT-5436 - Timeout.Infinite is not a good default
PHP

THRIFT-5318 - PHP 8 compatible version of binary protocol
THRIFT-5440 - Add php8 to composer.json
Python

THRIFT-5352 - Python: IDL exceptions with no fields can't be instantiated
Ruby

THRIFT-5312 - The Ruby compilation configuration in the .gemspec file is \ 
modified to be compatible with later bundler versions.
THRIFT-5367 - Ruby library crashes when using GC.compact
Rust

THRIFT-4098 - Support user-defined output namespaces in generated Rust modules
THRIFT-4101 - Make auto-generated Rust enums and unions more user-extensible
THRIFT-5314 - Enum forward compatibility
THRIFT-5363 - All-caps constant rendered incorrectly
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2021-04-12 21:23:27 by Adam Ciarcinski | Files touched by this commit (7) | Package updated
Log message:
thrift: updated to 0.14.1

0.14.1

Known Open Issues (Blocker or Critical)

THRIFT-3877 - C++: library don't work with HTTP (csharp server, cpp client; need \ 
cross test enhancement)
THRIFT-5098 - Deprecated: "The high level Network interface is no longer \ 
supported. Please use Network.Socket." and other Haskell issues
THRIFT-5245 - NPE when the value of map's key is null

Deprecated Languages

THRIFT-5347 - Deprecate Haskell bindings

Build Process

THRIFT-5334 - version of thrift-maven-plugin is not sync with the main project

Delphi

THRIFT-5350 - 0.14.0 fails to build on non-x86

Go

THRIFT-5353 - Namespace from type is ignored in generated code

Python

THRIFT-5352 - Python: IDL exceptions with no fields can't be instantiated

Rust

THRIFT-5299 - rs implementation compact protocol seq_id should not use zigzag \ 
encoding.
   2021-03-21 13:44:03 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-thrift: update to 0.14.0

0.14.0 (2021-03-08)

Ruby

* THRIFT-5281 - Some warning messages need to be fixed
* THRIFT-4707 - Enable maintainers to upload newer versions of Ruby
  Gem of Thrift
* THRIFT-5061 - Pin Ruby's rack version to 2.0.8
* THRIFT-5100 - Gem::InstallError: byebug requires Ruby version >= 2.4.0.
* THRIFT-5266 - release ruby library thrift 0.13.0
   2019-11-10 19:05:33 by Adam Ciarcinski | Files touched by this commit (11) | Package updated
Log message:
thrift: updated to 0.13.0

0.13.0

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

Compiler (General)
THRIFT-4743 - Remove the compiler plug-in mode

contributed
THRIFT-4897 - UT of thrift-maven-plugin failed

D language
THRIFT-4690 - Update dlang deimos for OpenSSL 1.1 (use 1.1.0h tagged release \ 
instead of master)
THRIFT-4724 - dlang dub.json dependency for openssl is too restrictive
THRIFT-4918 - dlang name conflict

dart
THRIFT-4654 - Thrift Dart port is not compatible with Dart 2

Delphi
THRIFT-4024 - Skip() should throw on unknown data types
THRIFT-4841 - THTTPTransport relies on activeX component
THRIFT-4843 - http:// and https:// schemes are switched in test client
THRIFT-4862 - better ToString() support for enums and container types
THRIFT-4863 - better indication of WinHTTP errors
THRIFT-4881 - Allow TLS1.1 and TLS1.2 over WinHTTP even when not configured as \ 
systemwide default
THRIFT-4882 - Autodetect proxy settings with WinHTTP
THRIFT-4884 - Add serialisation performance test for Delphi
THRIFT-4886 - More detailed error information for WinHTTP transport
THRIFT-4894 - Enable automatic content encoding handling for gzip,deflate in the \ 
WinHTTP client
THRIFT-4939 - TThriftListImpl.Sort() does not use comparer
THRIFT-4944 - Field IDs > 255 fail with compact protocol

Documentation
THRIFT-4697 - Create updated release procedures
THRIFT-4808 - Update LANGUAGES.md on master to reflect master
THRIFT-4933 - Incorrect description in the 0.12.0 version of the documentation

Erlang
THRIFT-4583 - Support rebar3 for erlang builds
THRIFT-4744 - Erlang help intendation not aligned

Go
THRIFT-4024 - Skip() should throw on unknown data types
THRIFT-4612 - Add THeader for Go
THRIFT-4747 - The 'omitempty' tag should not be appended to optional fields that \ 
have a default value
THRIFT-4797 - Generated Go code produces name collisions on imports
THRIFT-4908 - reader&writer in golang's TBinaryProtocol is not necessary and \ 
misleading

haskell
THRIFT-4834 - CI error at Haskell: Failed to load interface for `Network'
THRIFT-4955 - Haskell test broken due to extension to CompactProtoTestStruct
THRIFT-4956 - DebugProtoTest_Main.hs: Invalid ThriftType 128

haxe
THRIFT-4024 - Skip() should throw on unknown data types
THRIFT-4812 - haxelib readme still points to old ASF git repo

HTML
THRIFT-4763 - HTML compiler produces invalid HTML document

Java
THRIFT-2530 - TIOStreamTransport's isOpen() always be true even if close() was \ 
called.
THRIFT-4368 - Guaranteed NPE in TBaseAsyncProcessor.java
THRIFT-4469 - isServing is not thread safe
THRIFT-4481 - TBinaryProtocol.writeMessageEnd isn't throwable exception
THRIFT-4695 - Pre-Size Java Collections in Union
THRIFT-4696 - NonBlocking Server: Use case-switch Statement Instead of if-else \ 
Clauses
THRIFT-4702 - Improve AutoExpandingBuffer
THRIFT-4704 - Streamline TDeserializer Implementation
THRIFT-4709 - Use StandardCharset UTF-8
THRIFT-4711 - Improve Immutable None Type Instantiation
THRIFT-4712 - Improve Performance of ShortStack
THRIFT-4713 - Review of TBaseHelper.java
THRIFT-4714 - Java TFramedTransport calls write twice for each flush
THRIFT-4725 - Change Return Type Signature of Process Methods
THRIFT-4726 - Remove SLF4J Logging Guards
THRIFT-4748 - Add Jitpack support
THRIFT-4766 - JDK9+ fails on missing annotations
THRIFT-4773 - TSaslTransport should relay underlying TTransportException to \ 
TSaslTransportException
THRIFT-4805 - Suppress excessive logging of SASL TTransportExceptions in case of \ 
END_OF_FILE
THRIFT-4849 - Do not Ignore InterruptedException
THRIFT-4851 - Remove All Calls To printStackTrace
THRIFT-4857 - Java field hash code implementation inconsistent with equals.
THRIFT-4858 - Java TThreadPoolServer: confusing error message on closed socket
THRIFT-4865 - warning: [deprecation] UTF_8 in Charsets has been deprecated
THRIFT-4899 - Generated TypeScript declarations incorrectly references types \ 
when there is more than 1 include
THRIFT-4945 - Log output mode is not standardized
THRIFT-4957 - testSanePartsOfCompactProtoTestStruct FAILED

JavaScript
THRIFT-4675 - JS code generators not handling int64 type properly for constants \ 
and for TypeScript type mappings
THRIFT-4728 - Cleanup for the double rendering test in JS
THRIFT-4737 - thrift.js does not use customHeaders in jqRequest
THRIFT-4745 - warning C4305: 'initializing' : truncation from '"__int64' to \ 
'long'
THRIFT-4757 - grunt-shell-spawn drags in sync-exec which has a security notice

netcore
THRIFT-4024 - Skip() should throw on unknown data types
THRIFT-4722 - Netcore 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-4742 - Typo "cannot read from null input stream" on write
THRIFT-4769 - Change NuGet package to use netstd artifact
THRIFT-4919 - THttpTransport.cs (netstd) and THttpClientTransport (netcore) have \ 
bad timeout code

netstd
THRIFT-4768 - Remove "nullable" option from the code base (netstd ONLY)
THRIFT-4772 - fully enable server-side usage of framed/buffered transports
THRIFT-4813 - NamedPipes may not work in all cases
THRIFT-4816 - JSONTransports Context.WriteAsync/ReadAsync are badly named
THRIFT-4817 - Add string CTOR to TTlsSocketTransport
THRIFT-4818 - Test client should use cancellation token
THRIFT-4821 - Normalize TServerSocketTransport constructors in netstd
THRIFT-4822 - Refactor bool CTOR flags into enum type
THRIFT-4824 - Logger deprecation warnings in tutorial
THRIFT-4825 - Align TTlsServerSocketTransport constructors with \ 
TServerSocketTransport - Breaking Change
THRIFT-4829 - HTTP server transport lacks TransportFactory arguments
THRIFT-4831 - interface ITProtocolFactory should be class TProtocolFactory again
THRIFT-4832 - superfluous backing field causes CS0169 "field never used"
THRIFT-4839 - Remove embedded buffering/framed options from TCP transports
THRIFT-4840 - Update the README in the netstd tutorial to include references to \ 
the new buffering arguments
THRIFT-4848 - Add ability to set Content-Type,Accept headers in HTTP client
THRIFT-4853 - TServerFramedTransport is now obsolete and can be removed
THRIFT-4854 - oneway calls do not work over HTTP
THRIFT-4860 - Allow changing "User-Agent"
THRIFT-4879 - general performance improvements for netstd library
THRIFT-4891 - Align HTTP test client with all other variants
THRIFT-4893 - Enable automatic content encoding handling for gzip,deflate in the \ 
HTTP client
THRIFT-4898 - Pipe write operations across a network are limited to 65,535 bytes \ 
per write.
THRIFT-4919 - THttpTransport.cs (netstd) and THttpClientTransport (netcore) have \ 
bad timeout code

node.js
THRIFT-3060 - Node.js client retry logic doesn't flush offline queue on reconnect
THRIFT-4675 - JS code generators not handling int64 type properly for constants \ 
and for TypeScript type mappings
THRIFT-4738 - Generated typescript type definition files are incorrect
THRIFT-4771 - THeader for node.js
THRIFT-4809 - Javascript episodic code generation
THRIFT-4844 - createConnection ignores connect_timeout option

perl
THRIFT-4691 - The perl CPAN module contains no tests

PHP
THRIFT-4751 - Missing imports in TProtocol (phpdoc related only)
THRIFT-4794 - Finish adding json protocol to the php cross test
THRIFT-4807 - PHP extension segfaults if reference is used in input
THRIFT-4845 - PHP's TCurlClient ignores timeout values smaller that 1 second

python
THRIFT-1549 - Python TSSLSocket: Shutdown cleanly
THRIFT-4733 - Address already in use with python unit test
THRIFT-4767 - support tcp keepalive in python
THRIFT-4778 - Python protocol factories do not derive from TProtocolFactory
THRIFT-4779 - Python, Java TMultiplexedProcessor do not raise TProtocolException
THRIFT-4780 - TMultiplexedProcessor is not fully tested or implemented in Python
THRIFT-4783 - Thrift should throw when skipping over unexpected data
THRIFT-4798 - Fix python THttpServer to honor correct oneway reply semantics
THRIFT-4892 - SASL data type exception for PLAIN
THRIFT-4920 - Binary constants emit non-binary Python literals

ruby
THRIFT-4721 - Installing the ruby gem on systems without make fails in the \ 
build_ext task.
THRIFT-4971 - Fix lib/rb/spec/union_spec.rb so that CI succeeds

rust
THRIFT-4953 - Unspecified Field Identifier Creates Non Compiling Rust Code
THRIFT-4960 - Bare Trait Warnings

Swift
THRIFT-4902 - Swift compatibility with Swift 4.2, 5.0 and 5.1

Test suite
THRIFT-4301 - configuring --without-python and --without-py3 still invokes py3 \ 
tests in make cross
THRIFT-4405 - Incorrect handling of sequence numbers that wrap to negative
THRIFT-4794 - Finish adding json protocol to the php cross test
THRIFT-4969 - PHP test doesn't check the code generation with php:classmap

Tutorial
THRIFT-4426 - repository should not include symbolic links
THRIFT-4965 - Perl tutorial server doesn't work due to the lack of use statement
THRIFT-4967 - Node.js tutorial server fails if the zip function invoked
THRIFT-4968 - Makefile.am in the Ruby tutorial refers to Python directory
THRIFT-4970 - PHP tutorial doesn't work with Thrift v0.12.0+

Typescript
THRIFT-4675 - JS code generators not handling int64 type properly for constants \ 
and for TypeScript type mappings
   2019-09-18 13:27:53 by Adam Ciarcinski | Files touched by this commit (17) | Package updated
Log message:
thrift: updated to 0.12.0 and split into language modules

Thrift 0.12.0

New Languages
* Common LISP (cl)
* Swift
* Typescript (nodets)

Deprecated Languages
* Cocoa

Breaking Changes (since 0.11.0)
* Rust enum variants are now camel-cased instead of uppercased to conform to \ 
Rust naming conventions
* Support for golang 1.6 and earlier has been dropped.
* PHP now uses the PSR-4 loader by default instead of class maps.
* method signatures changed in the compiler's t_oop_generator.
* The C (GLib) compiler's handling of namespaces has been improved.

Known Issues (Blocker or Critical)
* build: use a single build system for thrift
* build: bootstrap.sh is missing from source tarball
* csharp: socket exhaustion in csharp implementation
* cocoa: Getters for fields defined with uppercase names do not work
* cocoa: Extended services aren't subclasses in generated Cocoa
* cocoa: Thrift de-capitalizes the name of IsSet property in Cocoa
* cpp: the http implementation is not standard; interop with other languages is \ 
spotty at best
* cpp: Impossible to build Thrift C++ library for Android (NDK)
* cpp: Using multiple async services simultaneously is not thread-safe
* haskell: Defaulted struct parameters on a service generates invalid Haskell
* nodejs: Exception swallowed by deserialization function
* nodejs: map<i64,value> key treated as hex value in JavaScript
* nodejs: ERROR in ./node_modules/thrift/lib/nodejs/lib/thrift/connection.js \ 
Module not found: Error: Can't resolve 'child_process'
* nodejs: Sequence numbering for multiplexed protocol broken
* php: sequence and reconnection management issues
* php: Error during deserialization int64 on 32-bit architecture
* php: thrift type i64 java to php serialize/deserealize not working
* php: PHP gets stuck in infinite loop
* python: sending int or float in a double field breaks the connection
* python: unix sockets can get stuck forever
* python: generated code is out of order and causes load issues
* py3: UnicodeDecideError in Python3

Build Process
* D language docker images need demios for libevent and openssl fixed to \ 
re-enable make cross on dlang
* Use Ubuntu Bionic (18.04 LTS) for CI builds instead of Artful (17.10)
* Define CI operating system coverage rules for the project and (hopefully) \ 
simplify CI a little more
* ubuntu install instructions broken on 16.04
* Appveyor builds are failing due to a haskell / cabal update in chocolatey
* optimize Dockerfile (only onetime apt-get update)
* rm `build/docker/ubuntu-trusty/Dockerfile.orig`
* Ubuntu Artful doesn't appear to be compatible with Thrift and Haxe 3.4.2
* DLang Client Pool Test fails sporadically
* CL tutorial build fails sporadically
* Make haxelib download quiet so it doesn't blow up the build log
* bootstrap.sh fails if automake=1.16.1

c_glib
* The C (GLib) compiler's handling of namespaces has been improved.
* glibC compilation issue
* c glib is unable to handle client close unexpectedly

cl (new language support in 0.12.0)
* Common Lisp support

csharp
* reserved Csharp keywords are not escaped in some cases
* C# async mode generates incorrect code with inherited services
* IAsyncResult style methods not being supported by certain transports leads to \ 
issues in mixed ISync/IAsync use cases
* Allow TBufferedTransport to be used as base class
* XML docs; code cleanup (tabs->spaces; String->string)
* protected ExceptionType type member of TApplicationException cannot be accessed
* JSONProtocol Base64 Encoding Trims Padding
* Missing dispose calls in ThreadedServer & ThreadpoolServer
* keep InnerException wherever appropriate
* IAsyncResult not supported by layered transports (buffered/framed)

cpp
* Typecasting problem on list items
* TNonblockingServer throwing THRIFT LOGGER: TConnection::workSocket(): \ 
THRIFT_EAGAIN (unavailable resources)
* TBufferTransports.h does not compile under Visual Studio 2017
* TNonblockingServer crash because of limitation of select()
* TZlibTransport.cpp doesn't ensure that there is enough space for the zlib \ 
flush marker in the buffer.
* ZeroMQ contrib library needs a refresh
* TSSLServerSocket incorrectly prints errors
* Move `TAsyncProtocolProcessor` into main thrift library
* evhttp_connection_new is deprecated; use evhttp_connection_base_new

compiler
* Compiler cannot be compiled on macOS(maybe also on other platforms with clang)
* Thrift generates wrong Python code for immutable structures with optional members
* thrift generated code is not stable for constants
* Avoid updating Thrift compiler generated code if the output has not changed
* Visual Studio Compiler project should link runtime statically in release builds
* plugin.thrift t_const_value is not used as a union in C++ code -- fix this
* Dealing with language keywords in Thrift (e.g. service method names)
* repeated runs of compiler produce different binary output at plugin interface

dlang
* Thrift will not build with dlang 2.078 or later
* dlang servers logError on normal client disconnection
* D language docker images need demios for libevent and openssl fixed to \ 
re-enable make cross on dlang

dart
* Effective Dart and Exceptions
* Shouldn't download dart.deb directly.

delphi
* Calling wrong exception CTOR leads to "call failed: unknown result" \ 
instead of the real exception being thrown
* uncompileable code with member names that are also types under specific conditions
* Add Async implementation via IFuture
* Possible invalid ptr AV with overlapped read/write on pipes
* Thrift exceptions should derive from TException
* buffered transport broken when trying to re-open a formerly closed transport
* Move Thrift.Console.pas out of the Library
* Allow a default service as fallback for multiplex processors connected by old \ 
clients
* Large writes/reads may cause range check errors in debug mode
* Compiler directive should match Delphi XE4
* First line in Console duplicated
* FPU ctrl word settings may cause an unexpected "denormalized" error

erlang
* Erlang records should use map() for map type
* Erlang records should allow 'undefined' for non-required fields
* Fix erlang tutorial unpack on Windows
* Ubuntu Xenial erlang 18.3 "make check" fails

golang
* Support for golang 1.6 and earlier has been dropped.
* Go generator assigns strings to field in const instead of pointers.
* Unions Field Count Does Not Consider Binary
* Golang: Panic on p.c.Call when using deprecated initializers
* Required field incorrectly marked as set when fieldType does not match
* Golang: -remote.go client cleanup
* TSimpleServer can exit Accept loop with lock still acquired
* Add support for go 1.10
* golang tests rely on gomock, which has change behaviour, causing tests to fail
* Communication crash when using binary/compact protocol and zlib transport
* golang race detected when closing listener socket

haskell
* Haskell builds with older cabal cannot reconcile complex version requirements

java
* Thrift does not compile due to Ant Maven task errors
* Compiling Thrift from source: Class \ 
org.apache.tools.ant.taskdefs.ConditionTask doesn't support the nested \ 
"typefound" element
* proposal: add nullability annotations to generated Java code
* Generate missing @Nullable annotations for Java iterator getters
* Getter of binary field in Java creates unnecessary copy
* libthrift is deployed on central with pom packaging instead of jar
* Java Configure Fails for Ant >= 1.10
* Java libraries missing from package when using cmake
* pom files are not generated or provided in the build
* Maven can't download resource from central when behind a proxy and won't use \ 
local repository
* Optional rethrow of unhandled exceptions in java processor
* Able to set keyStore and trustStore as InputStream in the \ 
TSSLTransportFactory.TSSLTransportParameters
* Pass message of unhandled exception to optional rethrow.
* Remove assertion in Java SASL code that would be ignored in release builds
* Include popular IDE file templates to gitignore
* Make TThreadPoolServer.executorService_ available in inherited classes and \ 
refactor methods to be able customization
* Fix logic of THRIFT-2268
* Increase Java Socket Buffer Size
* Remove Magic Number In TFIleTransport

js
* JavaScript: Use modern Promise implementations
* let / const variable decorators for es6 compiler
* ES6 Classes
* JS: readI32 performance on large arrays is very poor in Chrome
* js and nodejs libraries need to be refreshed with current libraries
* thrift.js: Incorrect usage of 'this' in TWebSocketTransport.__onOpen
* Deserialization of nested list discards content
* JS WebSocket client callbacks invoked twice on parallel requests
* Duplicate declaration of InputBufferUnderrunError in \ 
lib/nodejs/lib/thrift/json_protocol.js
* Add prettier for consistent JS code formatting

lua
* lua client uses two write() calls per framed message send
* Can't "make install" Lua Library

netcore
* .NET Core Server doesn't close properly when cancelled
* Update .NET Core components, add tests for .Net Core library and .Net Core \ 
compiler, fix bugs and build process
* JSONProtocol Base64 Encoding Trims Padding

node.js
* Error handling malformed arguments leaks memory, corrupts transport buffers \ 
causing next RPC to fail
* Memory leak while calling oneway method
* add typescript directory support
* TBufferedTransport can leave corrupt data in the buffer
* Node.js Fileserver webroot path
* Unix domain socket support for NodeJS client
* node.js json_protocol throws error in skip function
* NodeJS: Expose Int64 from browser.js for consumption by browser
* NodeJS warning on binary_protocol writeMessageEnd when seqid = 0

perl
* Replace the use of Perl Indirect Object Syntax calls to new()
* Thrift CPAN release is missing Makefile.PL and the clients are unable to build \ 
the module
* Perl CPAN Packaging Improvements

php
* PHP generator use PSR-4 default
* PHP generated code match PSR-2
* Extending Thrift class results in "Attempt serialize from non-Thrift \ 
object"
* TSocket block on read
* migrate php library to psr-4
* infinite loop in latest PHP library
* TBufferedTransport must have underlying transport
* lib/php/test should be checked for PSR-2
* add phpcs back
* php library use PSR-2
* TCurlClient doesn't check for HTTP status code
* TCurlClient: show actual error message when throwing TTransportException
* Add stream context support into PHP/THttpClient
* reduce php library directory depth

python
* Twisted, slots, and void method fails with "object has no attribute \ 
'success'"
* Potentially server-crashing typo in Python TNonblockingServer
* Supporting TBinaryProtocolAccelerated protocol when using \ 
TMultiplexedProcessor in Python
* Outdated cipher string in python unit test
* python build on Vagrant Windows boxes fails
* THeader for Python
* make socket backlog configurable for python
* Python: cleanup socket timeout settings

ruby
* Thrift RSpec test suite fails with Ruby 2.4.x due to Fixnum deprecation
* Support ruby rspec 3
* Add ssl socket option to ruby cross tests
* Add seek support to TCompactInputProtocol in Rust
* Codegen Creates Invalid Ruby for Recursive Structs
* Fix the genspec for ruby so it does not complain about an invalid license

rust
* Rust const string calls function at compile time
* Rust enum name wrong case in generated structs
* Avoid generating conflicting struct names in Rust code
* Rust generation should include #![allow(non_snake_case)] or force conform to \ 
Rust style guidelines
* Rust binary protocol and buffered transport cannot handle writes above 4096 bytes
* Rust framed transport cannot handle writes above 4096 bytes
* Rust's TBinaryInputProtocol fails when strict is false
* Dart -> Rust Framed cross tests fail
* Rust cannot create ReadHalf/WriteHalf to implement custom tranports

swift (new language support in 0.12.0)
* Swift Library

test suite
* Gracefully shutdown cross-test servers to fully test teardown
* Add .NET Core to the make cross standard test suite
* Add unix domain sockets in ruby to cross test - code exists

typescript (new language support in 0.12.0)
* add typescript directory support
   2017-04-19 13:24:39 by Jonathan Perkin | Files touched by this commit (27)
Log message:
Reset MAINTAINER after tonnerre resigned.