Release delivery¶
McSAS3 now has two distinct delivery tracks:
standard Python package delivery via wheel and sdist
standalone CLI bundles for macOS, Windows, and Linux
Python packages¶
The existing package build remains:
python -m buildtox -e build
This produces:
a source distribution
a wheel for normal Python installation
Standalone CLI bundles¶
The standalone build path packages the maintained command-line tools:
mcsas3-runnermcsas3-histogrammer
Local build command:
tox -e standalone
This runs tools/build_standalone.py and produces:
dist/standalone/<platform-tag>/: the unpacked standalone bundledist/standalone/mcsas3-standalone-<platform-tag>.zip: the distributable archive
Current implementation notes¶
the standalone path uses PyInstaller in
onedirmodethe standalone build uses the normal
modacorpackage dependency for canonical data-model classes (no sibling source checkout override is required)bundled example configurations and
testdata/quickstartdemo1.csvare included so the CLI default paths resolve correctly in frozen buildsthe local builder smoke-tests each generated executable with
--helpthe repo ships a local PyInstaller
sasmodelshook so the standalone bundles keep the runtime model/kernel data without also bundling the full upstream documentation treethe runner build excludes histogram-only plotting and notebook extras, so
mcsas3-runneris intentionally slimmer thanmcsas3-histogrammer
CI workflow¶
The repo now includes .github/workflows/standalone.yml which builds standalone archives on:
Linux
macOS
Windows
This workflow is also wired into the top-level CI/CD workflow so the standalone bundles are built reproducibly alongside the normal package artifacts.
Scope¶
This page describes standalone delivery for the McSAS3 core CLI only.
Packaged GUI app delivery belongs to the follow-on McSAS3GUI work.