Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish to PyPi and Conda #20

Open
kkiesling opened this issue Apr 17, 2023 · 4 comments
Open

Publish to PyPi and Conda #20

kkiesling opened this issue Apr 17, 2023 · 4 comments

Comments

@kkiesling
Copy link
Collaborator

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:

  1. Setup a python-publish.yml workflow file
  2. 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
  3. 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)
  4. Register an account on PyPI and formalize the upload to the main package registry

Adding to Conda-forge:

  1. Use the conda-forge tools to automatically generate a recipe from the setup.py.
  2. 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:

@MilosAtz
Copy link
Contributor

This is a great idea - thanks for pointing out some useful examples to follow! I can take a look and make some moves on it this weekend.

@kkiesling
Copy link
Collaborator Author

I can work on this too! I have published a few things to conda already so I know how that works. I haven't published to PyPi but I think I could figure it out.

@kkiesling
Copy link
Collaborator Author

I am going to start an official github release right now to at least have that available to me in PyARC

@kkiesling
Copy link
Collaborator Author

kkiesling commented Apr 18, 2023

I made a v0.12.2 release from the current develop branch. If we use official releases there is not really a big reason to use both master and develop here, but we can republish from master if that is preferred. It probably makes most sense to set develop as the default branch.

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

No branches or pull requests

2 participants