OpenAgricultureFoundation / openag_brain

ROS package for controlling an OpenAg food computer
GNU General Public License v3.0
221 stars 68 forks source link

RFC: formal process for developer workflow #272

Closed rbaynes closed 7 years ago

rbaynes commented 7 years ago

RFC: formal process for developer workflow

Summary

This RFC describes a formal process for software developers who contribute to OpenAg projects. It provides a more stable software product for our users and prevents them from being bitten by untested code issues.

Motivation

Encourage good software development practices to produce a quality product.

Details

Drawbacks

A bit more process that has been done before.

Alternatives

Continue with the current master > work branch > PR back to master process.

Deadline for comments

rwdavis513 commented 7 years ago

Looks great to me!

gordonbrander commented 7 years ago

A disadvantage to this approach is that it requires a Sheriff to manage merges back to master. The team is rather small. I agree it can improve release reliability for large teams though. The Train model is another successful approach. Tradeoffs.

Another step toward a consistent stable release process would be to lean more heavily on CI, increase test code coverage, and reject any PRs that fail CI.

These thoughts are all offered without a strong opinion about which model is best.

BTW let's make sure to update the wiki page on Dev process if this changes.

rwdavis513 commented 7 years ago

Agreed. It does need someone to ensure things move from develop to master, but that will also help to ensure a conscious / intentional roll out of each stable release.

Definitely agree that higher test coverage and CI are important either way.

I'd say let's go ahead and approve this RFC and update the wiki as requested.

sp4ghet commented 7 years ago

@rbaynes I agree with this except for one part:

release_YYYY-MM-DD_vX.Y.Z. It's a release, and the date is stored in both the commit AND github. Let's just call it "vX.Y.Z"

Also it's been like a month since posting this and we've adopted the practice so I think it's ok to just close this and put it into https://github.com/OpenAgInitiative/rfcs

rbaynes commented 7 years ago

@Spaghet Done. Changed version and moved to rfcs.