Jens-G opened a new pull request, #3870: URL: https://github.com/apache/thrift/pull/3870
JIRA: [THRIFT-6270](https://issues.apache.org/jira/browse/THRIFT-6270) Client: php, build THRIFT-6270 asks for a sweep for source files that no build list names. This PR fixes the one finding that is plain wiring and adds a check so it stays fixed. The other findings, the Lua modules, `idlgen.d` in D and the Android Gradle file, are listed on the ticket. ### What was missing `lib/php/Makefile.am` installs the PHP library through explicit `*_DATA` lists, and five files under `lib/php/lib` were in none of them: - `StoredMessageProtocol.php` - `Factory/TBinaryProtocolAcceleratedFactory.php` - `Server/TSSLServerSocket.php` - `Transport/TPsrHttpClient.php` - `Transport/TSSLSocket.php` `make install` left them out. An installed `TMultiplexedProcessor` therefore could not find `StoredMessageProtocol`, which it creates, and `TSSLServerSocket` had no `TSSLSocket` to build on. Composer (`composer.json` autoloads the whole directory) and the release tarball (`EXTRA_DIST = lib`) were not affected. ### Change - The five files are added to the install lists. - A new target, `check-install-lists`, compares the files under `lib/php/lib` with `$(DATA)`, the union of all install lists, and fails with the names of files that are in none of them. It runs as part of `make check` in `lib/php`. - The `lib-php` CI job runs it right after configure, because the job calls `phpunit` directly and never `make check`. ### Verification Run in the `ubuntu-jammy` image on a configured tree: - **With this change:** `check-install-lists` passes, and `make install` installs all 55 files under `lib/php/lib`. - **Upstream install lists plus the new check:** the check fails and names exactly the five files. Upstream `make install` leaves out exactly those five. - **Extra file:** an added `lib/php/lib/TPlanted.php` makes the check fail, both directly and through `make check`. - **CI configuration:** the check passes with the lib-php job's own configure line, which also enables the extension. - **`make dist`:** succeeds with and without the change. - **Linters:** `actionlint` and `zizmor` report the same on `build.yml` as on master. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
