Jens Geyer created THRIFT-6376:
----------------------------------

             Summary: Run the netstd tutorial in CI
                 Key: THRIFT-6376
                 URL: https://issues.apache.org/jira/browse/THRIFT-6376
             Project: Thrift
          Issue Type: New Feature
          Components: Tutorial, Build Process, netstd - Library
            Reporter: Jens Geyer


No CI job builds or runs {{tutorial/netstd}}, so two bugs there went unnoticed: 
the HTTP server did not start (THRIFT-6374), and {{\-mc}} with more than one 
client never completed (THRIFT-6375, since 2021). Both showed only when the 
programs ran, so a build step alone would not have caught them.

The tutorial client also exits with 0 when its calls fail, because 
{{RunClientAsync()}} logs the exception and returns. A CI step could not tell a 
failed run from a good one.

Plan:
* The client exits with 1 if one of its clients fails.
* A script, {{tutorial/netstd/smoketest.sh}}, starts the server and runs the 
client against it with {{\-mc:2}}: once for each transport (tcp, tcptls, 
namedpipe, http), plus the compact and JSON protocols, the buffered and framed 
transports, and multiplexing.
* {{make check}} in {{tutorial/netstd}} runs the script, and the lib-netstd job 
in {{.github/workflows/build.yml}} runs that {{make check}}.

_Drafted with AI assistance (Claude Opus 5.5)._




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to