Commit Graph

1347 Commits

Author SHA1 Message Date
Frederik Gladhorn
e15ade77cb THRIFT-3244 TypeScript: fix namespace of imported types 2015-07-16 23:52:42 +02:00
Kaspar Fenner
8b01553758 THRIFT-3248 Remove additional comma in TypeScript method signature
Fixes a bug which adds an additional comma in the method signature
of methods with no (zero) parameters.

Signed-off-by: Kaspar Fenner <kaspar.fenner@siemens.com>
2015-07-16 23:05:43 +02:00
ben-craig
fae08e774c THRIFT-3246 Reduce the number of trivial warnings in Windows C++ CMake builds
Client: cpp
Patch: Ben Craig <bencraig@apache.org>

This closes #553
2015-07-15 11:34:47 -05:00
Felipe Barriga Richards
5af2d99c5e THRIFT-3223 TypeScript: Added support for maps of enums. 2015-07-13 15:25:58 +02:00
Felipe Barriga Richards
20a25519c4 THRIFT-3222 TypeScript: Fix enum generation (remove quotes) 2015-07-12 21:49:45 +02:00
Jens Geyer
01a77ab01e THRIFT-3230: transform typedef when getting type name
Client: Python
Patch: 软件工程师李飛 <lifei@7v1.net>

This closes #545

Python compiler generates wrong code if there is function throwing a typedef of exception with another namespace. We should use the real type name instead of  the name of typedef.
2015-07-11 11:46:38 +02:00
Jens Geyer
90c60e340c THRIFT-3239 Limit recursion depth
Client: Haxe
Patch: Jens Geyer

This closes #547
2015-07-11 01:19:53 +02:00
Ben Craig
8b4e155f04 Adding audit tool to the compiler's pre-fab Visual Studio project 2015-07-09 20:58:04 -05:00
Ben Craig
012dd4e3fc Renamed, relocated, and reformated the audit tool's readme file 2015-07-09 20:55:53 -05:00
Jens Geyer
4018036980 THRIFT-3235 C#: Limit recursion depth to 64
Client: C#
Patch: Jens Geyer
2015-07-09 23:06:41 +02:00
Jens Geyer
d47fcdd66d THRIFT-3234 Delphi: Limit recursion depth to 64
Client: Delphi
Patch: Jens Geyer
2015-07-09 22:20:12 +02:00
Ben Craig
cfaadcc4ad THRIFT-3231 CPP: Limit recursion depth to 64
Client: cpp
Patch: Ben Craig <bencraig@apache.org>
2015-07-08 20:50:33 -05:00
Ben Craig
262cfb4189 THRIFT-3221 Create a tool to audit network compatibility between two
.thrift files
Client: Compiler (general)
Patch: Sanjay Poojary <sanjay.poojary@ni.com>, Ben Craig
<bencraig@apache.org>, and Zach Hindes <zach.hindes@ni.com>

This closes #541
2015-07-08 20:37:15 -05:00
Jens Geyer
6e40376568 THRIFT-3220 Option to suppress @Generated Annotation entirely
Client: Java
Patch: notona <notona@gmail.com> & Jens Geyer

This closes #540

This change contains:
- the work of notona from GitHub PR 540
- additional changes I made to align THRIFT-3220 and THRIFT-3193
2015-07-05 19:24:11 +02:00
Jens Geyer
5cf9d7744c THRIFT-3214 Add Erlang option for using maps instead of dicts
Client: Erlang
Patch: Michael Oliver <mikemboliver@gmail.com>

This closes #535
2015-07-02 21:07:17 +02:00
Jens Geyer
7702536249 THRIFT-2921 Make Erlang impl ready for OTP 18 release (dict/0 and set/0 are deprecated)
Client: Erlang
Patch: Michael Oliver <mikemboliver@gmail.com>

This closes #533
2015-06-30 21:31:50 +02:00
Jens Geyer
24ef0d6f51 THRIFT-3193 Option to supress date value in @Generated annotation
Client: Java
Patch: Roshan George <roshan@arjie.com>

This closes #531
2015-06-30 21:31:48 +02:00
Jens Geyer
507075607f THRIFT-3210 (uncompileable) code generated for server events while are events not enabled
Client: Delphi
Patch: Jens Geyer
2015-06-29 11:30:40 +02:00
Henrique Mendonça
15d904240e THRIFT-3122 Javascript struct constructor should properly initialize struct and container members from plain js arguments
Patch:  Igor Tkach

This closes #519
2015-06-25 22:31:41 +10:00
Jens Geyer
86a51e7eca THRIFT-3170: Add a flag to allow the ignoring of common initialisms in Go
Client: Go
Patch: Paul Magrath <paul@paulmagrath.com>

This closes #508
2015-06-01 21:09:17 +02:00
Henrique Mendonça
c0e4a8dc07 Revert "THRIFT-3122 Javascript struct constructor should properly initialize struct and container members from plain js arguments"
This reverts commit 1568aef7d4.
2015-06-01 23:23:22 +10:00
Jens Geyer
b3b7d0457a THRIFT-3174: Modify initialism code in Go compiler to check first word
Client: Go
Patch: Paul Magrath <paul@paulmagrath.com>

This closes #509
2015-05-30 22:56:01 +02:00
Henrique Mendonça
1568aef7d4 THRIFT-3122 Javascript struct constructor should properly initialize struct and container members from plain js arguments
Client: Node and JS
Patch: Igor Tkach

    This closes #476
2015-05-27 22:15:46 +10:00
Jens Geyer
549a9e1e6d THRIFT-3160 go: make generated enum types implement TextMarshaler and TextUnmarshaler
Client: Go
Patch: Konstantin Shaposhnikov <k.shaposhnikov@gmail.com>

This closes #507
2015-05-21 22:20:31 +02:00
Jens Geyer
33eef3534f THRIFT-3150: fixed help text (thanks to Konstantin who catched this)
Client: Go
Patch: Jens Geyer
2015-05-21 02:16:47 +02:00
Jens Geyer
9265222b3f THRIFT-3150: fixed help text (thanks to Konstantin who catched this)
Client: Go
Patch: Jens Geyer
2015-05-21 02:13:18 +02:00
Jens Geyer
70219e108a THRIFT-3150 Add an option to make Read and Write methods private
Client: Go
Patch: Konstantin Shaposhnikov <k.shaposhnikov@gmail.com>, slightly modified by Jens Geyer

This closes #505
2015-05-20 23:36:50 +02:00
Konrad Grochowski
1f6e380c5d make style applied 2015-05-18 19:47:28 +02:00
Konrad Grochowski
3b115dfa61 THRIFT-727 - C++: what() method of generated exceptions will provide more information
Patch: Anna Dymek <aadymek@gmail.com>
Client: C++

This closes #469
2015-05-18 19:47:23 +02:00
Roger Meier
880a2b32e5 doc: update compiler CMake build and update .gitignore 2015-05-16 22:40:17 +02:00
Roger Meier
4ead520841 THRIFT-3155 move contrib/mingw32-toolchain.cmake to build/cmake/ 2015-05-16 21:09:18 +02:00
Jens Geyer
b7138acd86 THRIFT-3149 go: make generated readFieldN methods private
Client: Go
Patch: Konstantin Shaposhnikov <k.shaposhnikov@gmail.com>

This closes #496
2015-05-15 22:35:50 +02:00
Roger Meier
86fded21b5 THRIFT-2850 CMake: improve Windows support
use YY_NO_UNISTD_H and remove --wincompat
2015-05-15 15:44:22 +02:00
Jens Geyer
eab9c45bad THRIFT-3089 Assigning default ENUM values results in non-compilable java code if java namespace is not defined
Client: Java
Patch: Anna Dymek <aadymek@gmail.com>

This closes #490
2015-05-12 23:02:32 +02:00
Jens Geyer
b9f6038cfb THRIFT-3146 Graphviz generates function name collisions between services
Client: Graphviz
Patch: Adam Beberg
2015-05-12 22:39:31 +02:00
Jens Geyer
77a7103fe1 THRIFT-3144 make String representation of enums in generated go code less verbose
Client: Go
Patch: Konstantin Shaposhnikov <k.shaposhnikov@gmail.com>

This closes #489

Changed generated String/FromString methods for enums to use values from thrift definition file for string representation of an enum.

E.g.:
- before: String(TestEnum_FIRST) = "TestEnum_FIRST"
- after : String(TestEnum_FIRST) = "FIRST"
2015-05-11 22:45:55 +02:00
Konrad Grochowski
2a15b99372 THRIFT-3132: Java generator will properly format date in @Generated
Client: Java
Patch: Stig Bakken <stig@zedge.net>

This closes #484
2015-05-09 11:55:36 +02:00
Jens Geyer
dfc22ad205 THRIFT-3128 Go generated code produces name collisions between services
Client: Go
Patch: Adam Beberg
2015-05-08 21:43:50 +02:00
Jens Geyer
89cffc6f76 THRIFT-3126 PHP JSON serializer converts empty or int-indexed maps to lists
Client: php/test/Test/Thrift/JsonSerialize/JsonSerializeTest.php
Patch: Stig Bakken <stig@zedge.net>

This closes #479
2015-05-05 21:10:50 +02:00
Konrad Grochowski
de7cf5df92 THRIFT-3124: some signed/unsigned warnings removed from compiler
Client: all
Patch: Konrad Grochowski
2015-05-04 11:24:47 +02:00
Konrad Grochowski
13699f878a THRIFT-3123: Missing include added to compiler/cpp/src/main.h
Patch: David Ehrmann
Client: all

This closes #477
2015-05-04 11:21:22 +02:00
Jim King
9de9b1f1be THRIFT-2850 get windows cmake working again and building the unit tests for lib/cpp, and pass make check through cmake - also resolve some compiler warnings 2015-04-30 22:40:26 +02:00
Jens Geyer
811d279d58 THRIFT-3114 Using local temp variables to not pollute the global table
Client: Lua
Patch: Xin Li <lixin.lab@gmail.com>

This closes #463
2015-04-26 17:47:58 +02:00
Jens Geyer
958a7a242a THRIFT-3115 Uncompileable code due to name collision with predefined used types
Client: Delphi
Patch: Jens Geyer
2015-04-26 17:47:50 +02:00
Jens Geyer
5ec2121cf2 THRIFT-233 IDL doesn't support negative hex literals
Client: Compiler general
Patch: mreve <aadymek@gmail.com>

This closes #461

Update hexconstant regex in thriftl.ll
As it is now, the parser doesn't allow hex constant values to be negative (it throws a 'bad syntax' error).The change updates the regex and the part that parses the hex value from the string read from the IDL file to support negative values.

Add test to ConstantsDemo.thrift
Before the change, "make install" would break with negative hex constant in ConstantsDemo.thrift. Now it compiles.
2015-04-26 17:47:43 +02:00
Roger Meier
71f2d8a714 THRIFT-3067 C++ cppcheck performance related warnings
Patch: Arijit Chattopadhyay <arijitnit06@gmail.com>

This closes #444
2015-04-26 17:00:04 +02:00
Jens Geyer
3b61971c8e THRIFT-3047 Uneven calls to indent_up and indent_down in Cocoa generator
Client: Cocoa
Author: Mike Riley <mikeriley@yelirekim.com>

This closes #401
2015-04-16 22:11:14 +02:00
Jens Geyer
f332d16460 THRIFT-3041 Generate asynchronous clients for Cocoa
Client: Cocoa
Patch: Mike Riley <mikeriley@yelirekim.com>

This closes #400
2015-04-16 22:11:11 +02:00
Jens Geyer
f9c318ca9e THRIFT-3098 Print binary typedefs the same way we do binary fields
Client: Java
Patch: Roshan George <roshan@arjie.com>

This closes #445
2015-04-16 21:29:20 +02:00
Roger Meier
a242c28ba1 THRIFT-227 Pretty print binary collections
This closes #441

commit 5da68694fec6a51e97f5a75823babb1074e32eb2
Author: Roshan George <roshan@arjie.com>
Date: 2015-04-13T03:40:26Z
2015-04-14 22:14:41 +02:00
Roger Meier
8f27189dfd THRIFT-3090 cmake build is broken (set CMake version to 2.8.12) 2015-04-14 22:05:50 +02:00
Roger Meier
7726b03ac1 THRIFT-1857 Python 3.X Support - Replace deprecated "," with "as" in python exception generation code.
Patch: George Leslie-Waksman
This closes #440
2015-04-14 21:47:58 +02:00
Roger Meier
b1783a5722 THRIFT-3092 Generated Haskell types should derive Generic
This closes #437

commit bc922190b70e1264f356ab463dda18babf7910e3
Author: Abhinav Gupta <mail@abhinavg.net>
Date: 2015-03-11T07:26:58Z

[haskell] Derive Generic in generated types
2015-04-12 22:08:20 +02:00
Roger Meier
5af78c8776 Revert "THRIFT-3014 AppVeyor support - fix format"
This reverts commit 81b3c440c6.

commit included modified CMakeLists.txt files, as part from local test
2015-04-12 21:43:12 +02:00
Roger Meier
81b3c440c6 THRIFT-3014 AppVeyor support - fix format 2015-04-12 21:06:11 +02:00
Nobuaki Sukegawa
6d71dc8688 THRIFT-3091 c_glib service method should return result from handler method 2015-04-12 09:58:22 +02:00
Jens Geyer
86f7350f90 THRIFT-3076 Compatibility with Haxe 3.2.0
Client: Haxe
Patch: Jens Geyer

This closes #435
2015-04-11 02:04:09 +02:00
Nobuaki Sukegawa
58ed1cdf3c THRIFT-3057 Java compiler build is broken 2015-03-29 14:39:32 +02:00
Roger Meier
e6789480d2 THRIFT-1909 Java: Add compiler flag to use the "option pattern" for optional fields
Patch: Eirik Sletteberg & rebase by Wouter Lammers
2015-03-23 20:41:15 +01:00
Jens Geyer
43ceaf7cf5 THRIFT-3043 go compiler generator uses non C++98 code
Client: Go
Patch: Jens Geyer
2015-03-17 00:39:36 +02:00
Jens Geyer
1d1bca2738 THRIFT-3027 Go compiler does not ensure common initialisms have consistent case
Client: Go
Patch: Magrath <paul@paulmagrath.com>

This closes #394
2015-03-14 16:38:43 +02:00
Jens Geyer
28c1c19f91 THRIFT-3023 Go compiler is a little overly conservative with names of attributes
Client: Go
Patch: Paul Magrath <paul@swiftkey.com>

This closes #389
2015-03-07 14:25:00 +01:00
Jens Geyer
eda0f844ee THRIFT-3021 Service remote tool does not import stub package with package prefix
Client: Go
Patch: Yinyin L <yinyinl@gmail.com>

This closes #385
2015-03-03 21:35:44 +01:00
Jens Geyer
3811e59c15 THRIFT-3019 Golang generator missing docstring for structs
Client: Go
Patch: Abdel Said
2015-03-03 21:35:36 +01:00
Jens Geyer
962e41078b THRIFT-3006 Attach 'omitempty' json tag for optional fields in Go
Client: Go
Patch: Peter Woodman <peter@vineapp.com>

This closes #380
2015-02-27 22:53:00 +01:00
Randy Abernethy
bd60b92c6f THRIFT-3008: Node.js server does not fully support exceptions
Client: Node.js
Patch: Nobuaki Sukegawa

Github Pull Request:
This closes #382
commit 0c0d51ca1dafa5f8e0004563df780a92580590f3
Author: Nobuaki Sukegawa <nsukeg@gmail.com>
Date: 2015-02-22T16:49:22Z
THRIFT-3008 - Node.js server does not fully support exception
2015-02-26 16:59:14 -08:00
Jens Geyer
80aa53e6bc THRIFT-3001 C# Equals fails for binary fields (byte[])
Client: C#
Patch: Benjamin Schulz, Testcase added by Jens Geyer
2015-02-18 23:25:13 +01:00
Konrad Grochowski
3bc6424c76 THRIFT-2724 - Coding standards template added all over project
Client: All
Patch: Konrad Grochowski

This closes #371
2015-02-05 12:15:19 +01:00
Jens Geyer
b3654df14c THRIFT-2189 add union support for go generator
Client: Go
Patch: Anton Lindström <lindztr@gmail.com> and Jens Geyer

This closes #369

This makes it possible to check if a field  is set and skips adding new ones.
Fields in unions are pointers by setting them as `t_field::T_OPTIONAL`.

To be sure that exactly one and only one field is set in a union, we count the
number of fields set and return an error if not exactly one field is set.

This is a breaking change and will require fields in unions to be passed in as
pointers.
2015-02-03 23:40:02 +01:00
Jens Geyer
2663ec43ab THRIFT-2955 Using list of typedefs does not compile on Go
Client: Go
Patch: Johannes Martinsson <johannes@saltside.se>

Be explicit about when to use true type.
2015-02-03 22:45:18 +01:00
Jens Geyer
12d430e723 THRIFT-2955 Using list of typedefs does not compile on Go
Client: Go
Patch: Johannes Martinsson <johannes@saltside.se>

Be explicit about when to use true type.
2015-02-03 22:34:41 +01:00
henrique
2f2d6ac7ea THRIFT-2368 New option: reuse-objects for Java generator
Client: Java
Patch: adam.p.hajduk

amendments to original patch
2015-02-03 12:47:31 +11:00
jfarrell
8f2596ad54 THRIFT-2961: Service inheritance does not work with namespaced Ruby code
Client: rb
Patch: Jan Brauer

This closes #364

commit 111c4e77a78c1a82f526923f13534bb0027ef33f
Author: Jan Brauer <jan@jimdo.com>
Date: 2015-01-29T22:01:26Z
Make 'extends' work with 'rb:namespaced'.
commit 34cab3d7c77bd5e8325ac4f30f1091429c35905e
Author: Jan Brauer <jan@jimdo.com>
Date: 2015-01-29T22:25:03Z
Add test for namespaced service extension
2015-01-29 23:42:05 -05:00
jfarrell
4e16718e99 Thrift-2960: Fix namespace regression for Ruby
Client: rb
Patch: Jan Brauer

Add test that exposes the broken namespacing.

Fixes a bug introduced by #140.

This closes #363
2015-01-29 23:03:34 -05:00
Jens Geyer
176c9261ed THRIFT-2949 typo in compiler/cpp/README.md
Client: C++
Patch: Seokju Yun <noricube@gmail.com>

This closes #359
2015-01-29 00:30:08 +01:00
Jens Geyer
ce36aac591 THRIFT-2942 CSharp generate invalid code for property named read or write
Client: C#
Patch: Jens Geyer
2015-01-20 23:31:19 +01:00
Jens Geyer
307144a5b5 THRIFT-2878 Go validation support of required fields
Client: Go
Patch: Chi Vinh Le <cvl@chinet.info>

This closes #304
2015-01-20 22:40:38 +01:00
Jens Geyer
89dc20f4e0 THRIFT-2915 Lua generator missing from Visual Studio build project
Client: Compiler (general)
Patch: Jens Geyer
2014-12-24 02:39:53 +01:00
Roger Meier
1b17991f26 THRIFT-2897: Implement hash and isEqual: methods
Client: cocoa
Patch:  Jim Speth

This closes #330
2014-12-21 21:05:14 +01:00
Kirby1337
6d9a3ca7d9 THRIFT-2901 Fix for generated TypeScript functions + indentation of JavaScript maps 2014-12-21 17:38:58 +01:00
Nobuaki Sukegawa
80784b1098 THRIFT-2902 Generated c_glib code does not compile with clang 2014-12-18 22:20:55 +01:00
Jens Geyer
c61b3a8170 THRIFT-2894 PHP json serializer skips maps with int/bool keys
Client: PHP
Patch: Stig Bakken <stig@zedge.net>

This closes #331

PHP generator: in jsonSerialize, only skip maps with non-scalar keys (previously skipped maps with non-string keys)
2014-12-18 21:48:42 +01:00
Jens Geyer
a792e5d5ac THRIFT-2894 PHP json serializer skips maps with int/bool keys
Client: PHP
Patch: Stig Bakken <stig@zedge.net>

This closes #320

PHP generator: in jsonSerialize, only skip maps with non-scalar keys (previously skipped maps with non-string keys)
2014-12-16 22:59:02 +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
winsweet
de76a3772b THRIFT-2882 Lua Generator: using string.len funtion to get struct(map,list,set) size 2014-12-13 21:29:55 +01:00
Nate Rosenblum
3c5a788d8f THRIFT-2836 Add moveable_types option to C++ generator
Setting this option enables generation of MoveConstructible types,
allowing types to be bound via move in std::bind. This is especially
pleasant when using Thrift container types.
2014-12-13 21:22:47 +01:00
Konrad Grochowski
714a9aa1c5 THRIFT-2888: JSON generator - fixed missing include
Client: JSON
Patch: Pascal Bach

<limits> was used but not directly included
2014-12-12 16:03:40 +01:00
Jens Geyer
1f42d31575 THRIFT-2868 Enhance error handling in the Go client
Client: Go
Patch: Chi Vinh Le <cvl@chinet.info>

This closes #297
2014-12-08 21:49:54 +01:00
Konrad Grochowski
0494987fd1 THRIFT-2859: JSON generator - fixed i64 numbers generation
Client: JSON
Patch: Stig Bakken

Also forced "C locale" for numbers - problems where detected in JSON lib
in C++, so fixing it in generator also might be a good idea.

This closes #305
2014-12-06 20:09:10 +01:00
Konrad Grochowski
6ce1e73d71 THRIFT-2866: Go - generator code readability enhanced
Client: Go
Patch: Chi Vinh Le

This closes #295
2014-12-01 19:30:33 +01:00
Konrad Grochowski
9462ce388e THRIFT-2859: compilation fix, C++11 removed from JSON generator 2014-12-01 12:11:31 +01:00
Konrad Grochowski
dae6d3cbd1 'make style' applied 2014-12-01 11:26:07 +01:00
Jens Geyer
ffa255cac5 THRIFT-2859 JSON generator: output complete descriptors
Client: JSON
Patch: Stig Bakken <stig@zedge.net>

This closes #290

- add --gen json:merge option, and disable merging by default
- output complete descriptors
- add schema for JSON generator
- indent output
2014-12-01 02:15:54 +01:00
Jens Geyer
527b6d9c86 THRIFT-2854 Go Struct writer and reader looses important error information
Client: Go
Patch: Chi Vinh Le <cvl@chinet.info>

This closes #291

Fixes error reporting in go generator
2014-11-30 15:24:08 +01:00
Jens Geyer
200150d330 THRIFT-2864 JSON generator missing from Visual Studio build project
Client: Compiler (general)
Patch: Jens Geyer
2014-11-30 12:29:37 +01:00
Jens Geyer
6aeb82ef5d THRIFT-2862 Enable RTTI and/or build macros for generated code
Client: Haxe
Patch: Jens Geyer

This closes #293
2014-11-29 23:47:11 +01:00
Jens Geyer
406e7956c1 THRIFT-2860 Delphi server closes connection on unexpected exceptions
Client: Delphi
Patch: Jens Geyer
2014-11-29 19:05:46 +01:00
Jens Geyer
eed6a6d657 THRIFT-2857 C# generator creates uncompilable code for struct constants
Client: C#
Patch: Jens Geyer
Thanks: Stig Bakken for catching this

This closes #289

C#: constant assignments where values are structs did not properly
uppercase field names in the Constants constructor
2014-11-28 00:54:55 +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
Randy Abernethy
6a4589aa4f THRIFT-2834:Remove spurious semicolons in generated code
Client: Python Compiler
Patch: Cash Costello

Github Pull Request: This closes #276
2014-11-18 21:25:59 -08:00