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

New Branch & Github rules #13

Closed
rishiosaur opened this issue Dec 12, 2020 · 3 comments
Closed

New Branch & Github rules #13

rishiosaur opened this issue Dec 12, 2020 · 3 comments
Assignees
Labels
feature Features that add something new to the language

Comments

@rishiosaur
Copy link

rishiosaur commented Dec 12, 2020

For the next few releases, I'd like to standardize our DevOps and release procedures (this is sort of related to #10, but a little bit more general; this is more meant to discuss the way that branches are laid out).

Additionally, I'd like to talk about what contributing guidelines, CoC, and PR/issue templates should look like.

@rishiosaur rishiosaur changed the title New Branch & rules New Branch & Github rules Dec 12, 2020
@slightknack
Copy link
Member

Sounds great!

Let's see - so as we discussed on Discord, I think we were looking towards some form of rolling-release schedule, similar to Rust's:

  • Features are worked on in forks, preferably in their own branches. Once implemented, merged into master and hidden behind feature flags.
  • The master branch is compiled weekly.
  • The beta branch is pulled from the master branch every quarter, new features included. During this period features should be stabilized if needed.
  • The release branch is pulled from the beta branch at the end of every quarter.

Of course this is just one potential git flow and time timescales (weeks, quarters) can be adjusted.

So as for contributing guidelines and CoC, they're kinda just mashed together in CONTRIBUTING.md atm. Ideally we'd separate this out, and use some predefined CoC, like the Contributor's Covenant or something.

What are your thoughts on PR/Issue templates?

@slightknack slightknack added the feature Features that add something new to the language label Jan 23, 2021
@slightknack
Copy link
Member

So currently, we have two primary branches:

  • master, which must always build. Releases are periodically published from this branch
  • dev, which doesn't have to always build, but must be green before merging into master. This branch is always the target of the next minor release.

If you're implementing a feature for the next minor release, merge the PR against dev. If this is a bug fix or something that could be included right now, no issues raised, merge the PR against master.

@slightknack
Copy link
Member

Issue seems stale and we seem to have found a git flow that works, so I'm closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Features that add something new to the language
Projects
None yet
Development

No branches or pull requests

2 participants