-
Notifications
You must be signed in to change notification settings - Fork 8
Contributor Workflows
David Foster edited this page Apr 3, 2021
·
10 revisions
Repeat forever:
- Work on some tasks scheduled for the next release.
- If you are contributing for the first time, consider looking at good first issues.
- See the Roadmap for major items in the next release.
- Please be sure to create an issue first before working on any item to declare to other contributors that you're working on it. Link to created issue from the Roadmap.
- Browse high-priority issues to consider slipping in one as well.
- No high-priority issues? Consider medium-priority issues.
- 🎗️ Every release generally must have at least one releaseworthy issue.
- 🎗️ Recommend including at least one low-priority issue in each release to ensure they're not completely starved for attention.
- If sufficient tasks have been completed to cut a release, then actually cut a release:
- Update the version number in
src/crystal/__init__.pyif not already done. - Ensure all the automated tests pass.
- Review/revise the release notes.
- Rebuild the Mac and Windows binary (on the earliest supported Mac/Windows versions).
- Install/test the built binaries on a fresh Mac/Windows VM, attempting to download/serve a simple web page like https://xkcd.com/ .
- Tag the Git commit as
v#.#.#for the version. - Create a new Release on GitHub, with the same description as in the release notes, and upload the related binaries.
- Update the README to point to the latest binaries.
- Announce the release via blog post, Twitter, etc if desired.
- Update the version number in
Repeat forever:
- Are there any new untyped issues? Any unprioritized non-questions? Any questions?
- Tag with a
type-*tag. - For non-questions, elaborate until can assign
priority-*tag, with stated rationale.- Compare with existing high-priority issues
- Compare with existing medium-priority issues
- Compare with existing low-priority issues
- For questions, shepherd conversation directly to resolution and close.
- Tag with a