{"id":47795046,"url":"https://github.com/eclipse-score/bazel-tools-cc","last_synced_at":"2026-04-03T16:13:55.813Z","repository":{"id":310509453,"uuid":"1040136986","full_name":"eclipse-score/bazel-tools-cc","owner":"eclipse-score","description":"Repository for clang-tidy based static code checker","archived":false,"fork":false,"pushed_at":"2026-01-23T13:53:38.000Z","size":3923,"stargazers_count":1,"open_issues_count":2,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-24T05:41:13.578Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://eclipse-score.github.io/bazel-tools-cc","language":"Starlark","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eclipse-score.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":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-18T14:07:48.000Z","updated_at":"2025-12-15T06:12:27.000Z","dependencies_parsed_at":"2025-08-18T16:25:52.961Z","dependency_job_id":null,"html_url":"https://github.com/eclipse-score/bazel-tools-cc","commit_stats":null,"previous_names":["eclipse-score/bazel-tools-cc"],"tags_count":1,"template":false,"template_full_name":"eclipse-score/module_template","purl":"pkg:github/eclipse-score/bazel-tools-cc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-score%2Fbazel-tools-cc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-score%2Fbazel-tools-cc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-score%2Fbazel-tools-cc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-score%2Fbazel-tools-cc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eclipse-score","download_url":"https://codeload.github.com/eclipse-score/bazel-tools-cc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-score%2Fbazel-tools-cc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31362716,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-03T15:19:21.178Z","status":"ssl_error","status_checked_at":"2026-04-03T15:19:20.670Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2026-04-03T16:13:55.098Z","updated_at":"2026-04-03T16:13:55.795Z","avatar_url":"https://github.com/eclipse-score.png","language":"Starlark","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bazel Tools CC\n\nThis repository contains custom bazel quality tooling for C/C++.\n\n- [Offered Tools](#offered-tools)\n- [How to use bazel-tools-cc](#how-to-use-btcc)\n  - [Requirements](#requirements)\n  - [Select python pip hub version](#select-python-pip-hub-version)\n  - [Using WORKSPACE](#using-workspace)\n  - [Using bzlmod](#using-bzlmod)\n- [Contributing](#contributing)\n\n## Offered Tools\n\nEach offered tool has its own README document and can be independently activated and configured.\n\n|                          Tool                          |      Tool Type       | Bazel Type | Supported Languages | Workspace | Bzlmod |\n| :----------------------------------------------------: | :------------------: | :--------: | :-----------------: | :-------: | :----: |\n|   [clang-tidy](quality/private/clang_tidy/README.md)   | Static code analyzer |   aspect   |       C, C++        |    yes    |  yes   |\n| [clang-format](quality/private/clang_format/README.md) |    Code formatter    |   aspect   |       C, C++        |    yes    |  yes   |\n\n## How to use Bazel Tools CC\n\nThe [test subdirectory](test) is a workspace with a fully working setup.\n\nThe next sections explain the steps to achieve a proper config for each Bazel dependency manager but it is recommended to either use the test workspace blueprint and copy-paste what is needed.\n\n### Requirements\n\nIt's important to note that this repository does not supply python toolchains but only its pip dependencies. Therefore one must set up its own python toolchain. This repository supports major python versions from `3.8` to `3.12`.\n\nAdditionaly, one must have the following bazel repositories already in place:\n\n- bazel_skylib \u003e= 1.7.1\n- rules_python \u003e= 1.4.1\n- rules_shell \u003e= 0.6.1\n- rules_cc \u003e= 0.1.1 (only for Bazel 8)\n- com_google_protobuf \u003e= v29.0 (only for Bazel 8 with Workspace mode)\n- score_bazel_tools_python \u003e= 0.1.3\n\n### Select python pip hub version\n\nTo select the correct python dependecy version one only needs to set a `string_flag` under one's `.bazelrc` file.\n\nFor example if one is using python `3.10`, one should select our python `3.10` dependencies by adding the following lines to the respective `.bazelrc` file.\n\n```python\n# .bazelrc\n\ncommon --flag_alias=python=@rules_python//python/config_settings:python_version\ncommon --python=3.10\n```\n\n### Using WORKSPACE\n\nAdd this to your `WORKSPACE` file.\n\n```python\n# WORKSPACE\n\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\", \"http_archive\")\n\nhttp_archive(\n    name = \"score_bazel_tools_cc\",\n    sha256 = \"\u003comitted\u003e\",\n    urls = [\"\u003commited\u003e\"],\n)\n\nload(\"@score_bazel_tools_cc//third_party:dependencies.bzl\", score_bazel_tools_cc_dependencies = \"dependencies\")\n\nscore_bazel_tools_cc_dependencies()\n\nload(\"@score_bazel_tools_cc//third_party:python_toolchains.bzl\", score_bazel_tools_cc_python_toolchains = \"python_toolchains\")\n\nscore_bazel_tools_cc_python_toolchains()\n\nload(\"@score_bazel_tools_cc//third_party:python_pip_parse.bzl\", score_bazel_tools_cc_python_pip_parse = \"python_pip_parse\")\n\nscore_bazel_tools_cc_python_pip_parse()\n\nload(\"@score_bazel_tools_cc//third_party:python_pip_hub.bzl\", score_bazel_tools_cc_python_pip_hub = \"python_pip_hub\")\n\nscore_bazel_tools_cc_python_pip_hub()\n```\n\n### Using bzlmod\n\nAdd the https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/ registry to your known registries and add `score_bazel_tools_cc` to your `MODULE.bazel` file.\n\n```python\n# .bazelrc\n\ncommon --registry https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/\n```\n\n```python\n# MODULE.bazel\n\nbazel_dep(name = \"score_bazel_tools_cc\", version = \"\u003cversion\u003e\")\n```\n\n## Testing\n\nTo run the tests, simply execute:\n\n```bash\n./scripts/run_all_tests.sh\n```\n\nThis will run all the tests, linters, formaters, and checks to ensure everything is functioning correctly.\n\nExample Output:\n\n```\nCommand Name                          | Status\n------------------------------------- | ----------\ntests (bzlmod mode and python 3.12)   | SUCCEEDED\ntests (bzlmod mode)                   | SUCCEEDED\ntests (bzlmod mode with experimental_cc_implementation_deps) | SUCCEEDED\nclang-format                          | SUCCEEDED\nruff_check                            | SUCCEEDED\nruff_format                           | SUCCEEDED\npylint                                | SUCCEEDED\nblack                                 | SUCCEEDED\nisort                                 | SUCCEEDED\nmypy                                  | SUCCEEDED\ntests (in test workspace)             | SUCCEEDED\nbuildifier                            | SUCCEEDED\neclipse copyright check               | SUCCEEDED\nsecurity scan                         | SUCCEEDED\n------------------------------------- | ----------\n```\n\n## Contributing\n\nPlease check our [contributing guide](CONTRIBUTION.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-score%2Fbazel-tools-cc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feclipse-score%2Fbazel-tools-cc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-score%2Fbazel-tools-cc/lists"}