For example [1]:
FAILURE: Build failed with an exception.
* Where:
Script '/thrift/src/thrift-0.17.0/lib/java/gradle/generateTestThrift.gradle' line: 40
* What went wrong:
A problem occurred evaluating script.
> assert thriftFile.exists()
| |
| false
/thrift/src/thrift-0.17.0/test/partial/thrift_test_schema.thrift
[1]: https://app.travis-ci.com/github/apache/thrift/jobs/557030315
If a thrift file only contains an enum, then the c++ source file with
the implementation for to_string and ostream operator<< is not
generated.
This bug was introduced in PR#2095 / THRIFT-5168.
Bump the versions of Go used in Travis to the latest point releases in
preparing for the upcoming v0.16.0 release.
Also switch the go download URL to the new go.dev domain.
Also update LANGUAGES.md accordingly, and mark that we support THeader
in Go now (we added the support in v0.13.0, just forgot to update
LANGUAGES.md accordingly).
Client: go
We used to rely on setting the connection inside TSocket/TSSLSocket as
nil after Close is called to mark the connection as closed, but that is
not thread safe and causing TSocket.Close/TSSLSocket.Close cannot be
called concurrently. Use an atomic int to mark closure instead.
Client: go
This is a trivial unit test improvement from the last commit. Of course
I only discovered the existence of testing/iotest package after I
re-invented the wheel.
Client: go
Follow up on d582a8614, do the same thing on TFramedTransport.
Also update the test on the implementation of THeaderTransport to make
sure that small reads are not broken.
Client: go
Instead of binding 2 buffers (read/write) to each THeaderTransport, grab
one from the pool to be used for the whole read/write, and return it
back to the pool after the read/write is done. This would help reduce
the memory footprint from idle connections.
When using the building functions for the fallback scenario
in readBytes, a SystemError is raised in python 3.10 (raised
as a warning till python 3.9) due to the use of "#yi" for the output
buffer argument.
Extra test cases are added to cover serialization/deserialization
both with compact & binary protocol both with and without the
c-extension