Seeing as DASSH is open source and only requires a pip install, it would be possible to formally publish this to the PyPI package index which would allow users to install without needing to clone the repository. Once this is available on PyPI, it is a simple task to add as a conda package on conda-forge as well, therefore supporting multiple Python package managers. Once both are initially setup, any time a new release is made, the PyPI package will automatically publish and an automated PR will open on the conda-forge repo to release it there.
The steps to make this happen:
Adding to PyPI:
- Setup a
python-publish.yml workflow file
- Ensure the repo is setup for packaging (I believe it already is setup properly minus the
pyproject.toml file) and publish it to the test PyPI
- Do a formal GitHub release for DASSH (right now there are a few tags and a few PRs indicating some version # but no formal release has been done on the platform)
- Register an account on PyPI and formalize the upload to the main package registry
Adding to Conda-forge:
- Use the conda-forge tools to automatically generate a recipe from the setup.py.
- Make a PR in the conda-forge staging area to add the package and await approval. Once PR is merged from staging, the feedstock for us to maintain (mostly automated) will be ready.
An example of a package that has done exactly this is the OpenMC Plotter:
Seeing as DASSH is open source and only requires a pip install, it would be possible to formally publish this to the PyPI package index which would allow users to install without needing to clone the repository. Once this is available on PyPI, it is a simple task to add as a conda package on conda-forge as well, therefore supporting multiple Python package managers. Once both are initially setup, any time a new release is made, the PyPI package will automatically publish and an automated PR will open on the conda-forge repo to release it there.
The steps to make this happen:
Adding to PyPI:
python-publish.ymlworkflow filepyproject.tomlfile) and publish it to the test PyPIAdding to Conda-forge:
An example of a package that has done exactly this is the OpenMC Plotter: