Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Update catch2 version across all exercises

Open
#997 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Refactor
Clarity
Mostly clear
Activity status
Stale
Tech stack
cpp
Domain
testing-qa

Research direction

Compare the Catch2 files and version references across the exercises with the version used by the cpp-test-runner. Inspect the special handling for complex-numbers and the change in #995; done means every exercise uses one Catch2 version of at least 3.4.0 and that special handling is removed.

Written by the indexing model from the issue text.

Description

The Catch2 version used here is different from what the test runner uses. To add to the chaos, for complex-numbers #995 adds the test runner's version, because for the matcher used there, v2.13.6 and v3.4.0 are incompatible. To clean this up, we should use a single version everywhere. Concretely this means:

  • update all exercises to at least Catch2 3.4.0 (it could make sense to pick something newer, but then the test runner and the local repo should be updated more or less simultaneously)
  • remove the special handling from complex-numbers

It could also make sense to introduce some tooling that automates the process of copying the Catch2 files into the exercises' directories.

Dominant language
C++
Stars
291
Forks
244
Avg merge
17m
Merged PRs (30d)
1

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from exercism/cpp

All issues in exercism/cpp

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.