Skip to content

Easy to follow, easy to install: front cover, install guide, miros install - #3

Merged
BryannGan merged 7 commits into
mainfrom
easy-install
Sep 13, 2026
Merged

BryannGan merged 7 commits into
mainfrom
easy-install

Conversation

@BryannGan

Copy link
Copy Markdown
Owner

Layer 1: a short README as the front cover, docs/ with an install guide per operating system and the reference pages, CITATION.cff, AGENTS.md. Layers 2 and 3 (miros install for the solvers and SeqSeg, prebuilt solver artifacts, PyPI readiness) follow on this branch.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TVDuxAARJKeMEegQngyQkf

BryannGan and others added 7 commits September 13, 2026 15:55
…eference pages

The README is now what a newcomer, or their coding agent, reads first:
what MIROS is, three commands to install it, one more step each for the
two SimVascular solvers, the example, and a table of pages. Everything
else moved to docs/: install per OS with what miros doctor should print,
the window, the commands and stages, the case file with the template
miros init writes, segmentation, tuning, troubleshooting, development.
A test keeps the template block equal to write_template() and every
local link resolving. CITATION.cff and AGENTS.md added; the repository
description and topics set.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TVDuxAARJKeMEegQngyQkf
`miros install pysvzerod` takes a prebuilt wheel from this repository's
`solvers` release when one fits the interpreter and platform, else builds
from svZeroDSolver's git with the compiler requirement spelled out.
`miros install onedsolver` downloads the prebuilt executable into
~/.miros/bin, which the solver search now looks in first. `miros install
seqseg` installs SeqSeg with a CUDA torch where nvidia-smi is found (or
--gpu / --cpu), then the aorta_ct weights. `miros install all` does the
three. `miros doctor` ends with the commands that complete the install.

build-solvers.yml compiles svOneDSolver and pysvzerod wheels on the
Linux, macOS and Windows runners (Python 3.10 to 3.12) and attaches
them to the `solvers` release.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TVDuxAARJKeMEegQngyQkf
…the packaging is checked

The first solver build put OneDSolver for Linux, macOS and Windows and
Linux and macOS pysvzerod wheels on the `solvers` release. The Windows
wheels built but could not find a DLL at import, so delvewheel now
bundles what the extension needs; the macOS wheels were tagged for the
runner's macOS 26 and universal2, so the deployment target is 12.0 and
the matcher accepts universal2. The Windows OneDSolver links its C
runtime statically.

Layer 3 groundwork: package metadata and URLs, a publish workflow with
PyPI trusted publishing on v* tags, a CI job that builds the sdist and
wheel and installs the wheel in a fresh environment, and README links
that render on PyPI. The name `miros` is taken on PyPI (a statechart
library), so the distribution needs another name before a release.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TVDuxAARJKeMEegQngyQkf
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TVDuxAARJKeMEegQngyQkf
…s with miros install

The bash shell on the Windows runner puts Git's mingw64/bin first on PATH,
so CMake compiled pysvzerod with gcc and the extension could not load into
CPython. CC and CXX name cl and msvc-dev-cmd puts it on PATH.

CI now fetches pysvzerod and OneDSolver with miros install on every OS,
so the integration tests solve the 0D and 1D models for real there.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TVDuxAARJKeMEegQngyQkf
@BryannGan
BryannGan merged commit 0edbcc6 into main Sep 13, 2026
8 checks passed
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