Commit Graph

1697 Commits

Author SHA1 Message Date
Jens Geyer
e780855d33 THRIFT-5044 Improve serialization support for TApplicationExceptions and custom exceptions
Client: Delphi
Patch: Jens Geyer

This closes #1960
2019-12-05 09:03:10 +01:00
kahotv
1e049101c5 Generate comments for the output cpp file
Client: cpp
Patch: kahotv <root@kaho.tv>

This closes #1954
2019-12-03 23:02:15 +01:00
Paulo Neves
4266faef0e THRIFT-5032 netstd: Use PascalCase for Properties.
Client: netstd
Patch: Paulo Neves

This closes #1949
2019-11-28 21:34:32 +01:00
Duru Can Celasun
f4475ff76f
THRIFT-5019: Duplicate imports from multiple includes from a namespace
If a thrift file includes two files from the same namespace into a
separate file, the generated Go code has duplicate imports for that
namespace. This fixes that.

Client: go
2019-11-20 15:31:35 +00:00
John Boiles
59694a796f THRIFT-5002: Fix argument containers for inherited functions
Fix a bug where remote.go client fails to compile when services 
extend other services and the parent service has a function that 
needs a container for its arguments.

Client:go

This closes #1925.
2019-11-09 19:22:26 +00:00
David Furey
b1d4b3afcc THRIFT-4989: Fix run time exception when using Swift TCompactProtocol
Client: Swift
Patch: David Furey

This closes #1908

Sort TStruct members by key before generating class properties so that Swift Thrift lib can use delta encoding for CompactProtocol.
2019-11-02 15:02:54 +01:00
Jens Geyer
3f3567a114 THRIFT-4981 Remove deprecated netcore bindings from the code base
Client: netcore
Patch: Jens Geyer

This closes #1901
2019-10-20 16:21:29 +02:00
Jens Geyer
7199741f44 THRIFT-4938 Issues with version.h treatment
Client: Compiler
Patch: Jens Geyer

This closes #1902
2019-10-20 16:20:57 +02:00
Qinghui Xu
6701dbb8e8 THRIFT-4976: Delay 1 second before recompiling
Patch: Qinghui Xu

This closes #1898

In some environment, the file system only has second accuracy on
file modification timestamp, so delay of 0.1 second before
recompiling could makes the modification timestamp unchanged.
2019-10-19 21:03:08 +02:00
Jens Geyer
a899fe8412 THRIFT-4973 Add deprecation messages for csharp and netcore
Client: csharp, netcore
Patch: Jens Geyer

This closes #1895
2019-10-11 00:27:00 +02:00
Elvis Pranskevichus
ec8c7c419b THRIFT-4920: Fix generation of binary string constants
Currently, the thrift compiler generates regular string literals for
string constants marked as `binary`.  This makes the resulting type
inconsistent under Python 3.

Client: python

This closes #1843.
2019-10-08 22:51:19 +01:00
Allen George
786c019476
Merge pull request #1870 from dbcfd/thrift-4953
THRIFT-4953: Missing Field Identifiers
2019-09-23 08:41:30 -04:00
Ewan Higgs
b3745eea10 THRIFT-4932: Using a default string on a binary field results in invalid Java code.
Client: Java
Patch: Ewan Higgs

This closes #1875.
2019-09-20 16:15:04 +01:00
Danny Browning
77d96c18c3 THRIFT-4960 bare trait (dyn) warnings
Client: Rust
Patch: Danny Browning

This closes #1851
2019-09-11 23:35:26 +02:00
Danny Browning
236032a8af THRIFT-4953: Missing Field Identifiers
When identifiers are not specified, negative id will be converted to a valid
rust identifier.
2019-09-06 10:40:53 -06:00
Danny Browning
942bd8403b Bare Trait Warnings
Fixes bare trait (dyn) warnings in the library as well as generated code.
2019-09-06 10:28:24 -06:00
Laeeth Isharc
74d6d9d3d6 Initialisation of immutable data in static constructors has been
deprecated.  They now need to be initialised in shared static
constructors.

This change brings the generator for D up to date with the latest
version of the compiler, but it should continue to work with older
versions.
2019-08-11 07:54:36 -04:00
Robert Schadek
3e95c533be THRIFT-4918: Avoid dlang name conflicts
Client: dlang

Currently Thrift generates members that are invalid for D because
they are D reserved words. This change fixes the problem by 
appending a '_' to such names.

This closes #1842.
2019-08-07 09:04:46 +01:00
soroshsabz
6a61dfabbf THRIFT-4830: Add to_string helper function for cpp generator (#1765) 2019-07-01 20:13:54 -04:00
Phil Price
35cda2fa85 Fix typescript generation for multi include cases
- Ensure imports are generated for includes in *_types.d.ts files
- Ensure generated type names for struct fields and function arguments
   are prefixed with import name if the type is not defined within the same
   program.
2019-07-01 14:09:28 -04:00
Kevin Wojniak
a392566e9b THRIFT-4896 - prevent cpp and c_glib include directories from leaking into other targets (#1821)
- enable the automake `nostdinc` option
- fix up include paths
2019-07-01 14:07:45 -04:00
John Boiles
d9019fc5a4 THRIFT-4797: Fix import collisions in Go
Client: go

This closes #1811.
2019-06-29 07:07:10 +01:00
Mustafa Senol Cosar
3f0d444791 Implement episodic compilation for js code generation 2019-06-21 06:38:32 -04:00
John Boiles
5eef01f231 THRIFT-4868: Fix Go compilation for optional sets with default values (#1802)
Client: go
2019-06-13 19:49:45 +02:00
Jens Geyer
5a17b13ebc THRIFT-4879 general performance improvements for netstd library
Client: netstd
Patch: Jens Geyer

This closes #1808
2019-06-04 22:31:58 +02:00
Sergey Elin
f3d4d51d42 Add missing autogenerated comment to header files
Client: erl
2019-05-12 07:07:28 -04:00
Jens Geyer
85431d9c6a THRIFT-4862 better ToString() support for enums and container types
Client: Delphi
Patch: Jens Geyer
2019-05-10 22:49:20 +02:00
Jens Geyer
8f7487e108 THRIFT-4862 better ToString() support for enums and container types
Client: Delphi
Patch: Jens Geyer

This closes #1795
2019-05-10 00:39:30 +02:00
Danny Browning
ddec431b4a TryFrom stable
TryFrom is now stable, so use that. Additionally re-export OrderedFloat since
it is used by the generated code. Relax dependencies to reduce downstream
conflicts.
2019-03-22 14:38:36 -04:00
Jens Geyer
73a0272d66 THRIFT-4832 superfluous backing field causes CS0169 "field never used"
Client: netstd
Patch: Jens Geyer

This closes #1768
2019-03-21 09:03:19 +01:00
Jens Geyer
c6b019affd THRIFT-4768 Remove "nullable" option from the code base (netstd ONLY)
Client: netstd
Patch: Jens Geyer
2019-02-15 13:55:11 -05:00
James E. King III
393f6c93e1 THRIFT-3877: fix py/py3 server, java client with http transport
The java TestClient asks the server to runa  oneway request that
sleeps for 3 seconds.  If the java TestClient sees the duration
of the call exceed one second, it fails the test.  This means the
server did not participate in the "fire and forget" dynamics of
ONEWAY requests.  In this case the THttpServer was processing the
RPC before sending the transport response.  The fix was to enhance
the TProcessor so that the THttpServer has an opportunity to inspect
the message header before processing the RPC.

This is partly due to the violation of the THttpServer in the
layered architecture.  It is essentially implementing a combined
server and transport, whereas there should be a distinct server,
protocol, and transport separation.  Many languages seem to have
this problem where HTTP was introduced.
2019-02-11 17:46:30 -05:00
cyy
647501693b THRIFT-4776:Modernize c++11 code by clang-tidy (#1732)
* use override
* use make_shared
* use emplace
* use range for
* fix error on MSVC
* replace boost functions with std functions
* fix static analyzer warnings
* check api return value
* initialize member
* check the return value of SSL_peek > 0
* add override
2019-02-08 00:40:59 -05:00
James E. King III
4c57be0b60 THRIFT-4384: fix concurrent sync in cpp async client code 2019-02-02 22:10:41 -05:00
James E. King III
53bd0e6295 THRIFT-4745: fixes compiler warnings 2019-02-01 11:13:49 -05:00
Sebastian Zenker
2ec93c8a2d THRIFT-4763: HTML compiler produces invalid HTML document (#1720)
* HTML: the html generator did generate a closing </code> tag without a match <code>
* THRIFT-4763: added HTML test and fixed up additional HTML generation issues
2019-01-30 20:14:27 -05:00
Sebastian Zenker
042580f534 THRIFT-4762: Applied some C++11 refactorings to the runtime library and compiler (#1719)
* make use of C++11 override keyword
* added const specifier to TTransport::getOrigin()
* added more const correctness to the compiler
* make use of auto keyword
* replaced usage of NULL with nullptr
* make use of explicitly-defaulted function definition
* extended changelog
2019-01-29 09:48:12 -05:00
Jens Geyer
aa0c8b35d8 THRIFT-4723 Consolidate C#/netcore into new netstd language target
Client: netstd
Patch: Jens Geyer

This closes #1710
2019-01-28 23:12:28 +01:00
James E. King III
29f7f8f32f THRIFT-4743: remove cpp compiler plugin support to simplify the project 2019-01-26 23:53:38 -05:00
Mustafa Senol Cosar
129bb3e10d THRIFT-4675: Fix int64 constants generation for map keys 2019-01-25 10:03:37 -05:00
Jens Geyer
67fbc1f615 THRIFT-4722 Netcore union "data" should be strongly-typed
Client: netcore
Patch: Jens Geyer
2019-01-24 12:29:33 -05:00
Jens Geyer
f5de98aab3 THRIFT-4715 C# union "data" should be strongly-typed
Client: C#
Patch: Jens Geyer
2019-01-24 12:28:09 -05:00
James E. King III
b1d63e7190 THRIFT-4750: as3 changes to build and publish to maven central 2019-01-24 12:20:30 -05:00
Mustafa Senol Cosar
0c93bb6903 THRIFT-4738: Fix typescript declaration generation 2019-01-22 11:14:05 -05:00
James E. King III
dd63da19fa
Merge pull request #1690 from cyyever/const_members
THRIFT-4740:Use std::chrono for timeout and add const to some methods.
2019-01-22 09:40:21 -05:00
Renan Cakirerk
c28a739b8c THRIFT-4747: The 'omitempty' tag should not be appended to optional fields that have a default value 2019-01-21 22:25:40 -05:00
Rob Becker
f1eadad76e THRIFT-4654 Minor fixes for dart 1 & 2 compatibility (backwards compatible) (#1617)
* THRIFT-4654 Minor fixes for dart 1 & 2 compatibility
* update dockerfiles for CI to test dart 2
* THRIFT-4654 update pubspec for tests
* THRIFT-4654 update dart test generator and readme to 1.24.3
* THRIFT-4654 update generated dart sdk to a range
* fix the dart tutorials
* Add .dart_tool directories to .gitignore
* THRIFT-4654: use dart 2.1.0 and fix cross test dart client timeout
2019-01-21 22:24:01 -05:00
cyy
9fed90104c fix static analyzer warings 2019-01-22 10:38:15 +08:00
Jens Geyer
3b280d1ee2 THRIFT-4744 Erlang help intendation not aligned
Client: Erlang
Patch: Jens Geyer
2019-01-20 12:38:36 +01:00
Mustafa Senol Cosar
f86845e8ed THRIFT-4675: Generate Int64 constants for js 2019-01-15 09:20:54 -05:00
James E. King III
234fb47229 THRIFT-4719: remove cocoa 2019-01-14 08:13:52 -05:00
James E. King III
1735542542 THRIFT-4735: Remove Qt4 build support 2019-01-13 09:01:52 -05:00
James E. King III
278528cf7b THRIFT-4732: windows cmake refinements and add windows docker build support 2019-01-11 20:47:00 -05:00
James E. King III
c9ac8d2953 THRIFT-4720: documenting breaking changes, minor cleanup 2019-01-09 17:05:34 -05:00
cyy
0140cbf567 remove unused variables 2019-01-07 08:11:37 -05:00
cyy
316723add4 remove stdcxx namespace and use std directly 2019-01-07 08:11:37 -05:00
cyy
e42cf5023e use noexcept instead of throw() in compiler generated code 2019-01-07 08:11:37 -05:00
Shaoyu Zhang
087d88108d THRIFT-4684: Fix WCF related C# code generation
Client: C#
Complete the namespace in System.ServiceModel in WCF related code.
Also when generating fields in fault classes, we follow the same behavior in normal struct,
to avoid generating unused private fields, when auto properties are also generated.
2018-12-25 12:53:52 -05:00
James E. King III
9b75e4fe74 THRIFT-4680: fix up std::min, std::max, and numeric limits min/max on Windows; remove NOMINMAX from cmake build 2018-12-18 10:17:57 -05:00
louyl
9c3d2d6c0a Fix build compiler with cmake 2018-12-10 08:35:09 -05:00
wilfrem
2c69b5a01e THRIFT-3143: Add nodets support
Co-authored-by: Mustafa Senol Cosar <cosar.mustafasenol@gmail.com>
2018-11-29 15:28:44 -05:00
Jens Geyer
b073e1438d THRIFT-4672 IAsyncResult style methods not being supported by certain transports leads to issues in mixed ISync/IAsync use cases
Client: C#
Patch: Jens Geyer

This closes #1633
2018-11-24 21:46:53 +01:00
Palmer Cox
5112afcc97 THRIFT-4670: Twisted, slots, and void method fails with "object has no attribute 'success'"
For a void method, there is no success value, so, it is an error to
attempt to assign one to the result object. This error is harmless
unless slots is also specified - with slots specified, the attempt to
assign to a non-existent field causes an error which makes the service
method fail.

Client: py
2018-11-22 08:17:15 -05:00
GREATEST Wiggler EvaR!
0882354f28 Fix function name in Rust generator (does not affect generated code)
Client: rs
2018-11-16 15:50:17 -05:00
GREATEST Wiggler EvaR!
b57d126157 THRIFT-4529: Rust enum variants are now camel-cased
Client: rs
2018-11-12 07:57:43 -05:00
jake-ruyi
6436899e47 THRIFT-4662: Rust const string calls function at compile time
Client: rs
2018-11-12 07:51:25 -05:00
jake-ruyi
d5bd2005ea THRIFT-4661: Rust enum name wrong case in generated structs
Client: rs
2018-11-09 17:56:25 -05:00
Lázaro Clapp
fed4977027 THRIFT-4660: Include Generated and Nullable as needed for enums
Client: Java
2018-11-06 07:55:55 +01:00
Manu Sridharan
f216dfb716 THRIFT-4657: Include @javax.annotation.Generated annotations for generated Java union classes
Client: Java
2018-11-03 07:45:50 +01:00
bforbis
da1169d75b THRIFT-4653: ES6 classes support (#1615)
* ES6 classes support
* Lint generated code
* ES6 Tests for NodeJS
* Add eslint rules for nodejs
* Run prettier/eslint on nodejs test code
2018-10-28 11:27:38 -04:00
D. Can Celasun
9ee29516c4 Replace git.apache.org imports with github.com
Client: go
2018-10-19 07:48:56 +01:00
Dean Hamstead
8a130f63e5 THRIFT-4382: Replace the use of Indirect Object Syntax calls to new() 2018-10-17 19:13:45 -04:00
Craig Wickesser
5c1ecb67cd THRIFT-4650: fix required fields incorrectly being marked as set
This closes #1610.

Client: go
2018-10-16 07:40:13 +01:00
Simon South
2853da436f THRIFT-4648: Use correct namespace in type names
Client: c_glib
2018-10-12 07:35:39 -04:00
David Walker
031f57122f THRIFT-4646: change dart generation of exception to exception
Generator: Dart
2018-10-04 15:44:02 -04:00
Tsuzu
14190de4cb THRIFT-4644: Compiler cannot be compiled on macOS (#1601)
Client: compiler
2018-10-03 07:57:17 -04:00
nsrtvwls
014f53f658 THRIFT-4496: python specific list of keywords for python generator (#1567)
Client: py
2018-09-28 11:11:21 -04:00
Brian Forbis
b5d6ea390f THRIFT-4625: Use let/const variable decorators in ES6 Javascript 2018-09-28 10:36:55 -04:00
Jens Geyer
0f6e52abcc THRIFT-4637 C# async mode generates incorrect code with inherited services
Client: C#
Patch: Jens Geyer
2018-09-16 07:02:55 -04:00
Charles Giardina
180888820a THRIFT-4631 Fix Ruby codegen to gen valid ruby for recursive structs 2018-09-15 09:47:14 -04:00
Chris Simpson
612fdd871c Better consistency with module names, fix module name for Errors 2018-09-13 07:50:24 -04:00
Simon South
8de3749235 THRIFT-4622: Resolve typedef'd list-element type
Client: c_glib
2018-08-29 08:03:07 -04:00
Flavien Raynaud
3f5f0f82a7 THRIFT-4617: Prepend service-specific struct names with service name (#1578)
Client: rs
2018-08-28 23:55:15 -04:00
Manu Sridharan
831819c563 THRIFT-4614: Generate missing @Nullable annotation (#1577)
Client: Java
2018-08-07 06:40:38 +01:00
bforbis
f2867c2498 THRIFT-3950: Memory leak while calling oneway methods (#1568)
* THRIFT-3950: Memory leak while calling oneway methods
* THRIFT-3950: Update NodeJS Oneway tests
2018-07-17 12:19:49 -04:00
Kevin Carbone
e7fa464584 THRIFT-4586: Cocoa generator generates NSString with copy instead of strong.
Client: [cocoa]
2018-07-03 08:18:54 -04:00
Brian Forbis
d7b635f784 THRIFT-4225: Delete callback if RPC send failed 2018-06-27 08:48:18 -04:00
Brian Forbis
896c206c56 THRIFT-4564: Reset buffered transport on serizliation errors 2018-06-21 20:48:16 -04:00
D. Can Celasun
88591e32e7
THRIFT-4573 Support binary fields in union counts
This commit also fixes another, related issue: Since union support was
added in b3654df, `Count*` methods (and count checks in `Write`
methods) were only generated if there was at least 1 pointer field.

But pointer fields are not the only nullable types in Go, slices and
maps can also be set the nil, which are now taken into account.

Client: go
2018-05-17 10:26:09 +02:00
McGradyDa
8672394ade Simplify the rust code generated by the generator (#1553)
Client: rs
2018-05-09 08:51:31 -04:00
Jens Geyer
92d80629ac THRIFT-4562 Calling wrong exception CTOR leads to "call failed: unknown result" instead of the real exception being thrown
Client: Delphi
Patch: Jens Geyer

This closes #1551
2018-05-03 09:04:05 +02:00
nicaro
c7aa68bd59 Thrift 4556: Optional rethrow of unhandled exceptions in java processor (#1544)
Client: java
2018-05-01 09:07:50 -04:00
Mustafa Senol Cosar
09c1f3719c THRIFT-4532: Do not update previously generated output files if the contents have not changed 2018-05-01 07:53:52 -04:00
Pierre Mignolet
4a00fc658a THRIFT-4558 normalize name in C# constructor
Client: csharp
Patch: Pierre Mignolet <p.mignolet@evs.com>

This closes #1546
2018-04-17 22:12:17 +02:00
Ben Podgursky
50bfc56d5d THRIFT-4555 Optionally disable copies of binary fields in constructors, getters and setters.
Client: java

This closes #1540.
2018-04-17 07:21:46 +01:00
Jens Geyer
c564651dd4 THRIFT-4554 uncompileable code with member names that are also types under specific conditions
Client: Delphi
Patch: Jens Geyer

This closes #1539
2018-04-14 00:51:41 +02:00
Davin Chia
b9d5fb25e4 THRIFT-4253: Fix for constant assignments to optional fields in Go. (#1311)
Client: go
2018-04-09 08:04:42 -04:00
Chris Simpson
a9b6c7039b THRIFT-3773: Swift 3 changes, Squashed (#1084)
Client: swift
2018-04-08 07:11:37 -04:00
Manu Sridharan
930428438c
THRIFT-4530: add @Nullable annotations to generated Java code
Use our own `org.apache.thrift.annotations.Nullable` type to avoid
introducing a third-party dependency

Client: java

This closes #1522.
2018-03-29 14:53:36 +02:00
Margar Simonyan
46fec41738
THRIFT-4531: Fix generated Python read() method for immutable structs with optional members
Client: python

This closes #1521.
2018-03-28 10:35:16 +02:00