{"id":46125199,"url":"https://github.com/cherab/core","last_synced_at":"2026-03-02T01:37:07.253Z","repository":{"id":37742788,"uuid":"99347652","full_name":"cherab/core","owner":"cherab","description":"The core source repository for the Cherab project.","archived":false,"fork":false,"pushed_at":"2025-11-27T11:13:12.000Z","size":29803,"stargazers_count":46,"open_issues_count":64,"forks_count":24,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-11-29T08:49:29.019Z","etag":null,"topics":["framework","fusion","physics","plasma","python","science","scientific-computing"],"latest_commit_sha":null,"homepage":"https://www.cherab.info","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cherab.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-08-04T13:53:42.000Z","updated_at":"2025-10-19T12:29:41.000Z","dependencies_parsed_at":"2023-01-31T06:15:27.470Z","dependency_job_id":"68bfe541-3128-4396-b55c-44a5f47d3546","html_url":"https://github.com/cherab/core","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/cherab/core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cherab%2Fcore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cherab%2Fcore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cherab%2Fcore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cherab%2Fcore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cherab","download_url":"https://codeload.github.com/cherab/core/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cherab%2Fcore/sbom","scorecard":{"id":276781,"data":{"date":"2025-08-11","repo":{"name":"github.com/cherab/core","commit":"26595cb6101e14d6a3eeb1b7421024425114c7a1"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.7,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":9,"reason":"Found 9/10 approved changesets -- score normalized to 9","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENCE.txt:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/cherab/core/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/cherab/core/ci.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/ci.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/ci.yml:29","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":0,"reason":"10 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52","Warn: Project is vulnerable to: PYSEC-2019-156 / GHSA-xp76-357g-9wqq","Warn: Project is vulnerable to: PYSEC-2023-102","Warn: Project is vulnerable to: PYSEC-2023-114"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T14:39:58.221Z","repository_id":37742788,"created_at":"2025-08-17T14:39:58.222Z","updated_at":"2025-08-17T14:39:58.222Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29989413,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T22:42:38.399Z","status":"ssl_error","status_checked_at":"2026-03-01T22:41:51.863Z","response_time":124,"last_error":"SSL_read: 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":["framework","fusion","physics","plasma","python","science","scientific-computing"],"created_at":"2026-03-02T01:37:06.652Z","updated_at":"2026-03-02T01:37:07.245Z","avatar_url":"https://github.com/cherab.png","language":"Python","readme":"[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.1206141.svg)](https://doi.org/10.5281/zenodo.1206141)\n[![Build Status](https://github.com/cherab/core/actions/workflows/ci.yml/badge.svg)](https://github.com/cherab/core/actions/workflows/ci.yml/badge.svg)\n\nCherab\n======\n\nWelcome to the Cherab project.\n\nPlease see our [documentation](https://cherab.github.io/documentation/index.html)\nfor guidance on using the code.\n\nInstallation\n------------\n\nCherab is a large code framework consisting of a core package and feature\npackages. Users will generally install the core package and the specific\nfeature packages they need for their work. For example, users working on the\nJET tokamak will require the `cherab-core` package, and the `cherab-jet`\npackage.\n\nUnless developing new code for a cherab package, most users should clone the\nmaster branch. When developing new features for cherab, the development branch\nshould be used as the base.\n\nAll cherab packages are standard python packages and basic installation is\nachieved with:\n\n```\npip install cherab\n```\n\nThis will compile the Cherab cython extensions and install the package. If you\ndon't have administrator access to install the package, add the `--user` flag\nto the above line to install the package under your own user account.\nAlternatively, consider creating a [virtual environment](https://docs.python.org/3/tutorial/venv.html)\nand installing `cherab` in the environment.\n\nWhen developing cherab it is usually preferred that the packages be installed\nin \"editable\" mode. Clone this repository and change directory to the root of\nthe repository, then run:\n\n```\npip install -e .\n```\n\nThis will cause the original installation folder to be added to the site-package\npath. Modifications to the code will therefore be visible to python next time\nthe code is imported. A virtual environment or the ``--user`` flag should be\nused if you do not have administrative permission for your python installation.\nIf you make any changes to Cython files you will need to run `./dev/build.sh` to\nrebuild the relevant files.\n\nAs all the Cherab packages are dependent on the ``cherab-core`` package, this\npackage must be installed first. Note that other packages may have their own\ninter-dependencies, see the specific package documentation for more information.\n\nCherab is organised as a namespace package, where each of the submodules is\ninstalled in the same location as the core package. Any submodules using Cython\nwith a build-time dependency on Cherab need to use a Cython version newer than\n3.0a5, due to a [bug](https://github.com/cython/cython/issues/2918) in how\nearlier versions of Cython handle namespaces.\n\nBy default, pip will install from wheel archives on PyPI. If a binary wheel is not\navailable for your version of Python, or if you are installing in editable mode\nfor development, the package will be compiled locally on your machine. Compilation\nis done in parallel by default, using all available processors, but can be\noverridden by setting the environment variable `CHERAB_NCPU` to the number of\nprocessors to use.\n\nGovernance\n----------\n\nThe management of the project is divided into Scientific and Technical Project\nManagement. The Scientific management happens through the normal community\nroutes such as JET and MST1 task force meetings, ITPA meetings, etc.\n\nThe Technical Management Committee (TMC) is a smaller subset of the community,\nbeing responsible for ensuring the integrity and high code quality of Cherab is\nmaintained. These TMC members would have in-depth knowledge of the code base\nthrough a demonstrated history of contributing to the project. The TMC would\nprimarily be responsible for accepting / rejecting merge requests on the basis\nof code / physics algorithm quality standards.\n\n\nTMC Members\n-----------\n\n- Alys Brett (chairwoman, master account holder, responsible for delegation, UKAEA, UK)\n- Matt Carr (External consultant, diagnostic physics models)\n- Jack Lovell (Oak Ridge, USA)\n- Alex Meakins (External consultant, Architecture, software integrity)\n- Vlad Neverov (NRC Kurchatov Institute, Moscow)\n- Matej Tomes (Compass, IPP, Prague)\n\n\nCiting The Code\n---------------\n* Dr Carine Giroud, Dr Alex Meakins, Dr Matthew Carr, Dr Alfonso Baciero, \u0026\nMr Corentin Bertrand. (2018, March 23). Cherab Spectroscopy Modelling Framework\n(Version v0.1.0). Zenodo. http://doi.org/10.5281/zenodo.1206142\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcherab%2Fcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcherab%2Fcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcherab%2Fcore/lists"}