Commit Graph

1333 Commits

Author SHA1 Message Date
Roger Meier
a70986fc34 THRIFT-2784 Eliminate compiler warnings in generated C++ code
Patch: Roger Meier
2014-10-21 23:01:36 +02:00
Roger Meier
d5c7a0f6f7 format: spaces instead of tabs 2014-10-21 21:53:05 +02:00
Roger Meier
d8dd7ea99f THRIFT-2784 Eliminate compiler warnings in generated C++ code
Patch: John Campbell
2014-10-13 18:07:59 +02:00
Roger Meier
ec300e33d4 THRIFT-1462 add more strict compiler flags
Patch: Roger Meier
2014-10-13 02:13:35 +02:00
Roger Meier
f31eba9d45 THRIFT-2360 Json Generator
remove C++11 dependency
2014-10-13 00:53:49 +02:00
Roger Meier
1a74d9c0b0 THRIFT-2360 Json Generator
Patch: Craig Peterson, Peter Neumark & Roger Meier

Github Pull Request: This closes #247
2014-10-12 23:35:43 +02:00
Roger Meier
a9ddab5fa7 THRIFT-2720 nodejs - Error with enum generation 2014-10-09 02:11:14 +02:00
Roger Meier
25023b16eb THRIFT-809 Javascript client: Please make required fields actually required.
Patch: noazark

Github Pull Request: This closes #232
2014-10-09 02:01:17 +02:00
Roger Meier
f49ea0691c Revert "Revert "THRIFT-2722: js: Fix javascript service inheritance namespacing""
This reverts commit 371358ce4e.
2014-10-09 01:50:33 +02:00
Roger Meier
371358ce4e Revert "THRIFT-2722: js: Fix javascript service inheritance namespacing"
This reverts commit 9a7cb9f6c8.
2014-10-09 01:17:06 +02:00
Roger Meier
964082a8eb THRIFT-2712 PHP: add "json" option to create JsonSerializable code
This patch adds a "json" option to PHP code generation that will
make generated classes implement JsonSerializable, so thrift
objects may be converted to json using json_encode() easily.
If the "validate" option is enabled, the object's write validator
will be called, beyond that the jsonSerialize() method only outputs
non-null fields in the JSON object (JSON parsers get grumpy if you
send them null where they expect to see a number).

Patch: Stig Bakken

Github Pull Request: This closes #219
2014-10-08 23:41:18 +02:00
Roger Meier
9a7cb9f6c8 THRIFT-2722: js: Fix javascript service inheritance namespacing
Patch: Stig Bakken

This closes: #227
2014-10-08 12:31:26 +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
Jens Geyer
6d15c3090f THRIFT-2628 struct member name conflicts due to lowercased names
Client: Erlang
Patch: Alisdair Sullivan

This closes #228
2014-10-02 10:06:07 +02:00
Jens Geyer
cc4ac4955c THRIFT-2689 struct names that differ only in capitalization of first character generate broken erlang code
Client: Erlang
Patch: Alisdair Sullivan

This closes #204
2014-10-01 21:13:39 +02:00
Konrad Grochowski
99b9e1d405 THRIFT-2746: compiler/cpp/README.md updated
Client: Build
Patch: Konrad Grochowski

Haskell compiler no longer need to be disabled when building with mingw
2014-10-01 00:14:14 +02:00
Randy Abernethy
ab3f848dec THRIFT-2746: Replace C++11 code in IDL compiler
Client: compiler (haskell and cpp generators)
Patch: Randy Abernethy

This patch replaces various bits of C++11 code in the Apache
Thrift compiler which fail to compile on older versions of
gcc (such as 4.4.7)
2014-09-30 14:09:41 -07:00
Konrad Grochowski
485d71acd1 THRIFT-2664: py - fixed errors on calling oneway functions
Client: Python-Compiler
Patch: Dustin Spicuzza

'recv_' method is resolved later, thus disregarding exceptions send from
oneway methods calls

This closes #188
2014-09-29 23:38:15 +02:00
Konrad Grochowski
03394b54fb THRIFT-2662: py - Fix incorrect indentation when oneway function is used
Client: Python-Compiler
Patch: Dustin Spicuzza

fixes python generator when py:tornado option is enabled

This closes #186
2014-09-29 23:04:30 +02:00
Konrad Grochowski
05d64b4e3b THRIFT-2707: rb - support for oneway messages fixed
Client: Ruby Library, Ruby Compiler
Patch: Konrad Grochowski

now oneway method calls will use proper message type

This closes #217
2014-09-29 22:08:58 +02:00
Roger Meier
63243c6a29 THRIFT-2709 c_glib: Support server implementation
Patch: Simon South
2014-09-29 20:29:58 +02:00
James Broadhead
51ba56c31b py.twisted: Avoid synchronous exceptions
This is an update of the patch posted to:
https://issues.apache.org/jira/browse/THRIFT-585
and a re-write of 8345772

Patch: Mattias de Zalenski, James Broadhead

Jira: THRIFT-585
2014-09-28 22:39:55 +02:00
Jens Geyer
3dcef37686 THRIFT-2714 Graphviz generator is missing from MSVC++ project files
Client: Graphviz
Patch: Jens Geyer
2014-09-17 22:55:56 +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
Jens Geyer
2de7e19899 THRIFT-2702 empty enums lead to invalid code
Client: Delphi
Patch: Jens Geyer
2014-09-12 00:23:53 +02:00
Jens Geyer
86b309cde0 THRIFT-2513 clean up enum value assignment
Client: Compiler (General)
Patch: Jens Geyer
2014-09-12 00:23:51 +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
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
Jens Geyer
067779bbda THRIFT-2679 golang generation fails for service names less than 5 characters
Client: Go
Patch: Dustin Spicuzza & Jens Geyer
2014-09-04 22:35:38 +02:00
Roger Meier
0cc6d3c7bd THRIFT-2690
c_glib: Incorrect behaviour when serializing a map with typedef'd keys

Patch: Simon South
2014-09-04 00:24:17 +02:00
Roger Meier
d62473c3b0 THRIFT-1266 generated C code for iterating over nested maps is wrong
Patch: Simon South
2014-09-04 00:16:50 +02:00
Konrad Grochowski
b3f6ea100f THRIFT-2067 C++: all generated objects provide ostream operator<< 2014-09-03 23:41:32 +02:00
Jens Geyer
d0bd17e726 THRIFT-2666 Usage of PYTHONHASHSEED breaks older Python code
Client: Python
Patch: Jens Geyer
2014-09-01 23:05:08 +02:00
Keith Lazuka
e26a19bba0 THRIFT-2676 Avoid 'i386' name collision in generated Cocoa/objc code
This fixes a bug in the cocoa code generator where the variable
used by a for-loop can conflict with a built-in symbol when the
temporary variable counter is equal to 386. The generated variable
name, 'i386', conflicts with a macro built-in to the compiler.

I can reproduce this bug on Xcode 5 as well as Xcode 6. It appears
to only affect iOS projects, not OS X projects.

My fix simply prefixes the generated variable with 'idx' instead of 'i'.

This test code demonstrates the problem, regardless of Thrift codegen.

    int i386 = 42;
    printf("foobar %d\n", i386);

Which results in the following compiler error:

/Users/keith/Desktop/ReservedSymbolTest/ReservedSymbolTest/ViewController.m:22:7: error: expected identifier or '('
  int i386 = 99;
      ^
<built-in>:143:14: note: expanded from here
             ^
1 error generated.
2014-09-01 22:04:36 +02:00
Roger Meier
db8751b1bc THRIFT-2673 PHP: generated Service_method_result code should not have validators
Patch: Stig Bakken
2014-09-01 21:58:07 +02:00
Roger Meier
008f42cb38 THRIFT-2684 c_glib: Improvements to map deserialization in generated code
Patch: Simon South
2014-09-01 20:26:01 +02:00
Roger Meier
546209c961 THRIFT-2683 c_glib: Seg fault when deserializing a map with typedef'd keys
Patch: Simon South
2014-09-01 20:23:26 +02:00
kedzie
f9b8f5e641 THRIFT-2670 Android parcelable generator
-add 'android' option to java compiler which will generate Parcelable structures for Android
-cleaned up warnings
2014-08-23 22:27:45 +02:00
Roger Meier
311f7157a2 THRIFT-2571 Simplify cross compilation using CMake
fix CMake build and update README.md
2014-08-17 22:24:30 +02:00
Roger Meier
8720260e39 THRIFT-2667 create Windows Installer via CPack
Signed-off-by: Roger Meier <roger@apache.org>
2014-08-15 23:07:12 +02:00
Noam Zilberstein
af5d64adb7 THRIFT-2641 Improvements to Haskell Compiler/Libraries
- test/test.sh integration
- add json and compact protocol

This closes #175

Signed-off-by: Roger Meier <roger@apache.org>
2014-08-10 21:11:43 +02:00
Jens Geyer
044e89de0a THRIFT-2653 improved Delphi const generation
Client: Delphi
Patch: Jens Geyer
2014-08-07 22:50:15 +02:00
Jens Geyer
c20eeaae82 THRIFT-2589 const of BaseType in IDL generates static instead of const properties
Client: C#
Patch: Thomas Lazar
2014-08-07 22:41:24 +02:00
alisdair sullivan
ca44a622df THRIFT-2651: struct names that are restricted erlang terms generate invalid type signatures
patch: alisdairsullivan@yahoo.ca
client: erlang

fixes error exposed in THRIFT-2647 by avoiding using restricted identifiers in erlang type signatures generated by the compiler
2014-08-07 17:40:22 +02:00
Roger Meier
d52edba00f THRIFT-2231 Support tornado-4.x (Python)
Client: Python
Patch: Roey Berman
Signed-off-by: Roger Meier <roger@apache.org>
2014-08-07 17:04:23 +02:00
Roger Meier
16c164ed30 THRIFT-2647 compiler-hs: don't decapitalize field names, do decapitalize argument bindings
Client: Haskell
Patch: John Chee
2014-08-07 03:09:23 +02:00
Jens Geyer
a0b8674116 THRIFT-2639 c_glib: Expose as properties members of generated structs
Client: C-glib
Patch: Simon South

Fixes error: 'to_string' is not a member of 'std' for non-C++11 conformant compilers
2014-08-03 19:14:11 +02:00
Roger Meier
f341c590dc THRIFT-2152 Generated Haskell files does not compile
fully qualified module names at usage site for structs

Patch: John Chee & Roger Meier
2014-08-02 18:05:23 +02:00
Jens Geyer
b360ed393c THRIFT-2645 generated Go server code always sets Success retval
Client: Go
Patch: Jens Geyer
2014-08-02 16:23:13 +02:00
Jens Geyer
790a3881b2 THRIFT-2621 Add basic default hash code method to python
Client: Python
Patch: Kishor Patil & Jens Geyer
2014-08-01 22:25:51 +02:00
Roger Meier
8033e7e794 Revert "THRIFT-585 exceptions in the autogenerated send_METHOD functions are not propagated"
This reverts commit 8345772f29.
2014-07-30 01:01:50 +02:00
Roger Meier
60b7ad6b3d THRIFT-2639 c_glib: Expose as properties members of generated structs
Patch: Simon South

Signed-off-by: Roger Meier <roger@apache.org>
2014-07-29 23:25:53 +02:00
Jens Geyer
8345772f29 THRIFT-585 exceptions in the autogenerated send_METHOD functions are not propagated
Client: Python (Twisted)
Patch: Mattias de Zalenski, James Broadhead

This closes #165
2014-07-26 18:02:12 +02:00
Roger Meier
3c494114b1 THRIFT-1188 C++: Use bit fields for a more compact __isset struct
Patch: Eric Rannaud
2014-07-26 14:43:57 +02:00
Roger Meier
84d1188842 THRIFT-2637 "java:fullcamel_service_methods" option to automatically camel-case Java service methods
Patch: Tom Lee
2014-07-25 23:26:11 +02:00
alisdair sullivan
fb6ed7ead1 THRIFT-2628 erlang: struct member name conflicts due to lowercased names
client: erlang
patch: talentdeficit (alisdair sullivan)

preserve case in generated field names (via erlang 'atom' form)
2014-07-25 00:09:25 +02:00
Jens Geyer
577f407df9 THRIFT-2632 add "validate" option to generate read/write validation code
Client: PHP
Patch: Stig Bakken & Jens Geyer

Modifications made to the original pull request:
- moved TestValidators.* to lib/php/test
- created new TestValidators.thrift to house the UnionOfStrings union
- modified makefiles accordingly

This closes #159
2014-07-25 00:13:27 +02:00
alisdair sullivan
feea9477e7 THRIFT-2633 remove 'this is a dummy struct' structs from generated erlang
client: erlang
patch: talentdeficit (alisdair sullivan)

removes dummy struct info clauses from generated code and replaces
them with error that matches other undefined structs. adds error
for non-existent functions to function_info/2
2014-07-22 22:04:42 +02:00
Roger Meier
1d7e35a7cb THRIFT-2631 c_glib: Support service inheritance in clients
Patch: Simon South
2014-07-22 21:56:12 +02:00
Jens Geyer
dd077c8b0b THRIFT-2634 undocumented php "nsglobal" option
Client: PHP
Patch: Jens Geyer
2014-07-22 00:41:07 +02:00
henrique
7a8b286b3f THRIFT-2629 JavaDoc style documentation should be reused
Client: C++
2014-07-16 22:05:08 +02:00
John Chee
a75a5f0f70 fully qualified names in hs generator 2014-07-16 21:13:28 +02:00
alisdair sullivan
c437cff08f THRIFT-2627:erlang backend doesn't support corecursive structs client: erlang patch: anthony molinari
add additional type specifications to generated erlang files to support
corecursive structs
2014-07-16 20:09:49 +02:00
Roger Meier
57e6de46f3 THRIFT-2602 Fix missing dist files
no config.h for mingw builds

Patch: Roger Meier
2014-07-16 10:19:59 +02:00
Roger Meier
3974aaba69 THRIFT-2602 Fix missing dist files
- set bison to 2.5
- include "config.h" within thriftl.ll

Patch: Roger Meier
2014-07-14 20:22:12 +02:00
Jens Geyer
cdab7eef75 THRIFT-1609 Cocoa import namespace
Client: Cocoa
Patch: Xabier Eizmendi
2014-07-12 12:36:41 +02:00
jfarrell
4f54d13e79 THRIFT-2602: Fix missing dist files
Client: build process
Patch: jfarrell

Adding macro check around bison version and removing am__yacc_c2h and will
conditionally include the necessary h/hh file, this will fix the mentioned
missing .hh file in dist and make it compatible with automake 1.11 and above
2014-07-10 09:23:43 -04:00
jfarrell
8fd8c6366d THRIFT-2602:Fix missing dist files
Client: build process
Patch: jfarrell

Add all missing files to the dist package.
2014-07-10 09:14:51 -04:00
Jens Geyer
6f86f9ac58 THRIFT-2557 CS0542 member names cannot be the same as their enclosing type
Client: C#
Patch: Jens Geyer
2014-07-08 21:31:52 +02:00
Jens Geyer
bc2ca4e5d7 THRIFT-1926 PHP Constant Generation Refactoring
Client: PHP
Patch: Xavier HAUSHERR
2014-07-04 21:45:55 +02:00
Roger Meier
45abf12f13 THRIFT-2594 JS Compiler: Single quotes are not being escaped in constants.
Patch: Thomas Lazar
2014-07-04 21:42:32 +02:00
Jens Geyer
12ee88170a THRIFT-2599 Uncompileable Delphi code due to naming conflicts with IDL
Client: Delphi
Patch: Jens Geyer
2014-07-04 00:12:25 +02:00
David Robakowski
7878f11024 Add [-s[sl]] option for the python service remote to enable communication over an SSL socket connection 2014-06-28 08:37:21 +02:00
jfarrell
bf2617ed15 Thrift-THRIFT-2574: Compiler option to generate namespace directories for Ruby
Client: rb
Patch: Andrew Bloomgarden

Adds option to generate namespaced ruby classes.

Github: closes #140
2014-06-26 22:53:01 -04:00
Jens Geyer
ff296c8841 THRIFT-2588 Thrift compiler is not buildable in Visual Studio 2010
Client: General Compiler
Patch: Thomas Lazar
2014-06-24 21:06:58 +02:00
Jens Geyer
bd05f9e06c THRIFT-2233 Java compiler should defensively copy its binary inputs
Client: Java
Patch: Andrew Gaul
2014-06-22 19:47:52 +02:00
Jens Geyer
9999f5295e THRIFT-2503 C++: Fix name collision when a struct has a member named "val"
Client: C++
Patch: Jens Geyer & Alexander Potashev
2014-06-22 19:09:06 +02:00
Jens Geyer
ebddd933d1 THRIFT-2508 Uncompileable C# code due to language keywords in IDL
Client: C#
Patch: Jens Geyer
2014-06-22 19:06:51 +02:00
Jens Geyer
c0d126fcaf THRIFT-2549 Generate json tag for struct members. use go.tag annotation to override the default generated tag.
Client: Go
Patch: Aleksey Pesternikov

This closes #128
2014-06-19 22:49:54 +02:00
henrique
55087a49d3 THRIFT-2571 doc and speed up travis build 2014-06-17 12:36:39 +02:00
Roger Meier
db372ac248 compiler: move README_Windows.md content to README.md
fix compiler/cpp/Makefile.am
2014-06-16 07:32:12 +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
746952efc1 compiler: move README_Windows.md content to README.md 2014-06-14 21:59:24 +02:00
Pascal Bach
569863a138 Allow cross build for windows using mingw32
- Build the compiler using CMake for:
  - Linux native gcc
  - Windows using mingw32
2014-06-10 13:44:02 +02:00
Pascal Bach
42be4e818a Get thrift version from configure.ac for CMake build 2014-06-10 13:33:58 +02:00
Pascal Bach
6eb015aa55 Add CMake file for the thrift compiler 2014-06-10 13:33:58 +02:00
Jens Geyer
cf18e91831 THRIFT-2435 Java compiler doesn't like struct member names that are identical to an existing enum or struct type
Client: java
Patch: Jens Geyer

Fixed a potential nullptr dereference introduced by that patch (Coverity ID 1216835)
2014-05-31 22:58:15 +02:00
Jens Geyer
a3350b48ea THRIFT-2560 Thrift compiler generator tries to concat ints with strings using +
Client: Compiler
Patch: Jens Geyer
2014-05-31 22:32:18 +02:00
Jens Geyer
5588a569d5 THRIFT-2554 double initialization in generated Read() method
Client: C#
Patch: Jens Geyer
2014-05-30 17:53:47 +02:00
Jens Geyer
eb1e1d5567 THRIFT-2555 excessive "unused field" comments
Client: Go
Patch: Jens Geyer
2014-05-30 17:53:45 +02:00
ra
91b3b1a6b2 THRIFT-2558: CSharp gen tries to add str + int
Client: C# Compiler
Patch: Randy Abernethy

The C# generator attempts to throw a str + int string in
several places producing undesirable results. This patch
uses stringstream to concatenate the string representations.
2014-05-30 06:31:00 -07:00
Roger Meier
6848de85b8 THRIFT-2543 Generated enum type in haskell should be qualified
Client: Haskell
Patch: Zejun Wu
2014-05-30 03:03:09 +02:00
Roger Meier
e86428c6b0 THRIFT-2469 "java:fullcamel" option to automatically camel-case underscored attribute names
Client: Java
Patch: Tom Lee
2014-05-30 00:17:12 +02:00
Roger Meier
7ca13f5507 THRIFT-2526 Assignment operators and copy constructors in c++ don't copy the __isset struct
Client: cpp
Patch: Doug Judd
2014-05-29 22:40:32 +02:00
henrique
d0265c7052 THRIFT-2522 TypeScript extension for Thrift Compiler
add info and format js/README.md

    This closes #124

----
commit ada1016fdd
Author: Pascal Schweizer <pasci@hispeed.ch>
Date:   2014-03-21T16:18:59Z

    THRIFT-2522 TypeScript extension for Thrift Compiler

----
2014-05-19 19:31:09 +02:00
Pascal Schweizer
ada1016fdd THRIFT-2522 TypeScript extension for Thrift Compiler 2014-05-19 17:21:34 +02:00
Roger Meier
303eb1b4f0 THRIFT-2401 Haskell tutorial compiles
Patch: John Chee & Roger Meier

includes minifix from:
THRIFT-2453 haskell tutorial: fix up division by 0 example
2014-05-14 00:49:41 +02:00
Jens Geyer
facc8dc6c7 THRIFT-2505 go struct should always be a pointer to avoid copying of potentially size-unbounded structs
Client: Go
Patch: Aleksey Pesternikov

This closes #116

commit 69bbf0e2b148cb1f48e24f46d181cc4d5dc35786
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-05-02T15:45:15Z

struct should always be a pointer to avoid copying of potentially size-unbounded structs
2014-05-09 23:48:57 +02:00
Jens Geyer
958581d090 THRIFT-2491 unable to import generated ThriftTest service
Client: Go
Patch: Aleksey Pesternikov

Go codegen fix regarding Process(), as discussed in THRIFT-2491.
Belongs to pull request 109.
2014-05-09 23:35:24 +02:00
Roger Meier
cf0edd3659 THRIFT-2490 c_glib: if fail to read a exception from server, client may be occurred double free
Client: c_glib
Patch: Jaesang Kim
2014-05-04 21:52:36 +02:00
Roger Meier
40f8ce2b4d THRIFT-2494: Add enum toString helper function in c_glib
Client: c_glib
Patch: Xiaodong Ma
2014-05-04 21:48:48 +02:00
Jens Geyer
89847dfaa0 THRIFT-2499 Compiler: allow annotations without "= value"
Client: compiler general
Patch: Dave Watson

This closes #87

commit 078ce57e816eeb3697acf6f2c50e09526da73d3b
 Author: Dave Watson <davejwatson@fb.com>
 Date: 2014-03-21T19:42:31Z

[thrift] Compiler: allow annotations without "= value"

Summary: (foo) is the same as (foo = 1), for brevity

Test: AnnotationTest.thrift still compiles
2014-05-02 23:50:04 +02:00
Jens Geyer
e52c046cb6 THRIFT-2491 unable to import generated ThriftTest service
Client: Go
Patch: Aleksey Pesternikov

This closes #105

commit f2e7186ca8d63f407dba0c56ee51afd6405926ba
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-22T12:48:14Z

add _ to generated filename if it ends with _test.go
2014-05-02 23:37:39 +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
Jens Geyer
731975a645 THRIFT-2451: Do not use pointers for optional fields with defaults. Do not write such fields if its value set to default. Also, do not use pointers for any optional fields mapped to go map or slice. generate Get accessors
Client: Go
Patch: Aleksey Pesternikov

This closes #101

commit e6e5dcf3a07cd931183991ff031179b425e2740b
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-16T14:06:52Z

initial change

commit f65730e951a4310160a9f7e3e4eeb7e55abd2c55
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-16T14:16:03Z

no IsSet for required

commit 9865f700eb9354d6053994da989a907766c42d1d
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-17T19:32:13Z

inlined required structs

commit ca52300c07cefcf553f1ebf35569953c933b2367
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-17T19:44:24Z

do not use heap for args struct

commit 012ca3e512d2bc8822de8a715b4f3d3cae5c0c42
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-17T19:52:41Z

do not use heap for result struct

commit 2fc4afc53ff7db43e08eadeaa30e34bc1fd9c889
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-17T21:32:43Z

do not set result field on error

commit 6e5da0062b139f02dcafe3148cdf02f97c23442a
 Author: Aleksey Pesternikov <ap@alekseys-mbp.att.net>
 Date: 2014-04-17T21:57:57Z

Jens' thrift source as test case

commit 7317957ed708831e280f182f081043fbe9d38a0c
 Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
 Date: 2014-04-17T23:43:08Z

support for cpp.ref

commit 1c4f3efc7b54fd335db633f86faf8c426ae9c87d
 Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
 Date: 2014-04-18T00:13:24Z

package flag

commit c9d7e54f5c5d29c776f42fb861bc9e82da4e542f
 Author: Aleksey Pesternikov <ap@alekseys-macbook-pro.local>
 Date: 2014-04-18T00:21:18Z

Merge branch 'master' into go_inlines
2014-05-02 00:24:24 +02:00
Jens Geyer
3290336e33 THRIFT-2495 JavaScript/Node string constants lack proper escaping
Client: JS
Patch: Jens Geyer
2014-04-27 18:30:40 +02:00
Jens Geyer
e8c51ed9c8 THRIFT-2477 thrift --help text with misplaced comma
Patch: Jens Geyer
2014-04-18 02:27:57 +02:00
Jens Geyer
c2ccca8e4b THRIFT-2458 Generated golang server code for "oneway" methods is incorrect
Client: Go compiler
Patch: Jens Geyer & Aleksey Pesternikov
2014-04-14 22:36:50 +02:00
Jens Geyer
d000b241a4 THRIFT-2449 Enhance typedef structure to distinguish between forwards and real typedefs
Client: General Compiler, Delphi
Patch: Jens Geyer
2014-04-13 21:59:51 +02:00
jfarrell
8b1799f3ae THRIFT-2459: --version should not exit 1
Client: compiler
Patch: jfarrell

Updated compiler to exit 0 when --version is called.
2014-04-10 22:06:11 -04:00
henrique
bcc0f1aa73 THRIFT-2421: Tree/Recursive struct support in thrift
Client: cpp

also fix mixed tabs and ignore RecursiveTest binary
2014-04-09 20:57:17 +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
6cf0ffcec9 THRIFT-1681: Add Lua Support Patch: Dave Watson
Github Pull Request: This closes #92
2014-04-05 00:50:35 +02:00
Jens Geyer
d06957bf91 THRIFT-2435 Java compiler doesn't like struct member names that are identical to an existing enum or struct type
Client: java
Patch: Jens Geyer
2014-04-02 23:21:25 +02:00
Jens Geyer
5d1521225b THRIFT-2009 Go redeclaration error
Patch: Jens Geyer
2014-04-01 21:27:58 +02:00
jfarrell
7b021bb13b THRIFT-2095:Use print function for Python 3 compatiblity
Client: py
Patch: jfarrell

Updated py generator to print out () for py4 compatability
2014-03-31 23:34:46 -04:00
henrique
d7902bf19d THRIFT-2368 New option: reuse-objects for Java generator
Patch: adam-aph
2014-03-31 16:21:37 +02:00
Roger Meier
8384351c9a THRIFT-2432 Flaky parallel build
Patch: Benoit Sigoure
2014-03-30 19:36:25 +02:00
Roger Meier
bf0b6291f8 THRIFT-2414 c_glib fix several bug
Patch: Jaesang Kim
2014-03-26 23:32:34 +01:00
Jens Geyer
932cad8dcc THRIFT-2420 Go argument parser for methods without arguments does not skip fields
Patch: Frank Schroeder & Jens Geyer
2014-03-21 21:37:54 +02:00
Jens Geyer
46f9c45084 THRIFT-2419 golang - Fix fmt.Errorf in generated code
Patch: Chris Bannister
2014-03-21 00:42:58 +02:00
Jens Geyer
3c489f9e7f THRIFT-2418 Go handler function panics on internal error
Patch: Frank Schroeder
2014-03-20 23:03:48 +02:00
Jake Luciani
2bf90780d4 THRIFT-2417: Make union types partial classes
Patch by Jake Luciani, Reviewed by Jake Farrell
2014-03-20 10:30:43 -04:00
jfarrell
ec8daae710 THRIFT-2386: Thrift refuses to link yylex
Client: compiler
Patch: Milan Freml

Fixes undefined reference to `yylex' due to upstream changes.
2014-03-19 09:50:10 -04:00
Roger Meier
16fcad0b25 THRIFT-2407 use markdown (rename README => README.md)
Patch: Roger Meier
2014-03-19 06:47:47 +01:00
Jens Geyer
6fe77e8e66 THRIFT-2404 emit warning on (typically inefficient) list<byte>
Patch: Jens Geyer
2014-03-17 22:51:21 +02:00
jfarrell
d272f21cca THRIFT-2389: namespaces handled wrongly in acrionscript 3.0 implementation
Client: as3
Patch: dima levchenko

Updates compiler to work with AS3.0 namespacing
2014-03-11 21:56:15 -04:00
Jens Geyer
e3ab0bf507 THRIFT-2375 Excessive <br>'s in generated HTML
Patch: Jens Geyer
2014-03-11 22:32:31 +02:00
henrique
2a7dccc8a0 THRIFT-2355 Add SSL and Web Socket Support to Node and JavaScript
Patch: Randy Abernethy
2014-03-07 22:16:51 +01:00
henrique
af26af6d25 THRIFT-2387 nodejs: external imports should be centralized in index.js
Patch: Pierre Lamot
2014-03-06 15:06:22 +01:00
Jens Geyer
3e4c51f5cf THRIFT-2378 service method arguments of binary type lead to uncompileable Go code
Patch: Jens Geyer
2014-02-28 19:35:26 +01:00
Jens Geyer
111d13a1e7 THRIFT-2384 Binary map keys produce uncompilable code in go
Patch: Aleksey Pesternikov
2014-02-28 19:34:40 +01:00
Jens Geyer
38eea034c3 THRIFT-2380 unreachable code (CID 1174546, CID 1174679)
Patch: Jens Geyer
2014-02-26 21:00:05 +01:00
henrique
312362314c THRIFT-2376 nodejs: allow Promise style calls for client and server
patch:  Pierre Lamot
2014-02-25 22:11:10 +01:00
Jens Geyer
305e42ae3e THRIFT-2370 Compiler SEGFAULTs generating HTML documentation for complex structure
Patch: Jens Geyer
2014-02-23 19:36:18 +01:00
henrique
a2de410531 THRIFT-2350 Add async calls to normal JavaScript
Patch: Randy Abernethy
2014-02-07 14:12:56 +01:00
Roger Meier
2a816c28ae THRIFT-2348 PHP Generator: add array typehint to functions
Patch: Maurus Cuelenaere
2014-02-07 01:15:23 +01:00
Jens Geyer
38b1a04b60 THRIFT-2343 Fix tutotial code and codegen for methods without exceptions
Patch: Jens Geyer
2014-02-04 23:56:39 +01:00
Jens Geyer
4904ab81ff THRIFT-2343 Golang - Return a single error for all exceptions instead of multiple return values
Patch: Chris Bannister
2014-02-04 23:03:30 +01:00
Jens Geyer
d95fc9b1ee THRIFT-2341 Enable generation of Delphi XMLDoc comments (a.k.a. "Help Insight")
Patch: Jens Geyer
2014-02-02 18:08:31 +01:00
Jens Geyer
483d791f64 THRIFT-2340 Generated server implementation does not send response type EXCEPTION on the Thrift.TApplicationExceptionType.UNKNOWN_METHOD exception
Patch: Tomasz A. Biczel
2014-02-01 03:58:40 +01:00
Jens Geyer
813749dc50 THRIFT-2338 First doctext wrongly interpreted as program doctext in some cases
Patch: Jens Geyer
2014-01-31 23:42:57 +01:00
Jens Geyer
e8379b538a THRIFT-2320 Program level doctext does not get attached by parser
Patch: Craig Peterson & Jens Geyer
2014-01-25 00:59:45 +01:00
Roger Meier
ad7f788824 THRIFT-2330 Generate PHPDoc comments
Patch: Maurus Cuelenaere
2014-01-23 20:44:36 +01:00
Jens Geyer
026d7fc0e1 THRIFT-2323 Uncompileable Delphi code generated for typedef'd structs
Patch: Jens Geyer
2014-01-23 19:03:37 +01:00
Jens Geyer
a16737a87f THRIFT-2311 Go: invalid code generated when exception name is a go keyword
Patch: Krzysztof Godlewski
2014-01-13 19:55:44 +01:00
Jens Geyer
c0c889b9dd THRIFT-1964 'Isset' causes problems with C#/.NET serializers
Patch: Jens Geyer
2014-01-11 22:22:40 +01:00
Jake Farrell
06dbb8f011 THRIFT-2211:Exception constructor does not contain namespace prefix
Client: cocoa
Patch: Jan Brauer

Prefixed cocoa exceptions with set namespace.
2014-01-07 22:29:50 -05:00
Roger Meier
6bac11f4fa THRIFT-2304 cpp:Move client assignments from construtor in method
fix short_suffix
Patch: Roger Meier
2014-01-05 02:10:33 +01:00
Roger Meier
cf8b626434 THRIFT-2304 cpp:Move client assignments from construtor in method
Patch: Martin Vogt
2014-01-04 23:31:21 +01:00
Jens Geyer
1406c9adaf THRIFT-2290 anyfile.go:10: imported and not used: "math"
Patch: Jens Geyer
2013-12-24 17:20:20 +01:00
Jens Geyer
4095d62cd7 THRIFT-2322: wrong Go code generated for assignment of an optional set
Patch: Jens Geyer
2013-12-21 20:14:43 +01:00
Jens Geyer
0853ab67b4 THRIFT-2232 IsSet* broken in Go
Patch: Ben Sigelman
2013-12-17 21:38:44 +01:00
Roger Meier
acdac81665 THRIFT-2263 java: Always generate good hashCode for Java
Patch: Andrew Gaul
2013-12-08 22:10:36 +01:00
Jens Geyer
5b8e770864 THRIFT-2282 Incorect code generated for some typedefs
Patch: Jens Geyer
2013-12-07 00:11:38 +01:00
Jens Geyer
739032ac4b THRIFT-2281 Generated send/recv code ignores errors returned by the underlying protocol
Patch: Jens Geyer
2013-12-07 00:11:36 +01:00
Roger Meier
5f2d34e5ab THRIFT-2229 thrift failed to build on OSX 10.9 GM 2013-11-16 16:43:41 +01:00
Roger Meier
3da1c9025b THRIFT-2260 java: Thrift imposes unneeded dependency on commons-lang3
Patch: Andrew Gaul
2013-11-16 15:37:20 +01:00
Roger Meier
5df24f7afb THRIFT-2172 Java compiler allocates optionals array for every struct with an optional field
Patch: Andrew Gaul
2013-11-13 22:08:06 +01:00
Jens Geyer
b54fbd32cf THRIFT-2193 Java code generator emits spurious semicolon when deep copying binary data
Patch: Andrew Gaul  & Jens Geyer
2013-11-11 23:17:17 +01:00
Jens Geyer
4ccc24f621 THRIFT-2227 Thrift compiler generates spurious warnings with Xlint
Patch: Andrew Gaul
2013-11-11 22:43:45 +01:00
Jens Geyer
13848c6801 THRIFT-2254 Exceptions generated by Go compiler should implement error interface
Patch: Aleksey Pesternikov
2013-11-11 22:06:05 +01:00
Roger Meier
1ee7bb645d THRIFT-1813 java: Add @Generated annotation to generated classes
Patch: Arvind Jayaprakash and Andrew Gaul
2013-11-09 19:41:46 +01:00
Jens Geyer
73250ba96c THRIFT-2247 Go generator doesn't deal well with map keys of type binary
Patch: Tonnerre Lombard & Aleksey Pesternikov
2013-11-05 09:16:11 +01:00
Jens Geyer
0ec155e160 THRIFT-2246 Unset enum value is printed by ToString() - fix for some edge cases
Patch: Jens Geyer
2013-11-05 00:49:10 +01:00
Jens Geyer
088c26b40c THRIFT-2246 Unset enum value is printed by ToString()
Patch: Jens Geyer
2013-11-04 22:40:38 +01:00
Jens Geyer
fca0b8c972 THRIFT-1815 Code generators line buffer output - Go compiler
Patch: Jens Geyer
2013-11-03 23:42:35 +01:00
Jens Geyer
53078be3ee THRIFT-1815 Code generators line buffer output - Go compiler
Patch: Jens Geyer
2013-11-02 20:05:40 +02:00
Ben Craig
22856f3425 Related to THRIFT-2045: Somehow missed "go" MINGW issue that Jens found.
Putting that back and trying again...
Client: cpp compiler, build
Patch: Ben Craig, Jens Geyer
2013-10-11 08:53:51 -05:00
Ben Craig
e957675647 THRIFT-2045: C++ compiler warning and build cleanup (again)
Client: cpp
Patch: Ben Craig
2013-10-11 08:19:16 -05:00
Ben Craig
9f9cd10e81 Revert "THRIFT-2045: C++ compiler warning and build cleanup"
This reverts commit 282e440c6d.

This change had unintended autoconf side effects.
2013-10-09 09:47:48 -05:00
Ben Craig
282e440c6d THRIFT-2045: C++ compiler warning and build cleanup
Client: cpp compiler, go compiler, python compiler, compiler build
Patch: Ben Craig
2013-10-08 16:02:06 -05:00
Jens Geyer
27148dee98 THRIFT-2215 Generated HTML/Graphviz lists referenced enum identifiers as UNKNOWN.
Patch: Jens Geyer
2013-10-04 19:10:16 +02:00
Jens Geyer
0164040804 THRIFT-2195 Delphi: Add event handlers for server and processing events
Patch: Jens Geyer
2013-09-25 21:12:21 +02:00
Jens Geyer
83767a72cd THRIFT-2200: nested structs cause generate_fingerprint() to slow down at excessive CPU load
Patch: Jens Geyer
2013-09-23 22:09:49 +02:00
Ben Craig
836d95f9f0 THRIFT-2201: Ternary operator returns different types (build error for
some compilers)
Client: java compiler, ruby compiler
Patch: Randy Abernathy
2013-09-23 11:53:47 -05:00
Henrique Mendonça
f7be519e08 THRIFT-1772 Serialization does not check types of embedded structures.
Client: python
Patch: Avi Flamholz

clean up references to php only, no functional changes
2013-09-19 12:30:05 +02:00
Jens Geyer
8cd3efe50a THRIFT-1755 Comment parsing bug
Patch: Brian Brooks & Jens Geyer
2013-09-16 22:17:52 +02:00
Jens Geyer
901d555296 THRIFT-2175 Wrong field type set for binary
Patch: Jens Geyer
2013-09-10 21:34:43 +02:00
jfarrell
7096942cfa THRIFT-2178:Thrift generator returns error exit code on --version
Client: compiler
Patch: Nate Rosenblum

Changes exit status of --version call.
2013-09-09 20:33:38 -04:00
henrique
aff2f78b27 THRIFT-2167 nodejs lib throws error if options argument isn't passed
Client: nodejs
Patch: Randy Abernethy and Red Daly

also add examples to test makefile
2013-09-09 12:38:25 +02:00
Jens Geyer
c949514e41 THRIFT-2170 Generated Go code should populate all ReadErrors completely
Patch: Jens Geyer
2013-09-08 00:31:59 +02:00
Jens Geyer
ec8744c4dd THRIFT-2166 Delphi compiler should generate constant class name prefixed with thrift file name (similar to Java and C#)
Patch: Jens Geyer
2013-09-06 21:09:08 +02:00
Jens Geyer
d21fa6e502 THRIFT-2163 Incorrect Delphi code generated for typedef'ed constants
Patch: Jens Geyer
2013-09-06 21:05:46 +02:00
Jens Geyer
718f6eefb6 THRIFT-2162 Missing calls to inherited CTOR at misc. places
Patch: Jens Geyer
2013-09-06 21:02:57 +02:00
Jens Geyer
03d4944e85 THRIFT-2165: Thrift Compiler fails at input files with UTF-8 BOM
Patch: Jens Geyer
2013-09-04 22:34:41 +02:00
henrique
17d42799eb Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/thrift 2013-08-30 22:04:52 +02:00
Ben Craig
fb89bb5fca THRIFT-2155: Adding one liner guide to rename the version.h.in and rename
thrifty.cc.h
Client: cpp
Patch: Karthick Selvaraj
2013-08-30 13:46:05 -05:00
henrique
2fdd916b8b THRIFT-2053 NodeJS: Support for Multiplexing Services
Client: nodejs
Patch: Remo Hertig
2013-08-28 14:03:34 +02:00
Carl Yeksigian
cf1fe74b13 THRIFT-2149:Add an option to disable the generation of default operators
client: cpp
patch: Chris Stylianou
2013-08-26 17:29:11 -04:00
Jens Geyer
12c09f44cb THRIFT-667 Period should not be allowed in identifier names
Patch: Jens Geyer
2013-08-25 14:17:32 +02:00
Jens Geyer
d4a0b27ad0 THRIFT-1351 Compiler does not care about binary strings
Patch: Wade Simmons & Jens Geyer
2013-08-21 23:55:29 +02:00
jfarrell
f7516e13d3 Thrift-1614:Thrift build from svn repo sources fails with automake-1.12
Client: build
Patch: jfarrell

Override am__yacc_c2h to force all generated headers to be .h
2013-08-18 10:53:07 -04:00
jfarrell
92f24b2780 THRIFT-1614: Thrift build from svn repo sources fails with automake-1.12
Client: compiler
Patch: jfarrell

Updates automake version min req to 1.11 and switches header generated
by yacc to .h instead of .hh.
2013-08-17 15:47:13 -04:00
jfarrell
87577ef001 THRIFT-2128: lib GO tests fail with funct ends without a return statement
Client: go
Patch: jfarrell

Fix issue with go tests failing in go1 in the process function.
2013-08-16 09:26:05 -04:00
jfarrell
102c600bbb Thrift-2124: .o, .so, .la, .deps, .libs, gen-* files left tutorials, test and lib/cpp when making DIST
Client: build
Patch: jfarrell

Fixing all the missing files and dist build issues that have been ignored.
2013-08-15 21:20:19 -04:00
Carl Yeksigian
f8e8c59921 THRIFT-2105 Generated code for default values of collections ignores t_field::T_REQUIRED
Client: cpp
Patch: Vladimir Strisovsky
2013-08-13 18:23:03 -04:00
Jens Geyer
09b97c78de THRIFT-2017 Resource Leak in thrift struct under compiler/cpp/src/parse/t_program.h
Patch: kuldeep gupta
2013-08-04 13:39:09 +02:00