Commit Graph

95 Commits

Author SHA1 Message Date
Nobuaki Sukegawa
208738a6e3 THRIFT-2972 - Missing backstash in lib/cpp/test/Makefile.am 2015-02-02 22:04:29 +01:00
Nobuaki Sukegawa
8016af800f THRIFT-2924 TNonblockingServer crashes when user-provided event_base is used 2015-01-04 16:50:59 +01:00
Nobuaki Sukegawa
c444fb581d THRIFT-2925 CMake build does not work with OpenSSL nor anything installed in non-system location
This diff fixes them by correcting invalid CMake variable names:
* OPENSSL_... rather than OpenSSL_...
* LIBEVENT_... rather than Libevent_...
* Boost_INCLUDE_DIRS rather than Boost_INCLUDE_DIR
* LIBEVENT_INCLUDE_DIRS rather than LIBEVENT_INCLUDE_DIR
* ZLIB_INCLUDE_DIRS rather than ZLIB_INCLUDE_DIR

Note:
* OPENSSL_INCLUDE_DIR is correct (rather than ..._DIRS)
* Boost_INCLUDE_DIR exists and actually works for most cases but
  Boost_INCLUDE_DIRS is the one desinged to be included

Also, library headers are now included as SYSTEM headers.
2015-01-03 10:08:09 +01:00
Jens Geyer
4461a2fc16 THRIFT-2910 libevent is not really optional
Client: C++
Patch: Nobuaki Sukegawa <nsukeg@gmail.com>

This closes #337
2014-12-23 18:22:54 +01:00
Nobuaki Sukegawa
6622877a09 THRIFT-2098 Add support for Qt5+ 2014-12-21 16:36:47 +01:00
Nobuaki Sukegawa
6304a53414 THRIFT-2903 Qt4 library built with CMake does not work 2014-12-21 16:36:46 +01:00
Nobuaki Sukegawa
2825664f25 THRIFT-2893 CMake build fails with boost thread or std thread
Following changes are made to fix the build
* Add USE_..._THREAD compiler definitions correctly
* Link to boost_thread and boost_system when configured with boost thread
* Link to pthread if platform is posix and std thread is used
* Use PlatformThreadFactory in test code
2014-12-21 16:36:46 +01:00
Konrad Grochowski
ec8d8778b5 THRIFT-2906 - linking with boost_unit_test_framework made more portable
Client: C++
Patch: Jon Parise

BOOST_TEST_LDADD Makefile variable added and should be used when linking
with boost_unit_test_framework

This closes #333
2014-12-20 12:50:30 +01:00
Pascal Bach
d5f87e1f21 CMake: Add CMake support for Thrift libraries
Currently the following libraries are supported:
- C++
- C_Glib
- Java (using Ant wrapper)

The compilers CMake file is adjusted to work with the new global CMakeLists.txt file.

Signed-off-by: Roger Meier <r.meier@siemens.com>
Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Also-by: Sergei Nikulov <sergey.nikulov@gmail.com>
2014-12-13 22:02:29 +01:00
Nobuaki Sukegawa
d0d7a65581 THRIFT-2838 TNonblockingServer can bind to port 0 (i.e., get an OS-assigned port) but there is no way to get the port number 2014-12-07 17:00:02 +01:00
Konrad Grochowski
9db4b51b66 THRIFT-2876: C++ - tests: coping __isset structure in copy constructor
Client: C++
Patch: Nobuaki Sukegawa

Test verifies THRIFT-2526
This closes #303
2014-12-04 23:32:52 +01:00
Konrad Grochowski
3b5dacba44 THRIFT-2849: spelling errors fixed using codespell tool
Client: All
Patch: Anatol Pomozov

This closes #281
2014-11-24 10:55:31 +01:00
Konrad Grochowski
16a23a6618 THRIFT-2729: C++ - .clang-format created and applied
Client: C++
Patch: Konrad Grochowski

make style command added
2014-11-18 11:39:10 +01:00
Konrad Grochowski
240120c843 Revert "THRIFT-2729: C++ - .clang-format created and applied"
This reverts commit 74260aa909.
2014-11-18 11:33:31 +01:00
Konrad Grochowski
74260aa909 THRIFT-2729: C++ - .clang-format created and applied
Client: C++
Patch: Konrad Grochowski

make style command added
2014-11-18 10:02:08 +01:00
Konrad Grochowski
8c12b19eb7 THRIFT-2827: C++ - Remove unused tr1/functional include from ProcessorTest
Client: C++
Patch: Aiden Scandella

This closes #267

Include was unused yet was causing compilation problems on platforms
without c++11 tr1
2014-11-15 12:57:23 +01:00
Konrad Grochowski
b3f5ffc42d THRIFT-2801: cpp - compilation warnings removed from test suite
Client: C++
Patch: Konrad Grochowski

Unused parameters mostly
2014-11-06 19:32:59 +01:00
Roger Meier
6f28c04560 cpp: fix automake dependencies 2014-11-01 20:31:44 +01:00
Roger Meier
a5bf1a1ff0 cpp: fix automake dependencies and make ProcessorTest.cpp compilable again 2014-10-22 23:26:01 +02:00
Roger Meier
81a1f996bc THRIFT-2602 fix missing dist files
- add automake 1.13 dependency to configure.ac and doc
- use serial-tests instead of .NOTPARALLEL (introduced by THRIFT-1829)

Patch: Roger Meier
2014-10-22 14:09:43 +02:00
Roger Meier
cb0754db1e THRIFT-2784 Eliminate compiler warnings in generated C++ code
remove unused MyEnum5 and add -pedantic to lib/cpp/test/Makefile.am
2014-10-21 21:28:04 +02:00
Roger Meier
ec300e33d4 THRIFT-1462 add more strict compiler flags
Patch: Roger Meier
2014-10-13 02:13:35 +02:00
Jens Geyer
79f988c27a THRIFT-2768: Whitespace Fixup
Client: General (Makefile.am)
Patch: Jens Geyer

Reverted makefile.am - tabs are not optional there
2014-10-03 20:42:54 +02:00
Jens Geyer
aaa8947f3a THRIFT-2768: Whitespace Fixup
Client: General (Makefile.am, *.thrift)
Patch: Jens Geyer

DocTest.thrift has NOT been changed, the trailing whitespaces are part of the test case.
2014-10-03 20:30:38 +02:00
Konrad Grochowski
293a40e960 THRIFT-2745: c++ - fixed some unit test compilation on windows
Client: C++-Library
Patch: Sergei Nikulov

unist.h removed
THRIFT_SLEEP_USEC used instead of usleep
ERROR variable renamed to TEST_TOLERANCE

This closes #207
2014-09-30 12:04:02 +02:00
Konrad Grochowski
1ff4a97a45 THRIFT-2716 - removed warnings from some Makefile.ams 2014-09-29 22:05:49 +02:00
Jens Geyer
a86886e77d THRIFT-2704 - compiler: T_ONEWAY type used for oneway methods instead of T_CALL
Patch: Konrad Grochowski

This closes #216
2014-09-17 22:36:00 +02:00
name
b3e5ebe1e4 THRIFT-2513 clean up enum value assignment
Client: Compiler (General)
Patch: Konrad Grochowski

Fixes the failing test with pure_enums. For details, see JIRA ticket.
2014-09-12 11:15:24 +02:00
Jens Geyer
089bcd3f8c THRIFT-1040 Can't end typedef lines with a semicolon
Client: Compiler (General)
Patch: Konrad Grochowski
2014-09-11 22:36:41 +02:00
Jens Geyer
1235ee3f2a Fix EnumTest (part 2)
Patch: Konrad Grochowski, as part of his pull request 209
2014-09-06 14:59:51 +02:00
Jens Geyer
4d223c6fee FIX: wrong include path 2014-09-05 22:31:39 +02:00
Jens Geyer
ae0b22cc29 THRIFT-2513 clean up enum value assignment
Patch: Dave Watson

This closes #88

Summary:
Clean up how enum values are handled if an integer value is not
explicitly specified in the thrift file.

For example, the following used to be a compile error, but
works now:

  enum MyEnum {
	SOMEVALUE
  }
  struct MyStruct {
	1: MyEnum e = SOMEVALUE
  }

This change also cleans up some of the error handling with out-of-range
values.  Previously thrift simply issued a warning for enum values that
didn't fit in an i32, but serialized them as i32 anyway.  Now
out-of-range enum values result in a compile failure.

Test Plan:
Included a new unit test to verify the assignment of enum values.  I
also verified that g++ makes the same enum value assignments when
compiling these enums as C++ code.
2014-09-04 23:40:14 +02:00
Konrad Grochowski
b3f6ea100f THRIFT-2067 C++: all generated objects provide ostream operator<< 2014-09-03 23:41:32 +02:00
Alan Dunn
bee7b73802 Add unit test for OpenSSL manual initialization
This test checks whether Thrift leaves OpenSSL functionality available
after the last TSSLSocketFactory is destroyed when manual
initialization is set.  It uses the EVP_get_digestbyname function as
an example function that requires OpenSSL initialization to work
properly.

Signed-off-by: Alan Dunn <amdunn@gmail.com>
Signed-off-by: Roger Meier <roger@apache.org>
2014-07-26 22:13:55 +02:00
henrique
58993d1205 THRIFT-2577 C++ TFileTransport missuse of closesocket on windows platform
Patch: suuyaoo

    This closes #142

---
2014-06-24 16:08:22 +02:00
henrique
ad67aa0acf THRIFT-2581 C++ TFDTransport destructor should not throw 2014-06-24 15:45:41 +02:00
Roger Meier
63fcb7e756 THRIFT-2520 cpp:cob_style generates incorrect .tcc file
This closes #118

commit 22d266eefaf16f21ffd0ad193a6a54403de65197
Author: N.Sukegawa <nsukeg@gmail.com>
Date: 2014-05-07T19:36:43Z
2014-06-15 21:51:32 +02:00
Roger Meier
73b58a2469 THRIFT-1771 "make check" fails on x64 for libboost_unit_test_framework.a
update ax_boost_base.m4 from http://www.gnu.org/software/autoconf-archive/
Patch: Roger Meier
2014-05-11 17:39:34 +02:00
Jens Geyer
885c679123 THRIFT-2471 Make cpp.ref annotation language agnostic
Client: compiler general
Patch: Dave Watson

This closes #113

commit 52b99af4ee1574253dcb77933d76a7ebb2d830df
 Author: Dave Watson <davejwatson@fb.com>
 Date: 2014-04-23T20:05:56Z

change cpp.ref to &

commit 3f9d31cc6140367529fd8f7b1b67056ec321786f
 Author: Dave Watson <davejwatson@fb.com>
 Date: 2014-04-23T21:50:29Z

Recursion depth limit

commit 61468e4534ce9e6a4f4f643bfd00542d13600d83
 Author: Dave Watson <davejwatson@fb.com>
 Date: 2014-04-25T19:59:18Z

shared_ptr for reference type
2014-05-02 21:31:55 +02:00
jfarrell
524b924f61 Thrift-2421:Tree/Recursive struct support in thrift
Client: compiler
Patch: Dave Watson

Patch to go along with pull request 84 to fix missing destructors.

Github Pull Request: This closes #98
----
commit f4daec9b0af386e8f6e9e66fb688aab8cd949fdc
Date:   2014-04-09T17:33:18Z

    Also generate destructor for _result, presult, args, pargs
2014-04-09 14:55:54 -04:00
jfarrell
e0e8316838 THRIFT-2421: Tree/Recursive struct support in thrift
Client: cpp
Patch:  Dave Watson

Github Pull Request: This closes #84
----
commit b6134cedf292845e5ed01052919894df6b561bf2
Date:   2014-03-20T18:12:04Z

    Recursive structs support in parser

    A common complaint is that you can't express trees or other recursive structures in thrift easily - unlike protobufs. This diff loosens up the parser to allow using structs before they are defined (and uses typedef as a forward declaration).
    This diff is actually enough to make recursive types work for some dyamic languages (I tried php, works out of the box!)

    Other languages will need forward declarations, or ways to box types, to make this work (i.e. C++ needs both forward decls and a way to express structs as pointers)
2014-04-08 22:45:01 -04:00
Roger Meier
22888ce3a8 THRIFT-2352 msvc failed to compile thrift tests
Patch: Sergei Nikulov & Roger Meier
2014-02-09 11:31:02 +01:00
Roger Meier
09cc5e7728 THRIFT-2316 cpp: TFileTransportTest is to restrictive 2014-01-15 10:13:18 +01:00
Jake Farrell
5d02b80e9c Thrift-2029:Port C++ tests to Windows
Client: cpp
Patch: Ben Craig

Updates cpp tests to work with windows and c++11
2014-01-07 21:42:01 -05:00
Roger Meier
ba406d3a02 THRIFT-2089 Compiler ignores duplicate typenames
Patch: Randy Abernethy
2013-07-15 22:41:34 +02:00
Roger Meier
967600ef4f THRIFT-1850 make check hangs on TSocket tests in TransportTest.cpp
Patch: Randy Abernethy
2013-05-03 22:39:53 +02:00
Roger Meier
c095919087 THRIFT-1829 cpp unit tests fail to build using multiple make jobs
Patch: David Rennalls and Roger Meier
2013-01-15 23:20:19 +01:00
Jake Farrell
7c7a5e05ba Thrift-1721:Dist broken due to 0.8.0 to 0.9.0 changes
Client: build
Patch: Jake Farrell

Fix dist build to create the 0.9.0 release



git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1396880 13f79535-47bb-0310-9956-ffa450edef68
2012-10-11 00:29:11 +00:00
Jake Farrell
a32ac7a010 Thrift-1718:Incorrect check in TFileTransportTest
Client: cpp
Patch: Diwaker Gupta

Fixes cpp tests



git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1396258 13f79535-47bb-0310-9956-ffa450edef68
2012-10-09 19:59:35 +00:00
Roger Meier
4cb8e40d8a THRIFT-1612 Base64 encoding is broken
Patch: Andrew Cox

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1343074 13f79535-47bb-0310-9956-ffa450edef68
2012-05-27 18:05:16 +00:00