Prepare for public release on Gitea: simurgarray package names, community files, Gitea templates, pseudonymised P6 probe names
ci / test (3.13) (push) Successful in 4m6s
ci / test (3.12) (push) Successful in 4m8s

This commit is contained in:
kemal committed 2026-09-30 12:09:13 +01:00
1 parent 7b13720a4f
commit dc8a5361fb
23 files changed
+309 -30

No files matched your search

+66
View File
@@ -0,0 +1,66 @@
name: Bug report
about: A crash, an error message, or a result that looks wrong
title: "[bug] "
labels: []
body:
- type: markdown
attributes:
value: |
Thank you for reporting. Please do **not** attach vendor files (IDAT, BPM, CSV, EGT, GTC) or any genetic data of real people.
- type: input
id: version
attributes:
label: SimurgArray version
description: Output of `simurg --version`
validations:
required: true
- type: dropdown
id: platform
attributes:
label: Platform
options:
- Linux x86_64
- Linux aarch64 (for example Raspberry Pi)
- Docker
- conda
- other
validations:
required: true
- type: input
id: backend
attributes:
label: Backend
description: Output of `python -c "from simurg._core import backend; print(backend())"`
- type: textarea
id: command
attributes:
label: Command
description: The exact command you ran
render: shell
validations:
required: true
- type: textarea
id: what
attributes:
label: What happened, and what you expected
validations:
required: true
- type: textarea
id: log
attributes:
label: Error message or log
description: Add `--debug` for a traceback. Error codes look like `E_...` or `W_...`.
render: text
- type: textarea
id: manifest
attributes:
label: run_manifest.json
description: Paste or attach the run manifest of the run; it lists versions, options and input checksums.
render: json
- type: checkboxes
id: privacy
attributes:
label: Privacy
options:
- label: I did not attach vendor files or genetic data of real people.
required: true
+1
View File
@@ -0,0 +1 @@
blank_issues_enabled: false
@@ -0,0 +1,24 @@
name: Feature request
about: Suggest a new capability or a change in behaviour
title: "[feature] "
labels: []
body:
- type: textarea
id: problem
attributes:
label: What are you trying to do?
description: The research task or workflow, and where SimurgArray gets in the way.
validations:
required: true
- type: textarea
id: proposal
attributes:
label: What would help?
description: Describe the behaviour you would like. Mention spec items (for example CLI-021) if you know them.
validations:
required: true
- type: textarea
id: validation
attributes:
label: How could it be validated?
description: A public dataset, a reference tool or a paper the result could be checked against.
+16
View File
@@ -0,0 +1,16 @@
## What changes
## Spec items touched
<!-- for example CLI-021, OUT-031; update the spec in the same pull request if behaviour changes -->
## How it was validated
<!-- unit tests, oracle tests you ran, datasets, numbers -->
## Checklist
* [ ] `ruff`, `mypy` and `pytest tests/unit` pass
* [ ] `CHANGELOG.md` updated (Unreleased) if users would notice
* [ ] differences from reference tools recorded in `docs/known_unknowns.md`
* [ ] no vendor data, no genetic data of real people, no credentials
+38
View File
@@ -0,0 +1,38 @@
# Gitea Actions workflow: lint, types, secret scan and unit tests with and without the compiled kernels.
name: ci
on:
push:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
python: ["3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v5
with:
python-version: ${{ matrix.python }}
- name: Secret scan (no cloud keys or private keys in the repository)
run: |
if git grep -nIE '(AKIA|ASIA)[A-Z0-9]{16}|aws_secret_access_key *=|BEGIN [A-Z ]*PRIVATE KEY'; then
echo "::error::credential-like content found"; exit 1
fi
- name: Install
# setup-uv >= 5.x already creates and activates .venv when python-version is set; --clear works either way
run: uv venv --clear && uv pip install -e ".[dev]"
- name: Lint
run: uv run ruff check src tests && uv run ruff format --check src tests
- name: Type check
run: uv run mypy
- name: Unit tests (no downloaded data needed)
run: uv run pytest tests/unit -q
- name: Build the compiled kernels (rust/simurg-core)
run: |
command -v cc >/dev/null || { apt-get update -qq && apt-get install -y -qq gcc >/dev/null; } # Rust needs a C linker
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal
PATH="$HOME/.cargo/bin:$PATH" uv pip install ./rust/simurg-core
- name: Unit tests with the compiled kernels (must equal the pure-Python results)
run: uv run pytest tests/unit -q