{"id":44341664,"url":"https://github.com/imcs-compsim/cubitpy","last_synced_at":"2026-02-11T13:04:07.690Z","repository":{"id":199207195,"uuid":"599118362","full_name":"imcs-compsim/cubitpy","owner":"imcs-compsim","description":null,"archived":false,"fork":false,"pushed_at":"2026-02-06T20:29:54.000Z","size":1222,"stargazers_count":1,"open_issues_count":7,"forks_count":9,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-02-06T23:25:51.150Z","etag":null,"topics":["code","software"],"latest_commit_sha":null,"homepage":"","language":"Python","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/imcs-compsim.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-02-08T13:47:15.000Z","updated_at":"2026-02-06T20:29:58.000Z","dependencies_parsed_at":"2025-12-16T16:07:11.891Z","dependency_job_id":null,"html_url":"https://github.com/imcs-compsim/cubitpy","commit_stats":null,"previous_names":["imcs-compsim/cubitpy"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/imcs-compsim/cubitpy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imcs-compsim%2Fcubitpy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imcs-compsim%2Fcubitpy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imcs-compsim%2Fcubitpy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imcs-compsim%2Fcubitpy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imcs-compsim","download_url":"https://codeload.github.com/imcs-compsim/cubitpy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imcs-compsim%2Fcubitpy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29333155,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T12:42:24.625Z","status":"ssl_error","status_checked_at":"2026-02-11T12:41:23.344Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["code","software"],"created_at":"2026-02-11T13:04:05.464Z","updated_at":"2026-02-11T13:04:07.682Z","avatar_url":"https://github.com/imcs-compsim.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CubitPy\n\nUtility functions and 4C related functionality for the Cubit and Coreform python interface,\nEspecially for the creation of input files for 4C.\n\n[![CubitPy test suite](https://github.com/imcs-compsim/cubitpy/actions/workflows/cubitpy_test_suite_with_secrets.yml/badge.svg)](https://github.com/imcs-compsim/cubitpy/actions/workflows/cubitpy_test_suite_with_secrets.yml)\n\n## Usage\n\nA tutorial can be found in the `/tutorial` directory.\n\n## Contributing\n\nIf you are interested in contributing to CubitPy, we welcome your collaboration.\nFor general questions, feature request and bug reports please open an [issue](https://github.com/imcs-compsim/cubitpy/issues).\n\nIf you contribute actual code, fork the repository and make the changes in a feature branch.\nDepending on the topic and amount of changes you also might want to open an [issue](https://github.com/imcs-compsim/cubitpy/issues).\nTo merge your changes into the CubitPy repository, create a pull request to the `main` branch.\nA few things to keep in mind:\n- It is highly encouraged to add tests covering the functionality of your changes, see the test suite in `tests/`.\n- CubitPy uses `black` to format python code.\n  Make sure to apply `black` to the changed source files.\n- Feel free to add yourself to the [CONTRIBUTORS](CONTRIBUTORS) file.\n\n## Installation\n\nCubitPy is developed with `python3.13`.\nOther versions of Python might lead to issues.\nIt is recommended to use a python environment container such as `conda` or `venv`.\n- `conda`:\n  A [conda](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html) environment can be created and loaded with\n  ```bash\n  conda create -n cubitpy python=3.13\n  conda activate cubitpy\n  ```\n- `venv`: Chose an appropriate directory for this, e.g., `/home/user/opt`.\n  A virtual environment can be setup with\n  - On Debian systems the following packages have to be installed:\n    ```bash\n    sudo apt-get install python3-venv python3-dev\n    ```\n  - Create and load the environment\n    ```bash\n    cd \u003cpath-to-env-folder\u003e\n    python -m venv cubitpy-env\n    source cubitpy-env/bin/activate\n    ```\n\nTo install `cubitpy` go to the repository root directory\n```bash\ncd path_to_cubitpy\n```\n\nAnd install `cubitpy` via `pip`\n```bash\npip install .\n```\n\nIf you intend to actively develop `cubitpy`, install it in *editable mode*\n```bash\npip install -e \".[dev]\"\n```\n\nTo run CubitPy it is required to set an environment variable with the path to the Cubit directory. This should be the \"root\" directory for the installation.\n```bash\nexport CUBIT_ROOT=path_to_cubit_root_directory\n```\n\nIf you are using a Cubit version that still runs on python2, you need to specify a path to a valid python2.7 executable\n```bash\nexport CUBITPY_PYTHON2=path_to_python2.7\n```\nNote: for IMCS workstations this path is `\"/imcs/public/compsim/opt/Python-2.7.18/python\"`.\n\nTo check if everything worked as expected, run the test suite (from the root directory)\n```bash\ncd path_to_cubitpy/tests\npytest\n```\n\nIf you intend to actively develop CubitPy, please make sure to install the `pre-commit` hook within the python environment to follow our style guides:\n```bash\npre-commit install\n```\n\n## Debugging in VS Code and PyCharm\n\nWhen debugging, IDEs may try to attach to subprocesses, which can cause issues. The instructions below show how to disable this behavior in VS Code and PyCharm.\n\n### VS Code\n\nTo prevent the debugger from attaching to subprocesses, add the following to your `.vscode/launch.json`:\n\n```jsonc\n{\n  \"version\": \"0.2.0\",\n  \"configurations\": [\n    {\n      \"name\": \"Python: Launch current file\",\n      \"type\": \"debugpy\",\n      \"request\": \"launch\",\n      \"program\": \"${file}\", // Launches the currently open file\n      \"console\": \"integratedTerminal\", // or \"externalTerminal\" if needed\n      \"subProcess\":false, // Disables debugging for subprocesses and libraries\n    }\n  ]\n}\n```\n\n### PyCharm\n\nTo disable subprocess debugging:\n\n1. Go to **File \u003e Settings**\n2. Navigate to:\n   **Build, Execution, Deployment \u003e Python Debugger**\n3. Uncheck:\n   **Attach to subprocess automatically while debugging**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimcs-compsim%2Fcubitpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fimcs-compsim%2Fcubitpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimcs-compsim%2Fcubitpy/lists"}