Jens Geyer created THRIFT-6361:
----------------------------------

             Summary: Add a GitHub Actions CI job for the C (GLib) library
                 Key: THRIFT-6361
                 URL: https://issues.apache.org/jira/browse/THRIFT-6361
             Project: Thrift
          Issue Type: Improvement
          Components: C glib - Library, Build Process
            Reporter: Jens Geyer


No CI job runs the C (GLib) library's tests. {{build.yml}} configures every job 
with {{--without-c_glib}}, and the static analysis job only builds 
{{lib/c_glib}} and {{test/c_glib}} to run cppcheck. {{cmake.yml}} builds the 
compiler only.

Proposed change: a {{lib-c_glib}} job, like the jobs added for D (THRIFT-6170), 
Erlang (THRIFT-6171), Lua (THRIFT-6189) and JavaScript (THRIFT-6330), that runs 
{{make \-C lib/c_glib/test check-am}}. Plain {{make check}} also enters 
{{lib/c_glib/test/fuzz}}, where the fuzz targets have no {{main}} under gcc. 
The job has to build with zlib, or {{ThriftZlibTransport}} goes untested: 
configure probes zlib only when C++ is enabled, so with {{\-\-without-cpp}} the 
zlib tests fail to link, and a CMake build with {{WITH_CPP=OFF}} leaves the 
zlib library and its tests out altogether (THRIFT-6224). Either the job enables 
C++, or the probe is fixed first.

Before it can be green on ubuntu-24.04: THRIFT-5680 
({{testapplicationexception}}, {{testfdtransport}} and 
{{testthriftfdreadcheck}} stop on GLib criticals) fails there with GLib 2.80, 
while ubuntu-22.04 with GLib 2.72 passes. THRIFT-6224 also makes CMake builds 
with {{WITH_CPP=OFF}} fail to link {{test/c_glib}}'s {{test_server}}.

_Drafted with AI assistance (Claude Opus 5); reviewed and posted by Jens Geyer._




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

Reply via email to