-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
contributing updates #683
contributing updates #683
Conversation
sarob
commented
Oct 30, 2024
- branch rules
- release process
- roles
- semver
- diagrams
- branch rules - release process - roles - semver - diagrams
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
great work @sarob. added my feedback / suggestions.
|
||
- `main` - Production-ready code, protected branch | ||
- `develop` - Integration branch for features | ||
- `feature/*` - New features |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add into - owner of this branch are called feature owner.
they have write access to push code to this branch, they are typically the ones who review codes PR's to this branch
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same Applies to release braches.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do you mean the PR author? We can write that down, but seems obvious.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the authZ of roles are below. doesn't cover this?
|
||
week one for `release/v4.1.0` | ||
|
||
- Planning meeting for `release/v4.1.0` with release scope and milestone objectives set by the maintainers. Release and maintainer meeting agendas and schedules are posted on the project repository [wiki](https://github.com/AIHawk/AIHawk/wiki) and shared in the `#releases` channel on Discord. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Release Process
Planning Phase (30-45 minute community meeting)
- A community meeting (open to all) will be held where maintainers and community members review and select GitHub issues from the backlog to define the scope and targets for the release. During the meeting, community members can also express interest in working on unassigned issues.
Tracking Phase (60% of release cycle, i.e., 6 days for a 10-day cycle)
- The GitHub project board will track PR status and determine which release cycle your changes will be included in. If your PR isn't ready for merging into the current release, it will be pushed to the next release cycle.
Testing Phase (40% of release cycle, i.e., remaining 4 days of 10-day cycle)
release/v4.0.0
freezes (no new PRs will be merged) and undergoes community testing- A dedicated channel will be created in Discord for that release - all release contributors will be added. Any bugs identified during testing will be reported, and respective contributors who worked on those changes can raise PRs for fixing bugs in the release branch
- Final bug fixes and documentation updates are completed
- Community feedback is gathered and addressed
Release Phase (release manager only)
Once the release candidate is stable:
release/v4.0.0
merges intomain
- Tag
main
asrelease/v4.0.0
release/v4.0.0
published to:- AIHawk/releases
- PyPI as a package
- Release documentation
- Docker images (future)
- Delete
release/v4.0.0
branch
Multiple release cycles can run in parallel, each with its own timeline.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- See my comments on an aggressive release schedule above.
- I like the details on the planning meeting.
- with a train release, if we push a PR as not being ready from the release, it will have to be moved to another branch. the base branch would need to be changed every release cycle. if we are using develop then is much easier. My thinking is we want this to be very repeatable and simple to manage the releases. we can begin to script parts of the process. let's get a few maintainer to discuss in a meeting.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I included everything above into a month cycle. verify.
Very good work, Let me know we it is finish. |
I will tweak it a bit and repost into discord. |
- added mermaid for visual joy