NeuroBench / neurobench

Benchmark harness and baseline results for the NeuroBench algorithm track.
https://neurobench.readthedocs.io
Apache License 2.0
46 stars 11 forks source link

Workflow for automated version bump #208

Closed jasonlyik closed 1 month ago

jasonlyik commented 2 months ago

Everytime we merge to main, upload a new version to pypi.

Separately, can also automate readthedocs build

jasonlyik commented 1 month ago

The current workflow automatically publishes to PyPi whenever there is a new release tag on main branch.

Still manual is building the documentation and also creating the repo release.

ben9809 commented 1 month ago

Hi @jasonlyik, I see that the workflow to publish the package on Pypi has failed because of the authentication token

Regarding the documentation, I think we need to look into readthedocs options to auto-build the documentation on the main branch

jasonlyik commented 1 month ago

Yup, I've added the required Trusted Publisher settings on Pypi to solve that issue. For now, I didn't want to delete and re-make the 1.0.4 tag, so I manually published it, but I believe when we reach 1.0.5 there should be no further issues.

For the documentation, sounds good. I think we should honestly get rid of the documentation branch, it is not different from the dev branch and the docs are stable enough now that we can just update on main like you say.

jasonlyik commented 1 month ago

@ben9809 Looks like the automated flow for publishing hasn't been fixed by adding this repo as trusted published. I think it's because poetry publish isn't supported in a Github action.

Based on this: https://github.com/python-poetry/poetry/issues/7940#issuecomment-1551897945

So I've made some updates to the script: https://github.com/NeuroBench/neurobench/commit/479a71004d9a1a09a911440771bb0abffd0d48fd

But I'm not sure how to test whether or not the action works, do you think I should pull it into main and delete / remake the tag?

ben9809 commented 1 month ago

@jasonlyik It seems strange it's not supported, because I've already implemented this workflow for another open-source project and it os still working.

In the meantime try to delete/remake the tag to test if it works with the new workflow

ben9809 commented 1 month ago

From the error message it seems like there is a problem with the authentication token. Has PYPI_API_TOKEN secret been set?

jasonlyik commented 1 month ago

Got it set, and the action was successful! Quick check of 1.0.5 and everything is good

ben9809 commented 1 month ago

Great 💪🏻