Skip to content

ci: use LLVM/Clang 22 in tidy job#34662

Merged
hebasto merged 4 commits intobitcoin:masterfrom
fanquake:clang_22_tidy
Mar 3, 2026
Merged

ci: use LLVM/Clang 22 in tidy job#34662
hebasto merged 4 commits intobitcoin:masterfrom
fanquake:clang_22_tidy

Conversation

@fanquake
Copy link
Member

@fanquake fanquake commented Feb 24, 2026

Changes needed for moving to Clang 22 in the tidy job.

@DrahtBot DrahtBot added the Tests label Feb 24, 2026
@DrahtBot
Copy link
Contributor

DrahtBot commented Feb 24, 2026

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK maflcko, hebasto

If your review is incorrectly listed, please copy-paste <!--meta-tag:bot-skip--> into the comment that the bot should ignore.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #34672 (mining: add reason/debug to submitSolution and unify with submitBlock by w0xlt)
  • #34644 (mining: add submitBlock to IPC Mining interface by w0xlt)
  • #34422 (Update libmultiprocess subtree to be more stable with rust IPC client by ryanofsky)
  • #29409 (multiprocess: Add capnp wrapper for Chain interface by ryanofsky)
  • #10102 (Multiprocess bitcoin by ryanofsky)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK.

Sjors added a commit to Sjors/libmultiprocess that referenced this pull request Feb 24, 2026
client_connection.get(), /* destroy_connection= */ client_owns_connection);
if (client_owns_connection) {
client_connection.release();
client_connection.release(); // NOLINT(bugprone-unused-return-value)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In commit "f: libmultiprocess tidy errors" (5be6040)

Can this be changed to (void)client_connection.release(); to see if it fixes the tidy error? (void) should be a more typical way of indicating the return value is intentionally not used

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let me know if that works and I'll switch it over in bitcoin-core/libmultiprocess#244

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like using (void) is fine here.

Sjors added a commit to Sjors/libmultiprocess that referenced this pull request Feb 24, 2026
Sjors added a commit to Sjors/libmultiprocess that referenced this pull request Feb 24, 2026
Sjors added a commit to Sjors/libmultiprocess that referenced this pull request Feb 25, 2026
Needed for clang-22 tidy job, see:
bitcoin/bitcoin#34662

Co-authored-by: fanquake <fanquake@gmail.com>
Sjors added a commit to Sjors/libmultiprocess that referenced this pull request Feb 25, 2026
Needed for clang-22 tidy job, see:
bitcoin/bitcoin#34662

Co-authored-by: Ryan Ofsky <ryan@ofsky.org>
ryanofsky added a commit to bitcoin-core/libmultiprocess that referenced this pull request Feb 25, 2026
16dfc36 ci: avoid bugprone-unused-return-value lint in test (Sjors Provoost)
dacd5ed ci: suppress nontrivial-threadlocal lint in proxy.cpp (Sjors Provoost)

Pull request description:

  Needed for clang-22 tidy job, see:
  bitcoin/bitcoin#34662

ACKs for top commit:
  ryanofsky:
    Code review ACK 16dfc36, just switching to NOLINT to (void) since last

Tree-SHA512: fca97015733b88422f895e7a193fe6700f45a1a12904fe5f8857367561d4e2393dc0598373f908b507e8149eb4e9633f797856ff841ea80fb3e924fe786dc70b
fanquake added 4 commits March 3, 2026 17:04
Otherwise this check will "pass", like:
```bash
-- Detecting CXX compile features - done
-- Found LLVM 21.1.8
-- Found clang-tidy: CLANG_TIDY_EXE-NOTFOUND
-- Configuring done (0.5s)
```
```bash
   15 | #warning The ClangTidyModuleRegistry.h header is deprecated and will be removed in LLVM 24. All of the symbols it used to define have been moved into ClangTidyModule.h.
      |  ^~~~~~~
[100%] Linking CXX shared module libbitcoin-tidy.so
```
Added -config-file as otherwise run-clang-tidy no-longer seemed able to
find the config file.
@fanquake fanquake marked this pull request as ready for review March 3, 2026 17:08
@fanquake
Copy link
Member Author

fanquake commented Mar 3, 2026

Rebased now that #34422 is in.

@maflcko
Copy link
Member

maflcko commented Mar 3, 2026

lgtm ACK 5e35a90

@DrahtBot DrahtBot requested a review from hebasto March 3, 2026 17:14
@DrahtBot DrahtBot removed the CI failed label Mar 3, 2026
Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 5e35a90, I have reviewed the code and it looks OK.

@hebasto hebasto merged commit 17a0403 into bitcoin:master Mar 3, 2026
51 of 52 checks passed
@DrahtBot DrahtBot mentioned this pull request Mar 4, 2026
@fanquake fanquake deleted the clang_22_tidy branch March 4, 2026 10:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants