snowblink14 / smatch

Smatch tool: evaluation of AMR semantic structures
MIT License
63 stars 27 forks source link

Streamline release process #29

Closed goodmami closed 4 years ago

goodmami commented 4 years ago

The current process for pushing a release to PyPI could be more direct. As @danielhers said in #22:

As for releases, a small detail is that they are currently actually created automatically only when a tag is created on my fork, because the PyPI token is encrypted with the public key associated with it:

https://github.com/snowblink14/smatch/blob/a4f2e28a16666860bf70c4274803a60c67bac2cb/.travis.yml#L12

This means the process for a release is

  1. @snowblink14 creates a release (and thereby automatically a tag) on https://github.com/snowblink14/smatch
  2. I replicate this tag on https://github.com/danielhers/smatch and a Travis CI job automatically deploys to PyPI

To get rid of step (2), @snowblink14 would need to enable Travis CI for https://github.com/snowblink14/smatch, and then update the encrypted token in .travis.yml. I'll be glad to advise how to do that but I don't mind doing step (2) myself so I think the current situation is fine.

While I appreciate @danielhers's willingness to do the extra step, I think it creates an unnecessary barrier. Let's make it so PyPI is updated whenever a release is made in this repo.

If @snowblink14 does not want to setup TravisCI, then GitHub Actions are pretty nice. I've had a good experience using the python-publish workflow (see here), and the Python Packaging Authority (PyPA) also has their own version (see here).

snowblink14 commented 4 years ago

Agree that the release should be automated. Sorry for the delay and will try to setup TravisCI soon.

snowblink14 commented 4 years ago

Travis CI has been enabled and a new version (1.0.3.2) has been released. Tag 1.0.3 and 1.0.3.1 fails to be uploaded to PyPI because of config issues (now fixed). Close this issue.