Hey folks, I think we are very close to cutting the first Apache release. Yet, there are many small steps to do. Personally, I have been procrastinating on them as I don't exactly know what to do.
To get over this "fear of the unknown", I have made a painfully detailed TODO list that should get us to the first release. The purpose of this thread is to a) agree that the steps in this list will indeed get us to correctly publishing the first Apache release and b) clarify the unknowns - mostly interactions with Apache infrastructure. I do believe that once we agree on the outstanding steps, we'll be able to get it over with within a week or so. Please find the list below. My unknowns are marked with **Q** and ????. I am looking forward to reading your feedback! TODO towards the first Apache release. 1. Agree on the release version (0.6.0-incubating? I am using that as a placeholder in other steps). 2. Update release name in pyproject.toml. 3. Update project description and authors in pyproject.toml. 4. Verify supported Python versions. Run tests and examples with Python 3.8+. Add a paragraph to README claiming that versions where tests passed are supported. 5. Create source distribution via `poetry build`. 6. Sign the artifact `gpg --armor --output dist/<artifact>.asc --detach-sig dist/<artifact>`. 7. Verify the checksum `sha512sum dist/<artifact> > dist/<artifact>.sha512`. 8. Test release candidate locally with `pip install`. 9. Upload project KEYS file. **Q:** How do we do that? 9. Upload Artifacts to Apache Dev Repo. **Q:** How do we do that? 10. Call for PMC Vote. Send an email to the this mailing list with the subject "VOTE: Release Apache Otava 0.6.0-incubating" with the link to the release candidate: ``` The Apache Otava project is pleased to announce that the release candidate for version 0.6.0-incubating is ready. The release candidate artifacts are available at: ???? SHA512: <checksum> KEYS:https://downloads.apache.org/incubator/otava/KEYS Please vote on releasing this candidate by replying with: [ ] +1 Release this package [ ] 0 No opinion [ ] -1 Do not release (please provide reason) This vote will be open for at least 72 hours. ``` 11. Wait for the vote to pass, fix issues if any. 12. Call for IPMC Vote. Send an email to gene...@incubator.apache.org with the subject "[VOTE] [RESULT] Release Apache Otava 0.6.0-incubating". The content should contain links to the vote result and the artifacts. 13. Wait for the vote to pass, fix issues if any. 14. Move the RC to the release directory. **Q:** How do we do that? 15. Publish Github release/tag. 16. Upload the release to PyPI. **Q:** How do we do that? 17. Announce the release on the mailing list by sending an email with the subject "[ANNOUNCE] Apache Otava 0.6.0-incubating released". 18. Make social media noise. 19. Bump version in pyproject.toml for the next release. Best, Alex