{"id":27433577,"url":"https://github.com/zerothi/sisl-files","last_synced_at":"2025-09-02T08:34:25.848Z","repository":{"id":54555744,"uuid":"128643136","full_name":"zerothi/sisl-files","owner":"zerothi","description":"Test files and other large files part of the sisl-suite","archived":false,"fork":false,"pushed_at":"2024-11-14T12:46:55.000Z","size":66065,"stargazers_count":0,"open_issues_count":0,"forks_count":6,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-07-14T19:07:11.286Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zerothi.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}},"created_at":"2018-04-08T13:17:42.000Z","updated_at":"2024-08-06T19:53:52.000Z","dependencies_parsed_at":"2025-04-14T17:27:09.798Z","dependency_job_id":null,"html_url":"https://github.com/zerothi/sisl-files","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zerothi/sisl-files","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zerothi%2Fsisl-files","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zerothi%2Fsisl-files/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zerothi%2Fsisl-files/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zerothi%2Fsisl-files/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zerothi","download_url":"https://codeload.github.com/zerothi/sisl-files/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zerothi%2Fsisl-files/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273256854,"owners_count":25073525,"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","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"2025-04-14T17:17:02.849Z","updated_at":"2025-09-02T08:34:24.584Z","avatar_url":"https://github.com/zerothi.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://www.mozilla.org/en-US/MPL/2.0/)\n\n\n# sisl-files\n\nThis is a test-farm for files related to testing\n[sisl](https://github.com/zerothi/sisl).\n\n\n## Workflow\n\nThe workflow of this repository is, well, non-standard.\n\n1. There are 2 branches which should be used.\n   - `main` (complete test file storage)\n   - `stripped` (actually used files in `sisl`)\n2. If a new test needs to be added, one should:\n   - add all files for a given test (as single commits, see further down)\n     to the branch named `main`\n   - create a PR against `main`.\n   - then once that is in, one should cherry-pick onto `stripped`\n     of the files from the tests that are\n     to be used in the actual tests.\n   - create a PR against `stripped` (with only the cherry-picked commits).\n\nThe main idea behind this is that the repository is heavily used\nby CI executions, meaning there is a high bandwidth requirement.\nSince this is an open-source project there are limitations as\nto how much data there can be fetched every month.\n\nThis means that one will never do *any* commits in `stripped` (which\nare test related).  \nOnly cherry-picks against `stripped` should be done.\n\n\n### Adding a test\n\nAdding a *new* test requires that we adhere to some standards.\n\nThis enables us to faster figure out *why* things have changed\nover the course of new program versions. And it also\nallows one to faster redo tests, or even delete tests\nif they become obsolete.\n\nEach test needs to retain a very strict layout:\n\n1. It should have its own directory located in the\n  code it represents. E.g. `\u003ccode-name\u003e/\u003ctest-name\u003e`.\n2. Each test folder should contain a `README.md` file describing\n  the following details:\n\n  - system information (as much as possible)\n  - which version of the code was used\n  - date-stamp of the run\n  - which additional files are required, and how to obtain them.\n    This could encompass pseudo-potentials, or files otherwise\n    shipped with the software (no need to fill with\n    easily obtained files).\n    Ideally, links to the files should be present, or a description\n    on how to obtain them.\n    (Please refer to each codes `\u003ccode-name\u003e/README.md` which may contain\n    this information).  \n    Please see in the `static` folder whether some files can already\n    be located.\n  - A test which requires several runs should have sub-folders\n    which should be thoroughly documented in the `README.md` file\n    on their relation, order of execution, etc.\n  - a small example of how to run the test should be given in the\n    end\n\nTo add files in the repo, please do it like this:\n\n    cd \u003ctest-name\u003e\n    git add README.md\n    git commit -m \"Added README.md for test=\u003ctest-name\u003e\"\n    \u003cpath-to-git-root\u003e/commit_single.sh\n\nThe above will ensure that *all* files are added as single commits,\nwith a predefined commit message.\n\n\u003e The reason for doing single-file commits is that it makes it\n\u003e trivial to update the `stripped` branch with single files to be tested\n\u003e against.\n\u003e Over the course of `sisl` development, it has been obvious that\n\u003e new file-support in `sisl` can trivially be tested by already\n\u003e having access to them through tests done.\n\u003e Hence the *2-fold* structure with *complete* tree of files, and\n\u003e a stripped version of the files that are actually tested.\n\n\n### Cherry-picking from `main` to `stripped`\n\nThe workflow to add files from `main` to `stripped` would be\nsomething like this:\n\nThere is a `\u003cpath-to-git-root\u003e/cherry_pick.sh` which can\nbe used to shortcut the explanation below.\n\nDo this:\n1. Checkout `main`.\n2. Navigate to the files you wish to move to the stripped\n   folder.\n3. Call the `cherry_pick.sh` command with the files as arguments.\n\n      \u003cpath-to-git-root\u003e/cherry_pick.sh siesta.out siesta.ORB_INDX\n\n   the script will automatically sort the cherry-picks, and only\n   take the *missing* cherry-picks that edits those files.\n\n\n## Internal development\n\nBasically there should never be anything required to be in the `stripped`\nbranch which isn't already in the `main` branch. So we will\nonly ever use `stripped` for cherry-picks. There should never be\nany information there that is useful for anybody to see.  \nOne need not cherry-pick the readme files etc.\nOnly files that are to be *tested*!\n\n\n## Usage\n\nIf you find the test-files useful for other kinds of tests.\nFeel free to follow this repository.\n\n\n## License\n\nSee `LICENSE` in the top folder.\nWe are using the MPL-2.0 license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzerothi%2Fsisl-files","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzerothi%2Fsisl-files","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzerothi%2Fsisl-files/lists"}