Commit Graph

76 Commits

Author SHA1 Message Date
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
Roger Meier
2d59b9e2ad THRIFT-1336 thrift: added server and processor test code
revert partly: disable processor test, it breaks the builds

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1341996 13f79535-47bb-0310-9956-ffa450edef68
2012-05-23 19:40:40 +00:00
Jake Farrell
970c86a5f2 Thrift-1607:Incorrect file modes for several source files
Client: build
Patch: Andrew Cox

File modes of some non-script text files (e.g. .xml, .java, .cc) in the source tree include execute permissions (because these files have the svn:executable property).



git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1339492 13f79535-47bb-0310-9956-ffa450edef68
2012-05-17 05:41:09 +00:00
Roger Meier
dd16f0538b THRIFT-1336 thrift: added server and processor test code
last commit was wrong! otherway around!
disable concurrency instead of processor_test ... does not run properly on build slaves

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1337177 13f79535-47bb-0310-9956-ffa450edef68
2012-05-11 14:19:48 +00:00
Roger Meier
4f260f7a5f THRIFT-1336 thrift: added server and processor test code
disable processor_test ... does not run properly on build slaves

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1337162 13f79535-47bb-0310-9956-ffa450edef68
2012-05-11 13:50:11 +00:00
Roger Meier
2b1a5289a7 THRIFT-1336 thrift: added server and processor test code
move the tests from src to test:
lib\cpp\src\thrift\concurrency\test to lib\cpp\test\concurrency
lib\cpp\src\thrift\processor\test to lib\cpp\test\processor

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1337098 13f79535-47bb-0310-9956-ffa450edef68
2012-05-11 10:12:39 +00:00
Roger Meier
33eaa0f100 THRIFT-1552 Thrift (cpp) include files shouldn't require adding "thrift" to the compilers include path.
roger: some additional fixes

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325677 13f79535-47bb-0310-9956-ffa450edef68
2012-04-13 09:13:13 +00:00
Roger Meier
49ff8b123a THRIFT-1552 Include paths for c/c++ should be prefixed with 'thrift/'
To ensure there are no include path collisions the C and C++ header
include paths should include 'thrift' as the root leaf. This will
prevent having to place /usr/include/thrift into the compilers include
header search path, which might otherwise result in the compiler
accidentally picking up headers that it shouldn't.

e.g. #include <foo/bar.h> should be #include <thrift/foo/bar.h>

Change-Id: I48f2b0f549bda0fc81e85506ac857adc800b98a1

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325674 13f79535-47bb-0310-9956-ffa450edef68
2012-04-13 09:12:31 +00:00
Roger Meier
02c827bcfe THRIFT-1562 Fix issue with TFramedTransport::readSlow
Patch: Dave Watson

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1325034 13f79535-47bb-0310-9956-ffa450edef68
2012-04-11 21:59:57 +00:00
Jake Farrell
f9f01fa1e0 THRIFT-1394:Treatment of optional fields is not consistent between C++ and Java
Client: cpp
Patch: Diwaker Gupta

In CPP, all optional fields are guarded by the isset helper struct. On Java, however, the generated code takes advantage of nullable types: for containers, structs, exceptions, enums, and, notably, strings, the generator elides explicit use of an "isset" bit vector and instead emits checks of the form "field null". This leads to varying behavior between the two languages: an optional string field with a default value will have {{isset[fieldid]}} false on C, but the equivalent test in Java will be true.



git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1236529 13f79535-47bb-0310-9956-ffa450edef68
2012-01-27 04:48:26 +00:00
Roger Meier
12d705390d THRIFT-1461 Recent TNonblockingServer changes broke --enable-boostthreads=yes, Windows
Patch: Alexandre Parenteau

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1214547 13f79535-47bb-0310-9956-ffa450edef68
2011-12-14 23:35:28 +00:00
Jake Farrell
ea949fbaf9 Thrift-1462: add more strict compiler flags
Reverting patch due to it breaking compilers older than 4.4 (os x, centos 5.x, etc)



git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213901 13f79535-47bb-0310-9956-ffa450edef68
2011-12-13 20:02:33 +00:00
Roger Meier
ca10fd4a51 THRIFT-1462 add more strict compiler flags(-Wall -Wextra -std=c++0x -pedantic)
git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213459 13f79535-47bb-0310-9956-ffa450edef68
2011-12-12 22:00:23 +00:00
Roger Meier
611f90cf9e THRIFT-1459 declare shared_ptr as boost::shared_ptr
git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213090 13f79535-47bb-0310-9956-ffa450edef68
2011-12-11 22:08:51 +00:00
Roger Meier
3fc4819617 THRIFT-1272 add subclass of ReadWriteMutex that avoids writer
starvation
Patch: Dave Watson

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1213067 13f79535-47bb-0310-9956-ffa450edef68
2011-12-11 21:05:35 +00:00
Roger Meier
6f7681f91d THRIFT-1361 revert compiler/cpp/src/thrifty.yy change
=> breaks mingw build
=> memleak fixes reported by cppcheck

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1198347 13f79535-47bb-0310-9956-ffa450edef68
2011-11-06 12:04:28 +00:00
Roger Meier
38315786e5 THRIFT-1361 Optional replacement of pthread by boost::thread
Patch: Alexandre Parenteau
rev3

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1198339 13f79535-47bb-0310-9956-ffa450edef68
2011-11-06 11:29:41 +00:00
Roger Meier
2fa9c31e06 THRIFT-1320 Consistency of configure generated config.h
Patch: Alexandre Parenteau

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1165400 13f79535-47bb-0310-9956-ffa450edef68
2011-09-05 19:15:53 +00:00
Roger Meier
9e0f0743f3 THRIFT-1256 Unit Test Logging Output for CI
pass BOOST environment variables to the test suite arguments and create a tests.xml with the results

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1153594 13f79535-47bb-0310-9956-ffa450edef68
2011-08-03 17:36:55 +00:00
Roger Meier
1ebeffb0d8 THRIFT-1197 TFileTransportTest.cpp fails on slower machines
git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1132712 13f79535-47bb-0310-9956-ffa450edef68
2011-06-06 18:00:03 +00:00