v1.0.0-rc3
Pre-release
Pre-release
What's Changed
Bugfixes
- Fix issue that prevented use of
--known-failing
patterns that could match the test cases run against the grpc-go reference implementations by @smaye81 in #754 - Fix use of raw request in test cases: test runner needs to add test case expectation headers to raw request, by @jhump in #758
- Fix assertions on query parameters that were overly strict, which prevented working implementations in connect-kotlin and connect-swift from passing the Connect GET test cases, by @jhump in #771
- Higher grace periods in test case timeouts to reduce flakiness, by @jhump in #782 (and small part of #761)
- Disable support for accepting gzip responses in referenceclient when no compression should be used by @jhump in #783
Enhancements
- Add command-line flags for more control over test cases to run and how they're handled by @jhump in #757
- This adds new
--run
,--skip
, and--known-flaky
command-line flags, which all take a pattern and can be specified multiple times. To point to a text file containing multiple patterns (one per line), prefix the argument with@
. The--run
and--skip
are mainly intended for interactive runs of tests. CI invocations should prefer--known-failing
and--known-flaky
. - This includes a backwards-incompatible change to the
--known-failing
flag so its behavior is consistent with the above new flags: its argument is now interpreted as a single pattern. To instead point to a file that contains patterns, prefix the argument with@
.
- This adds new
- Add
--trace
option to print full trace of HTTP requests and responses for failed test cases by @jhump in #761 - Add tests for HTTP status code <-> RPC code mappings by @smaye81 in #762
- Add numerous protocol-specific test cases that use raw requests and raw responses, by @jhump in #770 and #794
- Add test cases that verify deadlines are correctly propagated by @jhump in #772
- The referenceserver checks that there are no request trailers by @jhump in #779
- The referenceclient validates raw wire details for gRPC-Web trailers, actual HTTP trailers, and Connect error and end-stream JSON by @smaye81 in #768 and @jhump in #780, #790
- Add tests for unexpected raw responses by @smaye81 in #774
Other Changes
- Test the referenceserver and grpcserver implementation of gRPC-web protocol using gRPC-web JS client by @smaye81 in #751
- Add docs for writing test cases by @smaye81 in #791
- Add additional documentation to the proto module and update error code in proto model to use an enum by @smaye81 in #792
- This includes a backwards-incompatible change. The
Error.code
field is now an enum and not anint32
. This will require corresponding code changes in conformance clients and servers.
- This includes a backwards-incompatible change. The
- Rename test suites and test cases according to new, documented naming convention by @smaye81 in #786
- This includes backwards-incompatible changes. Configuration for known failing tests may need to be updated to account for new names.
Full Changelog: v1.0.0-rc2...v1.0.0-rc3