Skip to content

build(deps): use latest upstream version of protobuf-matchers#139

Merged
ingomueller-net merged 1 commit intosubstrait-io:mainfrom
ingomueller-net:use-upstream-protobuf-matchers
Mar 26, 2026
Merged

build(deps): use latest upstream version of protobuf-matchers#139
ingomueller-net merged 1 commit intosubstrait-io:mainfrom
ingomueller-net:use-upstream-protobuf-matchers

Conversation

@ingomueller-net
Copy link
Copy Markdown
Contributor

@ingomueller-net ingomueller-net commented Mar 26, 2026

This PR changes the git submodule providing the protobuf-matchers dependency to use (the latest version of) the official repository of that library instead of the fork of one of the authors of this repository. Apart from that repository being private, it (1) did not get updated automatically and (2) only existed, AFAIU, to be able to deactivate the test targets of that dependency, which has been implemented upstream in the meantime as well. The PR, thus, also simiplifies the logic that disables these tests.

@ingomueller-net ingomueller-net enabled auto-merge (squash) March 26, 2026 09:21
ingomueller-net added a commit to ingomueller-net/substrait-cpp that referenced this pull request Mar 26, 2026
This PR replaces the clang-tidy scripts with a CMake-based approach. The
core mechanism is to define CMake's `CMAKE_CXX_CLANG_TIDY` variable,
which invokes clang-tidy whenever a C++ target is compiled. The
remainder consists of some logic that finds the clang-tidy executable
and its arguments as well as activating and deactivating the command in
the right place (in particular, to exclude checking third-party code).

I see three main advantages to the new approach: (1) The new logic is
considerably simpler than the previous scripts. (2) The code is
automatically checked when it compiled, potentially saving round-trips
through CI. (3) We save an extra 10 minutes on CI for recompiling the
whole project, which the previous scripts did, this brings the `check`
CI job down to about 1 minute.

The PR also does three minor changes: (1) It removes the
`AnalyzeTemporaryDtors` configuration, which was depcrecated in clang 16
and removed in clang 18. (2) It applies the suggested fixes for one
class of errors that my clang-tidy-22 complained about. (3) It disables
the tests of the protobuf-matchers dependency, which were meant to be
disabled, but in a way that didn't work. Note that that latter point
will be obsolete with substrait-io#139.

Signed-off-by: Ingo Müller <ingomueller@google.com>
auto-merge was automatically disabled March 26, 2026 16:40

Pull Request is not mergeable

@ingomueller-net ingomueller-net force-pushed the use-upstream-protobuf-matchers branch from d349507 to 5d75b1e Compare March 26, 2026 19:01
This PR changes the git submodule providing the protobuf-matchers
dependency to use (the latest version of) the official repository of
that library instead of the fork of one of the authors of this
repository. Apart from that repository being private, it (1) did not get
updated automatically and (2) only existed, AFAIU, to be able to
deactivate the test targets of that dependency, which has been
implemented upstream in the meantime as well. The PR, thus, also
simipliefies the logic that disables these tests.

Signed-off-by: Ingo Müller <ingomueller@google.com>
@ingomueller-net ingomueller-net force-pushed the use-upstream-protobuf-matchers branch from 5d75b1e to 4dc5220 Compare March 26, 2026 19:13
@ingomueller-net ingomueller-net merged commit 83b2ec1 into substrait-io:main Mar 26, 2026
4 checks passed
@ingomueller-net ingomueller-net deleted the use-upstream-protobuf-matchers branch March 26, 2026 20:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants