Skip to content

Migrate to Catch2 v3.15.2#6053

Open
prckent wants to merge 7 commits into
QMCPACK:developfrom
prckent:catch2v3
Open

Migrate to Catch2 v3.15.2#6053
prckent wants to merge 7 commits into
QMCPACK:developfrom
prckent:catch2v3

Conversation

@prckent

@prckent prckent commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Proposed changes

[Initially marked as draft to check CI]

Migrate to the latest Catch2 v3.15.2 for testing. https://github.com/catchorg/Catch2

Following the migration guide https://github.com/catchorg/Catch2/blob/devel/docs/migrate-v2-to-v3.md#how-to-migrate-projects-from-v2-to-v3 , this initial PR uses <catch2/catch_all.hpp>. In subsequent PRs we can migrate to more fine grained includes and obtain likely faster compilation times.

This PR migrates to the more specialized includes enabled by v3, primarily catch2/catch_test_macros.hpp

Most tests only required updating to use the new header file.

Catch2 v3 is vendored in external_codes/Catch2 and is completely unmodified.

Our previous Catch2 customizations and implementations of ComplexApprox etc. are combined in a single file in src/Utilities/for_testing

Because this PR affects many files, unless there are any major issues I would prefer we merge it and refine subsequently to minimize risk of conflicts with other ongoing work.

This port was largely accomplished with Codex.

What type(s) of changes does this code introduce?

  • Build related changes
  • Testing changes (e.g. new unit/integration/performance tests)

Does this introduce a breaking change?

  • No

What systems has this change been tested on?

All unit tests confirmed working with:

gcc16 nompi ubuntu26 dev container
gcc15 nompi macos macports
gcc15 mpi macos macports

Checklist

    • I have read the pull request guidance and develop docs
    • This PR is up to date with the current state of 'develop'
    • Code added or changed in the PR has been clang-formatted
    • This PR adds tests to cover any new code, or to catch a bug that is being fixed
    • Documentation has been added (if appropriate)

@prckent
prckent marked this pull request as draft July 24, 2026 17:33
@prckent

prckent commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

Test this please

@prckent

prckent commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

Test this please

@prckent

prckent commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

Test this please

@prckent
prckent marked this pull request as ready for review July 24, 2026 21:50
@prckent

prckent commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

Missed a bunch of updates in AFQMC, will fix.

@prckent

prckent commented Jul 25, 2026

Copy link
Copy Markdown
Contributor Author

Test this please

1 similar comment
@prckent

prckent commented Jul 25, 2026

Copy link
Copy Markdown
Contributor Author

Test this please

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.

1 participant