Commit Graph

769 Commits

Author SHA1 Message Date
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