Skip to content

Ci/setup#1

Open
timcadman wants to merge 3 commits intomainfrom
ci/setup
Open

Ci/setup#1
timcadman wants to merge 3 commits intomainfrom
ci/setup

Conversation

@timcadman
Copy link
Copy Markdown

@timcadman timcadman commented Apr 27, 2026

Background

This repo had no CI, used the legacy setup.py packaging format, and had no documentation site. I've set up the CI on molgenis-flwr-armadillo repo and thought maybe we could use the same?

What's changed

  • Migrated setup.py to pyproject.toml — hatchling build backend, bumped python_requires to >=3.10,
    added dev extras (pytest, pytest-cov, ruff)
  • Added CI workflow (ci.yml) — lint with ruff + pytest with coverage across Python 3.10/3.11/3.12, Codecov
    upload on 3.12
  • Added release workflow (release.yml) — builds package and creates GitHub release on v* tags
  • Added docs workflow (docs.yml) — mkdocs-material build on PRs, deploy to GitHub Pages on push to main
  • Added mkdocs setupmkdocs.yml, docs/index.md, docs/reference.md with API reference via mkdocstrings
  • Added placeholder import test (tests/test_import.py)

Repo settings to configure

On the other repo, I added the following branch protection rules on main:

  • Require at least 1 approving review before merging
  • Require all CI status checks to pass before merging
  • Do not allow force pushes
  • Do not allow pushing directly to main

I also set the repo website as the one generated with mkdocs.

How to test

  • Check PR tests pass
  • Code review

@timcadman timcadman requested a review from marikaris April 27, 2026 10:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant