Commit Graph

991 Commits

Author SHA1 Message Date
James E. King III
3ca88065df re-disable hs-csharp_json_framed-ip cross test 2019-02-12 13:26:45 -05:00
James E. King III
393f6c93e1 THRIFT-3877: fix py/py3 server, java client with http transport
The java TestClient asks the server to runa  oneway request that
sleeps for 3 seconds.  If the java TestClient sees the duration
of the call exceed one second, it fails the test.  This means the
server did not participate in the "fire and forget" dynamics of
ONEWAY requests.  In this case the THttpServer was processing the
RPC before sending the transport response.  The fix was to enhance
the TProcessor so that the THttpServer has an opportunity to inspect
the message header before processing the RPC.

This is partly due to the violation of the THttpServer in the
layered architecture.  It is essentially implementing a combined
server and transport, whereas there should be a distinct server,
protocol, and transport separation.  Many languages seem to have
this problem where HTTP was introduced.
2019-02-11 17:46:30 -05:00
James E. King III
e53d23c16c THRIFT-4794: finish php json cross test 2019-02-10 13:11:46 -05:00
James E. King III
9804ab983a THRIFT-4780: finish the server implementation of multi in python server
- Add default processor handling to python multi
2019-02-08 17:16:17 -05:00
cyy
a6a3a787ec THRIFT-4732:refine cmake scripts (#1688)
* add cmake support for clib and remove unused variables
* add targets for code analysis
* add wall to all compilers and add utf-8 options for msvc
2019-02-07 09:27:33 -05:00
Jens Geyer
adde44b0f5 THRIFT-4772 fully enable server-side usage of framed/buffered transports
Client: netstd
Patch: Jens Geyer

This closes #1729
2019-02-05 09:08:24 +01:00
James E. King III
4c57be0b60 THRIFT-4384: fix concurrent sync in cpp async client code 2019-02-02 22:10:41 -05:00
James E. King III
ef9405f930 fix java-ruby test timeouts in ci 2019-02-01 16:14:19 -05:00
James E. King III
3ec4031a4c THRIFT-4405: fix cygwin on appveyor 2019-02-01 11:13:49 -05:00
James E. King III
53bd0e6295 THRIFT-4745: fixes compiler warnings 2019-02-01 11:13:49 -05:00
James E. King III
84d9cd27f9 THRIFT-4405: Enhance python cross test client for pedantic sequence id handling 2019-02-01 11:13:49 -05:00
James E. King III
f95620d2b1 THRIFT-4405: sanity tests relating to sequence numbers
- prove all servers return the sequence ID given
- prove that sequences that wrap around the int32_t space are handled ok
2019-02-01 11:13:49 -05:00
Sebastian Zenker
2ec93c8a2d THRIFT-4763: HTML compiler produces invalid HTML document (#1720)
* HTML: the html generator did generate a closing </code> tag without a match <code>
* THRIFT-4763: added HTML test and fixed up additional HTML generation issues
2019-01-30 20:14:27 -05:00
Sebastian Zenker
042580f534 THRIFT-4762: Applied some C++11 refactorings to the runtime library and compiler (#1719)
* make use of C++11 override keyword
* added const specifier to TTransport::getOrigin()
* added more const correctness to the compiler
* make use of auto keyword
* replaced usage of NULL with nullptr
* make use of explicitly-defaulted function definition
* extended changelog
2019-01-29 09:48:12 -05:00
Jens Geyer
aa0c8b35d8 THRIFT-4723 Consolidate C#/netcore into new netstd language target
Client: netstd
Patch: Jens Geyer

This closes #1710
2019-01-28 23:12:28 +01:00
James E. King III
b96c43892a THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
James E. King III
8935c98046 THRIFT-4753: re-version master to next release 0.13.0 2019-01-25 23:33:54 -05:00
Mustafa Senol Cosar
129bb3e10d THRIFT-4675: Fix int64 constants generation for map keys 2019-01-25 10:03:37 -05:00
James E. King III
b1d63e7190 THRIFT-4750: as3 changes to build and publish to maven central 2019-01-24 12:20:30 -05:00
James E. King III
98f379ece1 THRIFT-4746: changes for publishing java library to maven; fix java debug vs. release build with cmake 2019-01-23 09:24:32 -05:00
James E. King III
dd63da19fa
Merge pull request #1690 from cyyever/const_members
THRIFT-4740:Use std::chrono for timeout and add const to some methods.
2019-01-22 09:40:21 -05:00
Rob Becker
f1eadad76e THRIFT-4654 Minor fixes for dart 1 & 2 compatibility (backwards compatible) (#1617)
* THRIFT-4654 Minor fixes for dart 1 & 2 compatibility
* update dockerfiles for CI to test dart 2
* THRIFT-4654 update pubspec for tests
* THRIFT-4654 update dart test generator and readme to 1.24.3
* THRIFT-4654 update generated dart sdk to a range
* fix the dart tutorials
* Add .dart_tool directories to .gitignore
* THRIFT-4654: use dart 2.1.0 and fix cross test dart client timeout
2019-01-21 22:24:01 -05:00
cyy
bfdbd0344b use chrono 2019-01-22 10:36:18 +08:00
Mustafa Senol Cosar
f86845e8ed THRIFT-4675: Generate Int64 constants for js 2019-01-15 09:20:54 -05:00
James E. King III
234fb47229 THRIFT-4719: remove cocoa 2019-01-14 08:13:52 -05:00
cyy
ca8af9b48f THRIFT-4730: remove pthread code and refactor, ending up with just ThreadFactory 2019-01-11 09:13:12 -05:00
James E. King III
c9ac8d2953 THRIFT-4720: documenting breaking changes, minor cleanup 2019-01-09 17:05:34 -05:00
cyy
316723add4 remove stdcxx namespace and use std directly 2019-01-07 08:11:37 -05:00
James E. King III
ecebd77c4a THRIFT-4716: add veralign.sh tool to set versions for releases 2019-01-04 16:28:13 -05:00
James E. King III
c3375d9e43 Merge remote-tracking branch 'origin/0.12.0' into consume-0.12.0 2018-12-30 11:06:00 -05:00
jfarrell
384647d290 Version 0.12.0 2018-12-18 20:24:34 -05:00
James E. King III
9b75e4fe74 THRIFT-4680: fix up std::min, std::max, and numeric limits min/max on Windows; remove NOMINMAX from cmake build 2018-12-18 10:17:57 -05:00
Mustafa Senol Cosar
dd965c1eb4 Fix hs-nodets test and re-enable it 2018-12-03 09:08:09 -05:00
wilfrem
2c69b5a01e THRIFT-3143: Add nodets support
Co-authored-by: Mustafa Senol Cosar <cosar.mustafasenol@gmail.com>
2018-11-29 15:28:44 -05:00
GREATEST Wiggler EvaR!
b57d126157 THRIFT-4529: Rust enum variants are now camel-cased
Client: rs
2018-11-12 07:57:43 -05:00
James E. King III
f7d43ce0aa fix build errors related to updated static code analysis tools for python and php 2018-11-06 12:20:52 -05:00
Dean Hamstead
8a130f63e5 THRIFT-4382: Replace the use of Indirect Object Syntax calls to new() 2018-10-17 19:13:45 -04:00
James E. King III
b2b767e1a4 THRIFT-4620: add crosstest support for zlib (buffered) to cpp, enable cpp,go,py,py3 tests 2018-09-16 06:51:38 -04:00
Charles Giardina
180888820a THRIFT-4631 Fix Ruby codegen to gen valid ruby for recursive structs 2018-09-15 09:47:14 -04:00
Neil Williams
66a44c5d8d THRIFT-4621 Add THeader for Python
Client: py
2018-09-01 10:24:43 +09:00
James E. King III
f5f430df56 THRIFT-4579: Move up to Ubuntu Bionic for CI builds
make dlang library compatible with openssl-1.1 for Ubuntu Bionic
Requires an upstream deimos update to be compatible.
2018-06-16 19:16:04 +00:00
James E. King III
d2f6f19bb8 disable one cross test that has been failing 2018-06-10 03:02:32 +00:00
Nicholas Martin
747158c8da THRIFT-4548: python binary accelerated protocol with multiplexing via decoration (#1547)
* Fix binary accelerated protocol with multiplexing

TMultiplexedProtocol objects did not inherit from TProtocol, so the
decorated protocol object passed into the binary accelerated C extension
was not really a TProtocol object, which caused errors. This
implementation decorates the protocol object by dynamically creating a
new class that extends both the class of the protocol being decorated
and TMultiplexedProtocol.

* THRIFT-4548: remove known failures for py multiplexed client cross tests

* Call super with args for python2 & pep8 fixes

* THRIFT-3877: disable known failures for http cpp tests

This closes #1535
2018-06-07 20:30:44 -04:00
Ben Podgursky
50bfc56d5d THRIFT-4555 Optionally disable copies of binary fields in constructors, getters and setters.
Client: java

This closes #1540.
2018-04-17 07:21:46 +01:00
James E. King III
2068544a09 THRIFT-4548: add python cross test client multiplexed protocol support
Client: py
2018-04-13 13:20:49 -04:00
James E. King III
6f8c99e981 THRIFT-3118: add http (for non-ssl and for ssl) to the python cross tests 2018-04-05 10:25:19 -04:00
James E. King III
272470790a THRIFT-4342: update ruby tests to use rspec 3, updated all dependencies for ruby
Client: rb
2018-03-23 15:16:47 -04:00
James E. King III
714c77cebe THRIFT-4525: add ruby cross test ssl support
Client: rb

This closes #1514
2018-03-21 20:45:25 -04:00
Daniel Shih
e41de0fbcb THRIFT-4489: Add unix domain socket support for nodejs
Client: nodejs

This closes #1491
2018-03-21 07:48:31 -04:00
James E. King III
9aaf295806 THRIFT-4358: add unix domain socket option to ruby cross tests
Client: rb

This closes #1513
2018-03-21 01:02:11 -04:00
Stephen Starkie
22bd3450c6 THRIFT-4524: .NET Core Server doesn't close properly when cancelled
Also fixed up the project files to include quoted Program Files paths
Client: netcore

This closes #1512
2018-03-20 16:32:32 -04:00
Ozan Can Altiok
e46419b5ec THRIFT-4476: Typecasting problem on double list items,
emitting doubles with high precision
Client: cpp
Client: erl
Client: java
Client: js
Client: py

This closes #1511
2018-03-20 16:28:15 -04:00
Allen George
b4960838a3 THRIFT-4187 Allow dart framed transport to read incomplete frame
Client: dart

This closes #1269
2018-03-20 16:21:21 -04:00
James E. King III
9bea32f73c THRIFT-4515: cross server test improvement: graceful test server shutdown
This closes #1509
2018-03-19 14:38:49 -04:00
Allen George
b7084cbc0d
THRIFT-4419: Fix bug where framed messages > 4K could not be read
Client: rs

This closes #1508
2018-03-17 09:38:15 +01:00
D. Can Celasun
a9efd1abd4
THRIFT-4516: Fix "go vet" warnings for Go 1.10
Client: go
2018-03-15 14:16:10 +01:00
Robert Lu
68707d9219
THRIFT-4474: Use PSR-4 autoloader by default
Client: php

This closes #1479
2018-03-15 11:05:30 +01:00
John Boiles
5785279e2e THRIFT-4448: Golang: do something with context.Context. Remove Go1.6 compatibility.
Client: go

This closes #1459
2018-03-12 18:35:17 -04:00
James E. King III
3ae304268e THRIFT-4515: fix windows build
Client: cpp
2018-03-12 11:30:22 -04:00
James E. King III
70b33fb6b4 THRIFT-4515: fix up nonblocking options and enable ssl for nonblocking in cpp server cross
Client: cpp
2018-03-11 10:57:56 -04:00
James E. King III
78755f5297 THRIFT-4508: Fix node.js to be the desired version in docker ubuntu-artful image 2018-03-06 09:53:12 -05:00
James E. King III
641b139fd6 THRIFT-4503: fix dlang server logging on client disconnect so it does not report an error for normal operation 2018-03-03 12:01:19 -05:00
James E. King III
6aa4c0f448 THRIFT-82: fix cl test server to return the correct SecondService string and enable multi tests 2018-03-02 16:15:18 -05:00
James E. King III
bf7f76bb1f THRIFT-82: follow-up to common lisp to stabilize the linux build environment and update some docs 2018-03-02 13:48:08 -05:00
Tomek Kurcz
e93a901715 THRIFT-82: Add Common Lisp support
Client: cl

There's framed and buffered socket transport, binary protocol, multiplex, simple
server, cross-tests, self-tests, tutorial, CL library, CL code generator. Only
SBCL is supported for now.

This closes #1412
2018-03-02 13:44:50 -05:00
James E. King III
d907cc92db THRIFT-4352: update artful to use haxe 3.4.4 which fixes a core in haxe 2018-02-17 11:20:07 -05:00
Alex Volanis
7004a61e44 THRIFT-(1418|1507|3983|4120|4178|4259|4294): Multiple issues
Client: java

THRIFT-4294: Java Configure Fails for Ant >= 1.10
THRIFT-4259: Thrift does not compile due to Ant Maven task errors
THRIFT-4178: Java libraries missing from package when using cmake
THRIFT-3983: libthrift is deployed on central with pom packaging
             instead of jar
THRIFT-1507: Maven can't download resource from central when behind
             a proxy and won't use local repository
THRIFT-1418: Compiling Thrift from source: Class
             org.apache.tools.ant.taskdefs.ConditionTask doesn't
             support the nested "typefound" element

Refactor CMake install hook to allow using "sudo make install/fast"
which avoids the THRIFT-1507 and THRIFT-1418 issues.

New Gradle based build system for Thrift Java Library

* Add Gradle 4.4.1 Wrapper artifacts to enable builds
Using the Gradle Wrapper helps normalize the builds on all platforms
so we use a consistent build tool independent of package managers.

The Gradle build logic was partitioned into multiple specific
scripts to simplify understanding and maintenance of the build.

This is now hooked into CMake and Autoconf processing steps
and can build/test/publish to Maven. The README.md was updated
to illustrate the new build options and add some documentation
on the requirements for Maven publication.

Cleaned up the CMake files to reduce reliance on file globbing
which is known to cause confusion when multiple users contribute.

* Fix two minor issues in Javadoc and unit test

Return values were undeclared in Javadoc
Test was asserting on the wrong test object instance

* Create simple runner scripts for cross-check

Using Gradle as a java execution wrapper is too heavy.
I simplified the test client/server execution by using a
three generated scripts in the build directory direcly
callable by the cross-check test harness.

* Cleanup the remaining Ant build scripts

Pulled the Maven Ant task properties out of the Java build
since they are no longer used there.
Deleted the no longer used build.xml and build.properties
files from the Java build.
Made each Ant build own the Maven Ant task details in their
build.properties file.

* Fix the build issue with Java SSL in the ubuntu-trusty container

The latest Trusty JDK7 builds seem to have encountered this issue
because the OpenJDK removed the SunEC algorithms.

* Update the developer info as requested in review

Use the generic Apache Thrift developer list for contact information

* Add Clover Code coverage for easy access by developers

Clover plugin for Gradle was applied and configured which enables
code coverage reports to be available on demand via a command line
option. The documentation in the README.md was enhanced to give
the details of this change and how to take advantage of it.
2018-01-24 12:28:55 -05:00
James E. King III
b56fc700d6 THRIFT-4434: fixes to delegate all dependency responsibility from make to the dotnet build
Client: dotnet

This closes #1469
2018-01-14 08:41:10 -05:00
Volodymyr Gotra
54993296c4 THRIFT-4434: .NET Core cleanup and the beginnings of compiler unit tests
Client: netcore

This closes #1449
2018-01-14 08:39:32 -05:00
Allen George
cf7ba4ca32 THRIFT-4390: Fix bug where binary/buffered messages > 4K could not be read/written
Client: rs

This closes #1458
2018-01-12 08:06:59 -05:00
Robert Lu
a15060acd8 THRIFT-4423: migrate to psr-4
Client: php

This closes #1445
2018-01-11 09:37:37 -05:00
Chet Murthy
ad08a8b168 THRIFT-3877: cpp http server buffering bug oneway
Client: C++

This closes #1418

C++ HTTP server, hit with oneway RPC, then roundtrip RPC, no longer
hangs, as demonstrated by OneWayHTTPTest.

Unit-test: Hit a C++ HTTP server with a oneway rpc, and the next RPC
will hang.  This test-case elicits the failure (converts to
timeout-expiry).
2018-01-10 23:40:18 -05:00
Jens Geyer
f3a2974dfe THRIFT-4398 Update EXTRA_DIST for "make dist"
Client: Build process
Patch: Jens Geyer

This closes #1431
2017-12-01 23:01:41 +01:00
Nobuaki Sukegawa
3c420072ab THRIFT-3580 THeader for Haskell
Client: hs

This closes #820
This closes #1423
2017-11-30 16:15:25 -05:00
Nobuaki Sukegawa
66c3dbf2de THRIFT-3602 Make Tornado server send exception on unexpected handler error
Client: py

This closes #839
This closes #1425
2017-11-30 12:36:33 -05:00
Nobuaki Sukegawa
6f8264037c THRIFT-3600 Make TTwisted server send exception on unexpected handler error
Client: py

This closes #838
This closes #1424
2017-11-30 12:36:11 -05:00
James E. King, III
44426c9095 THRIFT-4395: fix rust build on xenial
Client: rs

This closes #1421
2017-11-29 21:29:48 -05:00
James E. King, III
20e16bc6a4 THRIFT-2013: add perl crosstest multiplexed client and server logic
Client: perl

This closes #1416
2017-11-21 14:20:26 -05:00
James E. King, III
39eaae6675 THRIFT-2013: update docker for artful (go back to lua 5.2) and enhance
cpp client to send 0,1,2,4,8,...,131072 size binary tests, this exposed
problems in the erl and rs servers and those tests have been disabled for now.
2017-11-20 07:27:03 -05:00
James E. King, III
58402ff6a7 THRIFT-2013: add multiplex server and client test support to cpp language
add multiplex client test support to csharp and java languages
fix a bug in the server-side header protocol factory
fix a bug in the cpp SSL server socket implementation
remove unnecessary sleep in cpp server testOneway

This closes #1414
2017-11-18 21:10:40 -05:00
Gonzalo Aguilar Delgado
87ad2bcaaa THRIFT-4329: multiplexed processor, client and server for c_glib
Client: c_glib

This closes #1361
2017-11-18 21:10:18 -05:00
D. Can Celasun
4f77ab8e29 THRIFT-4285 Move TX/RX methods from gen. code to library
This change removes a lot of duplication from generated code and allows
the caller to customize how they can read from / write to the
transport.  Backwards compatible adapters make the change compatible
with existing code in use by consuming applications.

Client: Go

This closes #1382
2017-11-03 18:21:40 -07:00
Oleksii Prudkyi
a533ea1615 THRIFT-4377: more informative error messages on tests
THRIFT-4377: fix haxe-php integration
Client: haxe

This closes #1407
2017-10-30 15:12:16 -04:00
James E. King, III
619218cd7f THRIFT-4343: enable nodejs-8.x on ubuntu-artful image and update grunt-jsdoc
also fix a perl failure as we were using a deprecated language feature
in the cross test server for perl.
Client: nodejs, perl

This closes #1406
2017-10-29 10:15:10 -04:00
James E. King, III
375bfee701 THRIFT-2998: enable cross test for nodejs http transport,
fix missing apache license headers in nodejs
Client: nodejs

This closes #1403
2017-10-28 17:54:58 -04:00
James E. King, III
43f4bf2fdd THRIFT-4376: fix a few high impact coverity defects:
1458947: memory leak in compiler
1458787: resource leak in c_glib led to discovery of assert() abuse
1459090: fix string.find result check in JSON processor (unlikely)

This closes #1404
2017-10-28 16:44:09 -04:00
Jens Geyer
d4df91709b THRIFT-4372 Pipe write operations across a network are limited to 65,535 bytes per write
Client: Delphi, C#
Patch: Jens Geyer

This closes #1402
2017-10-26 20:36:28 +02:00
James E. King, III
350fe7531f THRIFT-4370: build generated code before running static code analysis;
fix E722 flake8 issues identified in python code

This closes #1399
2017-10-26 11:37:02 -04:00
James E. King, III
0ad20bdbfe THRIFT-4351: use travis build stages to optimize build,
avoiding duplicate rebuilds of the same image, and also
allow personal docker hub repositories for private fork
builds to be optimized. Move ubsan build to artful image
because it catches more stuff and fix what was found.

THRIFT-4345: solidify docker build strategy for maximum
coverage: trusty, xenial, artful as stock as they can be

THRIFT-4344: add top level language summary markdown and
update readme with a new image on the layered architecture

THRIFT-3847: remove VERSION macro from config.h which
was causing a conflict on artful builds.

THRIFT-4359: fix haxe map/set decode when key is binary,
as a missing break statement caused it to use an int
during decode

This closes #1389
2017-10-19 11:29:04 -04:00
James E. King, III
b62873686f THRIFT-4350: enable dotnet-2.0.0-sdk in ubuntu xenial, update netcore
projects, get them running with make cross
Client: netcore

This closes #1379
2017-10-10 08:35:48 -07:00
Elvis Pranskevichus
2d1fe88db3 THRIFT-4206: Fix decoding of strings in containers with py:dynamic and py:utf8strings
Client: py

_read_by_ttype and _write_by_ttype must be using the *element* spec
and not the container spec when determining the correct read/write
handler.

This closes #1273
2017-09-25 17:11:33 -07:00
Håkon Hitland
9462edb06e THRIFT-4264: Fix PHP tests requiring sockets.so
Client: php

This closes #1315
2017-09-22 08:00:47 -07:00
Deniss Afonin
d3cda9c2f3 THRIFT-3357: Generate EnumSet/EnumMap where elements/keys are enums
Client: Java

This closes #1253
2017-09-21 13:57:09 -07:00
James E. King, III
81cdcd3dd7 THRIFT-4328: split binary cross tests into their own build job to resolve
timeouts in travis; enable newly reliable cross tests (ran 5 times clean)

This closes #1351
2017-09-13 19:36:00 +00:00
Thomas Petazzoni
1744cdcb67 configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation
The thrift build system currently assumes that the thrift compiler is
always available in $(top_builddir)/compiler/cpp/thrift. However, in a
cross-compilation context, this location contains the thrift compiler
built for the target... which obviously will not run on the build
machine.

In order to support such cross-compilation situation, we introduce the
THRIFT variable as a an argument for the configure script (using
AC_ARG_VAR). If not specified, it defaults to the existing value of
using compiler/cpp/thrift from the build directory, but it can be
overridden when calling ./configure.

Note that $(top_builddir) cannot be used within the configure script,
so we simply use `pwd`, which is the same as the top_builddir.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

This closes #1336
This closes #1350
2017-09-09 07:50:54 -07:00
walter-weinmann
f8e62fbe73 THRIFT-4273 erlang:now/0: Deprecated BIF.
Client: erlang

This closes #1346
2017-09-07 10:53:36 -07:00
James E. King, III
7d211b8d2d THRIFT-4106: fix errors concurrency_test was identifying
Client: C++

This closes #1343
2017-09-07 10:13:29 -07:00
James E. King, III
d7142b7e4f THRIFT-4295: rework the docker build images, updating them and tuning the travis builds
This closes #1340
2017-09-04 18:09:34 -07:00
Roy Sindre Norangshol
ec64f23d23 THRIFT-4263: Fix use after free bug for thrown exceptions
Client: php

Exceptions thrown through PHPExceptionWrapper are prematurely freed at the end
of the catch block, even though zend_throw_exception_object expects to take
ownership of the value.

Ensure we free return_value in case of exceptions

Patch: Håkon Hitland <hakon.hitland@zedge.net>
Patch: Roy Sindre Norangshol <norangshol@zedge.net>

This closes #1314
2017-08-12 20:11:26 -07:00
James E. King, III
82ae9575cd THRIFT-2221: detect C++11 and use std namespace for memory operations (smart_ptr)
Client: C++

This closes #1328
2017-08-10 13:27:21 -04:00
Divya Thaluru
808d143245 THRIFT-4276:Add SSL support to the C++ Nonblocking Server
Client: C++ Lib
Patch: Divya Thaluru

Github Pull Request:

    This closes #1251
2017-08-06 16:36:36 -07:00
David Hull
ec2a252136 THRIFT-4269 Don't append '.' to Erlang namespace if it ends in '_'.
Client: Erlang
Patch: David Hull <david.hull@openx.com>

This closes #1319
2017-08-01 00:38:55 +02:00
taozle
5c302e02c4 THRIFT-4260 Go context generation issue. Context is parameter in Interface not in implementation
Client: Go
Patch: taozle <zhangliyang26@gmail.com>

This closes #1312
2017-07-25 00:17:30 +02:00
taozle
c0d384a38c THRIFT-4236 Support context in go generated code
Client: Go
Patch: taozle <zhangliyang26@gmail.com>

This closes #1309
2017-07-22 19:42:48 +02:00
Eric Conner
c34653f751 THRIFT-2642 Recursive structs don't work in python
Client: Python
Patch: Eric Conner <eric@pinterest.com>

This closes #1293
2017-07-06 22:59:10 +02:00
Allen George
bc1344d55f THRIFT-4186 Add travis build for Rust
Client: rs
Patch: Allen George <allen.george@gmail.com>

This closes #1260
2017-05-11 01:35:33 +02:00
Allen George
0e22c362b9 THRIFT-4176: Implement threaded server for Rust
Client: rs

* Create a TIoChannel construct
* Separate TTransport into TReadTransport and TWriteTransport
* Restructure types to avoid shared ownership
* Remove user-visible boxing and ref-counting
* Replace TSimpleServer with a thread-pool based TServer

This closes #1255
2017-04-27 08:46:02 -04:00
Deniss Afonin
3311a9b237 THRIFT-4177 fix java deep copy
Client: Java

Java compiler produces deep copy constructor that could make shallow copy accidentally.

This closes #1254
2017-04-19 12:38:14 -04:00
James E. King, III
7f5a8c28bc THRIFT-4164: update openssl cleanup to match current requirements and document TSSLSocketFactory lifetime requirements
Client: cpp

This closes #1235
2017-04-04 09:36:38 -04:00
James E. King, III
177c37ce85 THRIFT-4069: perl library cleanup - namespaces, versioning, exception fixes
Client: perl

This closes #1220
2017-03-30 17:09:04 -04:00
Håkon Hitland
e66b8fcde3 THRIFT-3984 PHP7 extension causes segfault
The PHP 7 extension can sometimes free strings it does not own,
when serializing string map keys, or the name of called methods.
The latter case was somewhat migitated since the double-free has no
effect on interned strings.
Using ZVAL_STR_COPY instead of ZVAL_STR will increment the reference
count, making the following destructor call correct.

Fix memory leak in PHP 7

Fix memory leak when deserializing maps or sets.
zend_hash_update will add its own reference to the key, so we need to
destruct the key zval to not leak.
We don't need to destruct the value, the hash table will take ownership
of it.

This closes #1152
2017-02-23 11:43:45 -05:00
James E. King, III
37aac3bb58 THRIFT-3706: added cross test support for backwards compatible multiplexed server, added c_glib testBinary, fixed a number of glib object reference issues
Client: c_glib, java

This closes #1200
2017-02-22 12:46:04 -05:00
D. Can Celasun
43fb34df28 THRIFT-4011 Sets of Thrift structs generate Go code that can't be serialized to JSON
Client: Go
Patch: D. Can Celasun <dcelasun@gmail.com>

This closes #1156
2017-02-21 22:32:49 +01:00
Gonzalo Aguilar Delgado
bc0082e023 THRIFT-3706: Implement multiplexed protocol client and test client for c_glib; test server for java; integrate into crosstest
Client: c_glib

This closes #1191
This closes #1199
2017-02-20 14:04:17 -05:00
James E. King, III
06190874c8 THRIFT-4084: Add a SSL/TLS negotiation check to crossfeature to verify SSLv3 is not active and that at least one of TLSv1.0 through 1.2 are accepted.
Client: csharp, d, go, nodejs, perl

This closes #1197
2017-02-20 08:52:11 -05:00
Vivek Jain
655b9b6ef8 THRIFT-3921: Add ostream operator<< functions for enums (working with THRIFT-4060)
Client: C++

This closes #1083
This closes #1194
2017-02-18 14:30:46 -05:00
James E. King, III
377719c2d8 THRIFT-3272 (THRIFT-4066) fix perl SSL authentication support; fixed error in erlang test client using wrong key file and added CA
Client: Perl

This closes #1189
2017-02-15 14:33:20 -05:00
James E. King, III
ab8ff1abf7 THRIFT-4091 - revert THRIFT-4045 and remove unused test code in test/cpp
Client: C++

This closes #1192
2017-02-15 14:12:37 -05:00
James E. King, III
b4c190b6ea THRIFT-4060 add better support in the cpp generator for custom ostream operators on structures
Client: C++

This closes #1172
2017-02-13 16:39:59 -05:00
James E. King, III
36628a28e9 THRIFT-3369 Provide SSL/TLS client for c_glib
Client: c_glib
Patch: Gonzalo Aguilar Delgado <gaguilar@level2crm.com>

This closes #1185
2017-02-13 15:25:41 -05:00
Nobuaki Sukegawa
4626fd889d THRIFT-3938 Python TNonblockingServer does not work with SSL
This closes #1100
2017-02-12 21:11:36 +09:00
Allen George
8b96bfbf1e THRIFT-2945 Add Rust support
Client: Rust
Patch: Allen George <allen.george@gmail.com>

This closes #1147
2017-01-26 01:34:16 +01:00
Volodymyr Gotra
b62247e0ea THRIFT-4039 Update of Apache Thrift .Net Core lib
Client: NetCore
Patch: Volodymyr Gotra <vgotra@gmail.com>

This closes #1163

Changes:
- Added framed transport, updated docs, updated global.json with SDKversion
- Added usage to multiplexer to tutorial
- Changed sdk to current sdk 1.0.0-preview2-1-003177
2017-01-25 00:04:45 +01:00
James E. King, III
7edc8faefd THRIFT-3873: fix various compiler warnings and overflow errors
THRIFT-3847: change VERSION to PACKAGE_VERSION to avoid conflicts with third party or OS headers

This closes #1128
2017-01-20 10:12:06 -05:00
Jens Geyer
1ca09d0e02 THRIFT-4016 testInsanity() impl does not conform to test spec in ThriftTest.thrift
Client: Haxe
Patch: Jens Geyer
2017-01-10 22:52:06 +01:00
Volodymyr Gotra
b587a12a11 THRIFT-3933 Microsoft .Net Core library port and generator for this library
Client: .NET Core
Patch: Volodymyr Gotra <vgotra@gmail.com> PR #1088, with significant improvements by Jens Geyer <jensg@apache.org> PR #1149

This closes #1088
This closes #1149
2017-01-04 19:40:30 +01:00
Mark Erickson
3c55440230 THRIFT-4019: Dart Makefiles should also clean pubspec.lock
Client: Dart
Patch: Mark Erickson <merickson@apache.org>

This closes #1150
2017-01-04 10:11:06 -06:00
Allen George
d8bb0e3b9f THRIFT-4016 testInsanity() impl does not conform to test spec in ThriftTest.thrift
Client: C#
Patch: Allen George <allen.george@gmail.com>
2017-01-02 10:43:37 +01:00
Jens Geyer
19066b75d0 THRIFT-4014 align C# meta data in AssemblyInfo.cs
Clöient: C#
Patch: Jens Geyer
2016-12-26 11:33:03 +01:00
Håkon Hitland
f39d4c8535 THRIFT-3886 PHP cross test client returns 0 even when failing
Client: PHP
Patch: Håkon Hitland <hakon.hitland@zedge.net>

This closes #1131
2016-12-17 19:52:36 +01:00
Mark Erickson
0d9b713b17 THRIFT-3981 Enable analyzer strong mode in Dart library
Client: Dart
Patch: Mark Erickson <merickson@apache.org>

This closes #1135
2016-12-13 22:20:03 -06:00
Allen George
60611917cf THRIFT-4000 Add union example to ThriftTest
Client: Test suite
Patch: Allen George

This closes #1138
2016-12-11 21:31:22 +01:00
BCG
7ab125a253 THRIFT-3301 Java generated code uses imports that can lead to class name collisions with IDL defined types
Client: Java
Patch: Benjamin Gould

This closes #1120
2016-12-03 01:00:52 +01:00
James E. King, III
df89913b8a THRIFT-3932 fixed ThreadManager concurrency issues, added more tests in that area, did a little refactoring and prettying up along the way
Client: C++

This closes #1103
2016-11-12 15:16:30 -05:00
Cody P Schafer
3129549feb THRIFT-3831 in test/cpp explicitly use signed char
`char`'s signed-ness is implimentation dependent, and in the case where
`char` was not signed, we previously recieved errors like

    thrift/0.9.3-r0/git/test/cpp/src/TestClient.cpp:404:15: error: narrowing conversion of '-127' from 'int' to 'char' inside { } [-Wnarrowing]

(This example from gcc-6 on arm)

This closes #1085
2016-10-01 23:40:56 +09:00
Nobuaki Sukegawa
a400c690eb THRIFT-3748 Node.js Deserialization of lists of lists is broken
This closes #957
2016-09-26 01:42:02 +09:00
Nobuaki Sukegawa
11da87e6f3 THRIFT-2835 Add possibility to distribute generators separately from thrift core, and load them dynamically
Client: Compiler
Patch: Nobuaki Sukegawa, rebased by dtmuller

Also fixed by dtmuller:
* Add plugin namespace for erlang language binding
* Fix unit test test_const_value
* Don't clear type cache with every t_program conversion
* Type "wb" may not be supported by popen on non-Windows platforms
* Fix constness of AST type signatures
2016-09-26 01:42:01 +09:00
Nobuaki Sukegawa
bf9fa905d2 THRIFT-3910 Do not invoke pip as part of build process
This closes #1073
2016-09-04 18:49:21 +09:00
Nobuaki Sukegawa
88c5ee71db THRIFT-3906 Run C# tests with make check
This closes #1069
2016-09-04 18:49:18 +09:00
Andreas Scheja
d1ceba449d THRIFT-3046: Allow PSR4 class loading for generated classes (PHP)
Allow test to be used with psr4 autoloading

This closes #1010
2016-09-03 15:58:37 +09:00
Nobuaki Sukegawa
e4ba16495e THRIFT-3886 PHP cross test client returns 0 even when failing
This only fixes tests for primitive values.

This closes #1054
2016-08-20 18:40:45 +09:00
Nobuaki Sukegawa
fd02a30e58 THRIFT-3883 Go TestAllConnection fails with port 9090 collision
This closes #1066
2016-08-20 18:34:57 +09:00
Nobuaki Sukegawa
e1b8540a0a THRIFT-3884 Fix Erlang compact protocol double endianess and boolean list
This close #1051
2016-07-23 16:52:53 +09:00
Mark Erickson
4082ef8068 THRIFT-3869 Remove Dart packages during make clean
Client: Dart
Patch: Mark Erickson <mark.erickson@workiva.com>

This closes #1047
2016-07-15 23:04:38 +02:00
Steve Cohen
7ea4a87fc5 THRIFT-3834 Erlang namespacing and exception metadata
Client: Erlang
Patch: Steve Cohen <steve@pinterest.com>

This closes #1027
2016-06-14 21:57:24 +02:00
Jens Geyer
7407e2e2f3 Revert "THRIFT-3834 Erlang namespacing and exception metadata"
This reverts commit c8deed8cba.
2016-06-07 21:42:09 +02:00
Steve Cohen
c8deed8cba THRIFT-3834 Erlang namespacing and exception metadata
Client: Erlang
Patch: Steve Cohen
2016-06-06 23:10:10 +02:00
Oleksii Prudkyi
39a09ac5e4 THRIFT-3833 haxe http server implementation (by embeding into php web server)
Client: Haxe
Patch: Oleksii Prudkyi <Oleksii.Prudkyi@gmail.com> + some modifications by Jens Geyer

This closes #1013
This closes #1020
2016-05-29 00:43:13 +02:00
Jens Geyer
26b36dc61e THRIFT-3843 integer issues with Haxe PHP targets cause ZigZag encoding to fail
Client: Haxe
Patch: Jens Geyer
2016-05-28 23:22:51 +02:00
creker
ca714c4397 THRIFT-3467 Go Maps for Thrift Sets Should Have Values of Type struct{}
Client: Go
Patch: artem antonenko <sam901@yandex.ru>

This closes #976
2016-04-06 22:53:25 +02:00
Nobuaki Sukegawa
eb344a8191 THRIFT-3762 Fix warnings for deprecated Thrift "byte" fields
This closes #967
2016-03-29 12:03:34 +09:00
Nobuaki Sukegawa
73d16378c5 More make dist entries 2016-03-19 23:53:05 +09:00
Nobuaki Sukegawa
e134cbc6ff Update make dist entries 2016-03-18 22:37:02 +09:00
John Sirois
bd964c7f34 THRIFT-3112 [Java] AsyncMethodCallback should be typed in generated AsyncIface
The parametrization brings the existing actual parametrization with
client call implementation objects to the fore and so this change
also fixes that parametrization to be a simple parametrization over
the return type as is done in the server-side AsyncProcessor code.

NB: This is a breaking change in both generated code and the client
libs.

This closes #840
2016-03-18 22:33:38 +09:00
Wang Yaofu
e432c6b828 THRIFT-3728 http transport for thrift-lua
This closes #938
2016-03-18 04:40:46 +09:00
Jens Geyer
1d20a370d2 THRIFT-3742 haxe php cli support
Client: Haxe
Patch: Oleksii Prudkyi + minor changes from Jens Geyer

This closes #950
2016-03-16 09:59:47 +02:00
Nobuaki Sukegawa
e364081f82 follow-up: THRIFT-3734 update test/known_failures.json 2016-03-13 18:19:01 +09:00
Nobuaki Sukegawa
4938bab184 THRIFT-3725 Skip a flaky cross test entry (d-dart compact framed-ip)
This closes #935
2016-03-10 11:35:55 +09:00
Nobuaki Sukegawa
c874408326 THRIFT-3722 Fix cert path in C++ cross tests for non-Linux platform
This closes #933
2016-03-09 19:55:56 +09:00
Jens Geyer
775671aea4 THRIFT-3709 Comment syntax can produce broken code
Client: Compiler(general)
Patch: Jens Geyer
2016-03-07 00:19:21 +01:00
Nobuaki Sukegawa
8b791b270e THRIFT-3711 Add D to cross language test
This closes #923
2016-03-06 09:45:42 +09:00
Nobuaki Sukegawa
06e8fd4a08 THRIFT-3694 [Windows] Disable tests of a few servers that are not supported
This closes #909
2016-03-02 23:44:23 +09:00
Mark Erickson
56c1c645f2 THRIFT-3702 Fix cross tests for Dart compact protocol (3 failing)
Client: Dart
Patch: Mark Erickson

This closes #917
2016-03-01 16:53:35 -06:00
Mark Erickson
b5f126f6d6 THRIFT-3637 Implement compact protocol for dart
This closes #916
2016-02-29 15:27:59 -06:00
Nobuaki Sukegawa
d479e23a1d THRIFT-3691 Run flake8 Python style check on Travis-CI
Client: Build (Python)
Patch: Nobuaki Sukegawa

This closes #907
2016-02-28 12:05:14 +09:00
Nobuaki Sukegawa
103974ec55 THRIFT-3688 Fix socket bind failure detection of cross test
Client: Test
Patch: Nobuaki Sukegawa

This closes #905
2016-02-28 12:03:40 +09:00
Nobuaki Sukegawa
e9b3234b28 THRIFT-3682 Do not reuse refused sockets in test scripts
Client: Test
Patch: Nobuaki Sukegawa

This closes #902
2016-02-27 16:55:55 +09:00
Nobuaki Sukegawa
fa53a3ce94 THRIFT-3592 Add basic test client
Fix sed command so that it work for both linux and bsd sed.
Client: Build (Lua)
Patch: Nobuaki Sukegawa

This closes #900
2016-02-27 16:55:55 +09:00
Nobuaki Sukegawa
008283de6c THRIFT-3660 Add V4 mapped address to test client cert's altname
Client: Test
Patch: Nobuaki Sukegawa

This closes #887
2016-02-22 23:26:11 +09:00
Nobuaki Sukegawa
23ffb31290 THIFT-3645 Add command line args and testBool handler to Lua test server
Client: Test (Lua)
Patch: Nobuaki Sukegawa

This closes #876
2016-02-20 00:44:54 +09:00
Nobuaki Sukegawa
08d67d7163 THRIFT-3644 Adds testStruct call to Lua test client
Client: Test (Lua)
Patch: Nobuaki Sukegawa

This closes #875
2016-02-20 00:44:24 +09:00
Nobuaki Sukegawa
59310f5dd0 THRIFT-3642 Speed up cross test runner
This closes #873
2016-02-20 00:18:43 +09:00
Wang Yaofu
19a3a2771a THRIFT-3631 JSON protocol implement for thrift-lua library.
THRIFT-3631 Lua-This is JSON protocol implement for thrift-lua library.
TJsonProtocol.lua is new source of lua for thrift JSON protocol.
2016-02-19 01:06:05 +09:00
Nobuaki Sukegawa
e1e09c7967 THRIFT-3641 Ruby client should try to connect to every result of getaddrinfo
Client: Ruby
Patch: Nobuaki Sukegawa

This closes #872
2016-02-19 01:06:05 +09:00
Nobuaki Sukegawa
7af189a236 THRIFT-3613 Port Python C extension to Python 3
Client: Python
Patch: Nobuaki Sukegawa

This closes #845
2016-02-13 23:12:34 +09:00
Nobuaki Sukegawa
6525f6ae87 THRIFT-3612 Add Python C extension for compact protocol
Client: Python
Patch: Nobuaki Sukegawa

This closes #844
2016-02-13 23:12:34 +09:00
Nobuaki Sukegawa
144bbef3dd THRIFT-3611 Add --regex filter to cross test runner
Client: Test
Patch: Nobuaki Sukegawa

This closes #843
2016-02-11 20:06:46 +09:00
Nobuaki Sukegawa
4708409c2d THRIFT-3601 Better conformance to PEP8 for generated code
This closes #837
2016-02-05 20:48:07 +09:00
Nobuaki Sukegawa
ebd71cedc3 THRIFT-3585 Compact protocol implementation for Lua
Enable compact protocol for cross test.
2016-02-04 22:20:01 +09:00
Nobuaki Sukegawa
1f647f01c4 THRIFT-3584 boolean false value cannot be transferred
Return value fix and test.
2016-02-04 22:20:00 +09:00
Phongphan Phuttha
3b89cc5305 THRIFT-3598 TBufferedTransport doesn't instantiate client connection
Client: Lua
Patch: Phongphan Phuttha

This closes #836
2016-02-04 22:20:00 +09:00
Nobuaki Sukegawa
f39f7dbd26 THRIFT-3599 Validate client IP address against cert's SubjectAltName 2016-02-04 22:20:00 +09:00
John Sirois
f7d497978d THRIFT-3597 make check hangs in go tests
Client: Test (Go)
Patch: John Sirois

This closes #833
2016-02-04 14:28:24 +09:00
Nobuaki Sukegawa
10308cb975 THRIFT-3596 Better conformance to PEP8
This closes #832
2016-02-04 14:28:24 +09:00
Nobuaki Sukegawa
d094e79de7 THRIFT-3592 Add basic test client
This closes #830
2016-02-03 01:07:43 +09:00
Nobuaki Sukegawa
95c628eade THRIFT-3578 Make THeaderTransport detect TCompact framed and unframed
Client: C++
Patch: Nobuaki Sukegawa

This closes #819
2016-02-01 21:24:39 +09:00
Nobuaki Sukegawa
2eed686406 Fix CI build for THRIFT-3251 Add http transport for server to Go lib
This closes #829
2016-02-01 21:23:25 +09:00
claudemiro
f8ca05528e THRIFT-3251 Add http transport for server to Go lib
Client: Go
Patch: claudemiro <dimiro1@gmail.com>

This closes #785
2016-01-28 23:05:02 +01:00
Jens Geyer
108fab8242 THRIFT-3501 Forward slash in comment causes compiler error
Client: Compiler (general)
Patch: Jens Geyer
2016-01-28 23:03:24 +01:00
Nobuaki Sukegawa
5e432ec37b THRIFT-3579 Introduce retry to make cross
This closes #817
2016-01-24 03:44:26 +09:00
Nobuaki Sukegawa
9890c28b7e THRIFT-3568 THeader server crashes on readSlow
Client: C++
Patch: Nobuaki Sukegawa

This closes #807
2016-01-24 00:13:44 +09:00
Nobuaki Sukegawa
bd165305fa THRIFT-3571 Make feature test result browsable
Client: Test
Patch: Nobuaki Sukegawa

This closes #809
2016-01-24 00:13:44 +09:00
Chandler May
3fe3df2ac8 THRIFT-3567 GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Client: c_glib
Patch: Chandler May <cjmay4754@gmail.com>

This closes #806
2016-01-19 22:00:48 +01:00
Chandler May
6dde90be2e THRIFT-1313 implement compact protocol for c_glib library
Client: C_glib
Chandler May <cjmay4754@gmail.com>

This closes #795
2016-01-19 22:00:27 +01:00
Nobuaki Sukegawa
2ba79440bf THRIFT-3544 Let cross test fail when server process died unexpectedly
Client: Test
Patch: Nobuaki Sukegawa

This closes #793
2016-01-19 02:48:07 +09:00
Roger Meier
baa110126d crossrunner: fix browse url 2016-01-17 21:06:44 +01:00
Nobuaki Sukegawa
fc07084ada THRIFT-3542 Add length limit support to Java test server
This closes #788
2016-01-13 20:25:26 +09:00
Nobuaki Sukegawa
7b545b5720 THRIFT-3532 Add configurable string and container read size limit to Python protocols
This closes #787
2016-01-13 20:25:23 +09:00
Nobuaki Sukegawa
1a42a05477 Skip C#-Python SSL cross tests that fails on Debian image
It is presumably due to SSL chagnes in Python 2.7.9.
2016-01-12 20:15:06 +09:00
Nobuaki Sukegawa
85650612e1 THRIFT-3531 Create cross lang feature test for string and container read length limit
This closes #780
2016-01-11 11:41:56 +09:00