Open bobleesj opened 1 month ago
For the future developer, please note the error message design principle:
Divide an error message into two sections: (1) reason for error, (2) what to do to fix it. Ex) "Both release and pre-release specified. Please re-run the command specifying either release or pre_release.” [1]
Originated from the discussion in https://github.com/Billingegroup/release-scripts/pull/16 with @sbillinge
Context
Releases (PyPI, conda-forge) often fail due to unmet preconditions, resulting in a time-consuming cleanup process. This includes remaking announcements, cleaning up changelogs, and deleting releases on GitHub.
Problem
Currently, our release process proceeds without prior exhaustive checks. This results in a significant amount of manual cleanup and rework. Implementing a validation workflow that verifies all conditions before proceeding with the release could prevent these issues.
Solution
Develop a workflow that conducts comprehensive checks before any release-related tasks (like changelog updates and GitHub releases) are carried out.