{"id":19863238,"url":"https://github.com/allyourcodebase/catch2","last_synced_at":"2026-05-10T14:02:00.979Z","repository":{"id":262153972,"uuid":"859524578","full_name":"allyourcodebase/catch2","owner":"allyourcodebase","description":"Catch 2 ported to the zig build system","archived":false,"fork":false,"pushed_at":"2025-01-08T10:33:58.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-08T11:32:54.401Z","etag":null,"topics":["zig-package"],"latest_commit_sha":null,"homepage":"","language":"Zig","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/allyourcodebase.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-18T20:09:35.000Z","updated_at":"2025-01-08T10:34:01.000Z","dependencies_parsed_at":"2024-11-10T21:33:44.064Z","dependency_job_id":"9f379fe8-288d-4317-b949-20289fca7e56","html_url":"https://github.com/allyourcodebase/catch2","commit_stats":null,"previous_names":["allyourcodebase/catch2"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allyourcodebase%2Fcatch2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allyourcodebase%2Fcatch2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allyourcodebase%2Fcatch2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allyourcodebase%2Fcatch2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/allyourcodebase","download_url":"https://codeload.github.com/allyourcodebase/catch2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241272619,"owners_count":19937091,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["zig-package"],"created_at":"2024-11-12T15:14:07.986Z","updated_at":"2026-05-10T14:02:00.972Z","avatar_url":"https://github.com/allyourcodebase.png","language":"Zig","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `build.zig` for Catch2\n\nProvides a package to be used by the zig package manager for C++ programs.\n\n## Status\n\n| Refname   | Catch2 version | Zig `0.16.x` | Zig `0.15.x` | Zig `0.14.x` | Zig `0.13.x` | Zig `0.12.x` |\n|:----------|:---------------|:------------:|:------------:|:------------:|:------------:|:------------:|\n| `3.14.0`  | `v3.14.0`      | ✔            | ✔            | ✅           | ❌           | ❌           |\n| `3.8.0`   | `v3.8.0`       | ❌           | ❌           | ❌           | ✅           | ✅           |\n\n✔ means that that the package is compatible but that Catch2's own tests fail because of [a regression of LLVM 20](https://github.com/llvm/llvm-project/issues/140519).\nThe error occurs when using `TEMPLATE_PRODUCT_TEST_CASE`: [Build failure with clang++ 20](https://github.com/catchorg/Catch2/issues/2991). If you don't use this macro you should be fine.\n\n## Use\n\nAdd the dependency in your `build.zig.zon` by running the following command:\n```bash\nzig fetch --save git+https://github.com/allyourcodebase/catch2#master\n```\n\nThen, in your `build.zig`:\n```zig\nconst catch2_dep = b.dependency(\"catch2\", { .target = target, .optimize = optimize });\nconst catch2_lib = catch2_dep.artifact(\"Catch2\");\nconst catch2_main = catch2_dep.artifact(\"Catch2WithMain\");\n\n// wherever needed:\nexe.linkLibrary(catch2_lib);\nexe.linkLibrary(catch2_main);\n```\n\nA complete usage demonstration is provided in the [example](example) directory\n\n## Options\n\n```\n  -Dadd-prefix=[bool]          Prefix all macros with CATCH_\n  -Dconsole-width=[int]        Number of columns in the output: affects line wraps. (Defaults to 80)\n  -Dfast-compile=[bool]        Sacrifices some (rather minor) features for compilation speed\n  -Ddisable=[bool]             Disables assertions and test case registration\n  -Ddefault-reporter=[string]  Choose the reporter to use when it is not specified via the --reporter option. (Defaults to 'console')\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fallyourcodebase%2Fcatch2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fallyourcodebase%2Fcatch2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fallyourcodebase%2Fcatch2/lists"}