Commit Graph

214 Commits

Author SHA1 Message Date
Mario Emmenlauer
4d10279244 THRIFT-4580: fix erlang tutorial unpack on windows (#1561) 2018-06-07 09:52:17 -04:00
Jens Geyer
606f1ef314 THRIFT-4549 Thrift exceptions should derive from TException
Client: Delphi
Patch: Jens Geyer
2018-04-09 23:26:25 +02: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
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
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
Robert Lu
bfba370bf1 THRIFT-4459: reduce php library directory depth
Client: php

This closes #1471
2018-01-16 09:22:42 -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
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
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
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
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
walter-weinmann
5310616b10 THRIFT-4333 All tutorial examples with port 9090.
This closes #1364
2017-09-21 07:08:04 -07:00
walter-weinmann
faa2a3e304 THRIFT-4312 Erlang client cannot connect to Python server: exception
error: econnrefused

This closes #1365
2017-09-21 07:06:32 -07: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
fcb2f5a8f4 THRIFT-4313: Program code of the Erlang tutorial files contain syntax errors.
Client: erl

This closes #1342
2017-09-05 13:43:46 -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
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
D. Can Celasun
8da0e720bb THRIFT-4215 Golang TTransportFactory Pattern Squelches Errors
Client: Go
Patch: D. Can Celasun <can@dcc.im>

This closes #1285
2017-06-05 14:22:06 +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
James E. King, III
f74943cf6e THRIFT-4172: fix node.js tutorial when connection fails
Client: node.js
Patch: Eden Hochbaum <eden.hochbaum@gmail.com>

This closes #1037
This closes #1244
2017-04-06 21:04:56 -04: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
James E. King, III
cf25489402 Build fails using Java 1.8 with Ant < 1.9
Client: Java
Patch: Adinata <mail.dieend@gmail.com>

This closes #1060
2017-01-25 20:34:04 -05: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
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
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
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
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
Mark Sonnabaum
c2256fc751 THRIFT-3904 Fix typo in node tutorial.
This closes #1067
2016-09-03 17:20:06 +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
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
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
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
26e1b94719 THRIFT-3727 Incorrect require paths in Node.js tutorial
This closes #937
2016-03-13 09:00:30 +09: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
402f6419f9 THRIFT-3666 Build D tutorial as part of Autotools build
Client: Build (D)
Patch: Nobuaki Sukegawa

This closes #893
2016-02-27 17:17:27 +09:00
Nobuaki Sukegawa
f2952847e6 THRIFT-3681 Fix Dart tutorial build
Client: Build (Dart)
Patch: Nobuaki Sukegawa

This closes #901
2016-02-27 16:55:55 +09:00
Nobuaki Sukegawa
10308cb975 THRIFT-3596 Better conformance to PEP8
This closes #832
2016-02-04 14:28:24 +09:00
Nobuaki Sukegawa
7e286b0d14 THRIFT-3540 Make python tutorial more in line with PEP8
This closes #786
2016-01-13 20:25:19 +09:00
Nobuaki Sukegawa
2e00c9998f THRIFT-3454 Python Tornado tutorial is broken
Client: Python
Patch: Nobuaki Sukegawa

This closes #725
2015-12-04 00:38:33 +09:00
Nobuaki Sukegawa
ca93936e78 THRIFT-3424 Add CMake android build option
Client: Build
Patch: Nobuaki Sukegawa

This closes #696
2015-11-23 16:59:10 +09:00
Nobuaki Sukegawa
760511f59b THRIFT-1857 Python 3 Support
Client: Python
Patch: Thomas Bartelmess, Eevee (Alex Munroe), helgridly, Christian Verkerk, Jeroen Vlek, Nobuaki Sukegawa

This closes #213 and closes #680
2015-11-06 21:24:16 +09:00
Roger Meier
f57b57ac0b THRIFT-3274 calling "make clean" twice in a row yields make error
fix tutorial
2015-11-03 23:28:43 +01:00
Dave Watson
792db4e926 THRIFT-2423 Facebook's THeader protocol and transport for cpp
Client: C++ Library, Compiler
Patch: Dave Watson rebased by Nobuaki Sukegawa

This closes #357 and closes #677
2015-11-04 01:25:22 +09:00