Commit Graph

936 Commits

Author SHA1 Message Date
Elvis Pranskevichus
9c43962da8 Revert "Revert "THRIFT-4002: Make generated exception classes immutable by default""
This reverts commit 1234ddf8a5.
2019-12-12 13:50:42 +00:00
D. Can Celasun
1234ddf8a5
Revert "THRIFT-4002: Make generated exception classes immutable by default"
This reverts commit b40f5c227f.
2019-12-10 22:13:06 +00:00
Elvis Pranskevichus
b40f5c227f
THRIFT-4002: Make generated exception classes immutable by default
Currently, the generated exception classes are not hashable under
Python 3 because of the generated `__eq__` method.  Exception objects
are generally expected to be hashable by the Python standard library.
Post-construction mutation of an exception object seems like a very
unlikely case, so enable hashing for all exceptions by making them
immutable by default.  This also adds a way to opt-out of immutability
by setting the `python.immutable` annotation to `"false"`.
2019-12-10 20:44:24 +00:00
Jens Geyer
ffb97e105c THRIFT-4990 Upgrade to .NET Core 3.1 (LTS)
Client: netstd
Patch: Jens Geyer

This closes #1961
2019-12-07 08:47:32 +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
Jens Geyer
5080645cb0 THRIFT-5027 Implement remaining read bytes checks
Client: netstd
Patch: Jens Geyer

This closes #1946
2019-11-23 22:40:53 +01:00
Jens Geyer
b541c6f2b1 THRIFT-5026 TestClient/Server ignores first cmdline argument
Client: netstd
Patch: Jens Geyer

This closes #1945
2019-11-23 22:33:29 +01:00
Jens Geyer
eacd1d48c8 THRIFT-5021 Implement MAX_MESSAGE_SIZE and centralize limits into a TConfiguration class
Client: netstd
Patch: Jens Geyer

This closes #1943
2019-11-23 01:15:45 +01:00
Jens Geyer
261cad3417 THRIFT-5020 Refactoring & minor fixes for netstd library
Client: netstd
Patch: Jens Geyer

This closes #1941
2019-11-21 22:26:09 +01:00
Jens Geyer
ec439548c5 THRIFT-4990 Switch to .NET core 3.0
Client: netstsd
Patch: Jens Geyer

This closes #1909
2019-11-02 17:34:23 +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
616df98f00 fix veralign.sh and bump version (again) 2019-10-20 00:12:14 +02:00
Jens Geyer
e02559fd46 bump version
This closes #1899
2019-10-17 20:31:24 +02:00
Jens Geyer
85d8162dcb Revert "THRIFT-4951: Remove senum from tests"
This reverts commit df8ef4b489.

The contributor confuses "deprecated" with "unsupported". Unless the feature as a whole is also removed, so essentially nothing is left to be tested. Regardless whether a particular feature is deprecated or not, removing a working test for it is NOT helpful. The only "achievement" of such efforts would be that the test coverage goes down, which is clearly not in our intention and only opens room for bugs and issues.
2019-10-10 01:38:05 +02:00
pengzhouhu
df8ef4b489 THRIFT-4951: Remove senum from tests
Senum are unsupported since 0.9.1.

This closes #1868.
2019-10-09 09:33:29 +01:00
Kengo Seki
caf8904913 THRIFT-4969: PHP test doesn't check the code generation with php:classmap
Client: php

This closes #1889.
2019-10-08 22:57:53 +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
pengzhouhu
2d03630b61 THRIFT-4950 fix bind print error and Macro call errors thrift_server_socket
Client: C_glib
Patch: pengzhouhu

This closes #1867
2019-09-22 11:38:29 +02: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
Jens Geyer
061eafb1fa THRIFT-4955 Haskell test broken due to extension to CompactProtoTestStruct
Client: Haskell
Patch: Jens Geyer

This closes #1872
2019-09-11 22:53:12 +02:00
Jens Geyer
8ff8abd6f2 THRIFT-4957 testSanePartsOfCompactProtoTestStruct FAILED
Client: Java
Patch: Jens Geyer

This closes #1873
2019-09-11 00:41:49 +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
Jens Geyer
a715f701bf THRIFT-4944 Field IDs > 255 fail with compact protocol
Cliwent: Delphi
Patch: Jens Geyer
2019-08-28 22:56:35 +02:00
James E. King III
08fea1640e Mark some csharp-erl, erl-csharp ssl tests as known issues.
The latest ssl (9.3) in erl does not support TLSv1.0 or TLSv1.1
by default and cross tests are failing.  Since csharp was
deprecated in favor of netstd, ignoring it.
2019-07-07 12:16:52 -04:00
James E. King III
93ff9b0053 Update language levels, fix erlang and rust in CI
- Include rebar3 in docker image so erlang builds in CI
- Include the correct path in docker image so rust builds in CI
- Updated common lisp (sbcl) to 1.5.3 in docker image
- Updated dlang to 2.087.0 in docker image
- Updated dart to 2.0.0 in xenial docker image
- Updated dart to 2.4.0 in bionic docker image
- Updated erlang to 22.0 in docker image
- Updated openjdk to 11.0.3 in docker image
- Updated node.js to 10.16 in docker image
- Updated rust to 1.34.0 in xenial docker image
- Updated rust to 1.35.0 in bionic docker image

THRIFT-4905: Disable hanging experimental dlang async ssl test
2019-07-07 12:16:52 -04:00
Kevin Wojniak
6c847d2d02 THRIFT-4878 - [c_glib] add unix domain socket support to ThriftSocket (#1807) 2019-07-01 20:11:56 -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
Jens Geyer
bd1a273ab7 THRIFT-4898 Pipe write operations across a network are limited to 65,535 bytes per write.
Client: netstd
Patch: Jens Geyer

This closes #1823
2019-06-27 21:30:25 +02:00
Kevin Wojniak
c5068e297c Fix some typos in ThriftTest.thrift
[ci skip]
2019-06-27 12:28:19 -04:00
Kevin Wojniak
99ae730c5d Fix environment spelling 2019-06-23 08:37:12 -04:00
Mustafa Senol Cosar
3f0d444791 Implement episodic compilation for js code generation 2019-06-21 06:38:32 -04:00
Jens Geyer
96c6113dda THRIFT-4891 Align HTTP test client with all other variants
Client: netstd
Patch: Jens Geyer

This closes #1816
2019-06-21 01:48:31 +02:00
Yuxuan 'fishy' Wang
4d46c11244 THRIFT-4612: THeader support in go library
Client: go

Implement THeaderTransport and THeaderProtocol, with support of:

* clients:
  - headers
  - framedBinary
  - unframedBinary
  - framedCompact
  - unframedCompact
* transforms:
  - none
  - zlib
* info types:
  - key_value
* wrapped protocols:
  - TBinary
  - TCompact

The support list is in general on par of the THeader implementation in
the python library.

The cross-test passes, except ones related to cpp/nodejs http transport,
which were also failing for non-theader protocols.

This change also fixes two bugs:

1. A small issue in test/go/src/bin/testserver/main.go
2. A bug in TFrameTransport go implementation
2019-06-19 22:52:24 +02: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
D. Can Celasun
e0e1a088d6 THRIFT-4855: Pin golang/mock to 1.2.0
The latest version (1.3.0) requires us to switch to Go modules for our
tests, but that's not trivial given our directory structure.

For now, just fix the CI issues by pinning the version.
2019-05-10 21:08:07 +02:00
Kyle Smith
7b94dd4221 THRIFT-4839: Remove embedded buffering/framed options from TCP transports
Client: netstd
Patch: Kyle Smith + minor changes by Jens Geyer

This closes #1770
2019-03-27 00:17:55 +01:00
Jens Geyer
421444f2df THRIFT-4831 interface ITProtocolFactory should be class TProtocolFactory again
Client: netstd
Patch: Jens Geyer

This closes #1767
2019-03-21 09:03:13 +01:00
Kyle Smith
6378ff69a6 THRIFT-4825 Aligned the TTlsSocketServerTransport constructors with the TSocketServerTransport
Client: C#
Patch: Kyle Smith <ksmith@jrautomation.com>

This closes #1762
2019-03-15 22:55:26 +01:00
Jens Geyer
b11f63c552 THRIFT-4824 Logger deprecation warnings in tutorial
Client: netstd
Patch: Jens Geyer

this closes #1760
2019-03-15 22:01:37 +01:00
Jens Geyer
bf27637960 THRIFT-4822 Convert bool CTOR flags into enum type
Client: netstd
Patch: Jens Geyer

This closes #1759
2019-03-15 01:31:04 +01:00
Jens Geyer
1b770f233f THRIFT-4818 Test client should use cancellation token
Client: netstd
Patch: Jens Geyer

This closes #1756
2019-03-14 20:39:13 +01:00
Jens Geyer
22c412e42d THRIFT-4817 Add string CTOR to TTlsSocketTransport
Client: netstd
Patch: Jens Geyer

This closes #1753
2019-03-13 09:09:09 +01:00
Jens Geyer
68ff6cddc0 THRIFT-4813 NamedPipes may not work in all cases
Client: netstd
Patch: Jens Geyer
2019-02-28 08:39:59 +01:00
David Mai
ddd2224e9c [THRIFT-4771] add nodejs THeaderProtocol support (#1743)
Client: nodejs
2019-02-22 06:37:49 -05:00
James E. King III
3ca88065df re-disable hs-csharp_json_framed-ip cross test 2019-02-12 13:26:45 -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
James E. King III
e53d23c16c THRIFT-4794: finish php json cross test 2019-02-10 13:11:46 -05:00
James E. King III
9804ab983a THRIFT-4780: finish the server implementation of multi in python server
- Add default processor handling to python multi
2019-02-08 17:16:17 -05:00
cyy
a6a3a787ec THRIFT-4732:refine cmake scripts (#1688)
* add cmake support for clib and remove unused variables
* add targets for code analysis
* add wall to all compilers and add utf-8 options for msvc
2019-02-07 09:27:33 -05:00
Jens Geyer
adde44b0f5 THRIFT-4772 fully enable server-side usage of framed/buffered transports
Client: netstd
Patch: Jens Geyer

This closes #1729
2019-02-05 09:08:24 +01: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
ef9405f930 fix java-ruby test timeouts in ci 2019-02-01 16:14:19 -05:00
James E. King III
3ec4031a4c THRIFT-4405: fix cygwin on appveyor 2019-02-01 11:13:49 -05:00
James E. King III
53bd0e6295 THRIFT-4745: fixes compiler warnings 2019-02-01 11:13:49 -05:00
James E. King III
84d9cd27f9 THRIFT-4405: Enhance python cross test client for pedantic sequence id handling 2019-02-01 11:13:49 -05:00
James E. King III
f95620d2b1 THRIFT-4405: sanity tests relating to sequence numbers
- prove all servers return the sequence ID given
- prove that sequences that wrap around the int32_t space are handled ok
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
b96c43892a THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
James E. King III
8935c98046 THRIFT-4753: re-version master to next release 0.13.0 2019-01-25 23:33:54 -05:00
Mustafa Senol Cosar
129bb3e10d THRIFT-4675: Fix int64 constants generation for map keys 2019-01-25 10:03:37 -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
James E. King III
98f379ece1 THRIFT-4746: changes for publishing java library to maven; fix java debug vs. release build with cmake 2019-01-23 09:24:32 -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
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
bfdbd0344b use chrono 2019-01-22 10:36:18 +08: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
cyy
ca8af9b48f THRIFT-4730: remove pthread code and refactor, ending up with just ThreadFactory 2019-01-11 09:13:12 -05:00
James E. King III
c9ac8d2953 THRIFT-4720: documenting breaking changes, minor cleanup 2019-01-09 17:05:34 -05:00
cyy
316723add4 remove stdcxx namespace and use std directly 2019-01-07 08:11:37 -05:00
James E. King III
ecebd77c4a THRIFT-4716: add veralign.sh tool to set versions for releases 2019-01-04 16:28:13 -05:00
James E. King III
c3375d9e43 Merge remote-tracking branch 'origin/0.12.0' into consume-0.12.0 2018-12-30 11:06:00 -05:00
jfarrell
384647d290 Version 0.12.0 2018-12-18 20:24:34 -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
Mustafa Senol Cosar
dd965c1eb4 Fix hs-nodets test and re-enable it 2018-12-03 09:08: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
GREATEST Wiggler EvaR!
b57d126157 THRIFT-4529: Rust enum variants are now camel-cased
Client: rs
2018-11-12 07:57:43 -05:00
James E. King III
f7d43ce0aa fix build errors related to updated static code analysis tools for python and php 2018-11-06 12:20:52 -05:00
Dean Hamstead
8a130f63e5 THRIFT-4382: Replace the use of Indirect Object Syntax calls to new() 2018-10-17 19:13:45 -04:00
James E. King III
b2b767e1a4 THRIFT-4620: add crosstest support for zlib (buffered) to cpp, enable cpp,go,py,py3 tests 2018-09-16 06:51:38 -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
Neil Williams
66a44c5d8d THRIFT-4621 Add THeader for Python
Client: py
2018-09-01 10:24:43 +09:00
James E. King III
f5f430df56 THRIFT-4579: Move up to Ubuntu Bionic for CI builds
make dlang library compatible with openssl-1.1 for Ubuntu Bionic
Requires an upstream deimos update to be compatible.
2018-06-16 19:16:04 +00:00
James E. King III
d2f6f19bb8 disable one cross test that has been failing 2018-06-10 03:02:32 +00:00
Nicholas Martin
747158c8da THRIFT-4548: python binary accelerated protocol with multiplexing via decoration (#1547)
* Fix binary accelerated protocol with multiplexing

TMultiplexedProtocol objects did not inherit from TProtocol, so the
decorated protocol object passed into the binary accelerated C extension
was not really a TProtocol object, which caused errors. This
implementation decorates the protocol object by dynamically creating a
new class that extends both the class of the protocol being decorated
and TMultiplexedProtocol.

* THRIFT-4548: remove known failures for py multiplexed client cross tests

* Call super with args for python2 & pep8 fixes

* THRIFT-3877: disable known failures for http cpp tests

This closes #1535
2018-06-07 20:30:44 -04: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
James E. King III
2068544a09 THRIFT-4548: add python cross test client multiplexed protocol support
Client: py
2018-04-13 13:20:49 -04:00
James E. King III
6f8c99e981 THRIFT-3118: add http (for non-ssl and for ssl) to the python cross tests 2018-04-05 10:25:19 -04:00
James E. King III
272470790a THRIFT-4342: update ruby tests to use rspec 3, updated all dependencies for ruby
Client: rb
2018-03-23 15:16:47 -04:00
James E. King III
714c77cebe THRIFT-4525: add ruby cross test ssl support
Client: rb

This closes #1514
2018-03-21 20:45:25 -04:00
Daniel Shih
e41de0fbcb THRIFT-4489: Add unix domain socket support for nodejs
Client: nodejs

This closes #1491
2018-03-21 07:48:31 -04:00
James E. King III
9aaf295806 THRIFT-4358: add unix domain socket option to ruby cross tests
Client: rb

This closes #1513
2018-03-21 01:02:11 -04:00
Stephen Starkie
22bd3450c6 THRIFT-4524: .NET Core Server doesn't close properly when cancelled
Also fixed up the project files to include quoted Program Files paths
Client: netcore

This closes #1512
2018-03-20 16:32:32 -04:00
Ozan Can Altiok
e46419b5ec THRIFT-4476: Typecasting problem on double list items,
emitting doubles with high precision
Client: cpp
Client: erl
Client: java
Client: js
Client: py

This closes #1511
2018-03-20 16:28:15 -04:00
Allen George
b4960838a3 THRIFT-4187 Allow dart framed transport to read incomplete frame
Client: dart

This closes #1269
2018-03-20 16:21:21 -04:00
James E. King III
9bea32f73c THRIFT-4515: cross server test improvement: graceful test server shutdown
This closes #1509
2018-03-19 14:38:49 -04:00
Allen George
b7084cbc0d
THRIFT-4419: Fix bug where framed messages > 4K could not be read
Client: rs

This closes #1508
2018-03-17 09:38:15 +01:00