Skip to content
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

Merged
merged 2 commits into from
Nov 2, 2024
Merged

Conversation

sarob
Copy link
Collaborator

@sarob sarob commented Oct 30, 2024

  • branch rules
  • release process
  • roles
  • semver
  • diagrams

- branch rules
- release process
- roles
- semver
- diagrams
Copy link
Contributor

@surapuramakhil surapuramakhil left a 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
Copy link
Contributor

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

Copy link
Contributor

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.

Copy link
Collaborator Author

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.

Copy link
Collaborator Author

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.
Copy link
Contributor

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 into main
  • Tag main as release/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.

Copy link
Collaborator Author

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.

Copy link
Collaborator Author

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.

@feder-cr
Copy link
Owner

Very good work, Let me know we it is finish.

@sarob
Copy link
Collaborator Author

sarob commented Nov 1, 2024

I will tweak it a bit and repost into discord.

- added mermaid for visual joy
@feder-cr feder-cr merged commit 92f5ce3 into feder-cr:release/v11.01.2024 Nov 2, 2024
1 check passed
HuseynA28 pushed a commit to HuseynA28/Auto_Applier that referenced this pull request Nov 11, 2024
DanielT504 pushed a commit to DanielT504/Auto_Jobs_Applier_AI_Agent that referenced this pull request Dec 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants