-
Notifications
You must be signed in to change notification settings - Fork 1
Proposed revisions for contributors guide #2
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
base: hdf5_dev_docs
Are you sure you want to change the base?
Proposed revisions for contributors guide #2
Conversation
Thank you! I am planning to review your suggestions on 3/19 with developers.
Thank you! Some resources are missing and will be added as they become available (for example, backward/forward compatibility).
Good to know!
Good question. I am not sure if it is always possible. I think we all agreed that clear purpose of PR and "one feature at a time" is a mitigation to the size of PR along with self-contained changes. It is a nightmare when changes are not localized and scattered all over the code.
Thank you! It turned out we know how to set it up and will do it. My goal was to create a file so they can implement it. I've already removed the reference to the template file from the current version.
We had long discussions about it and decided to say what is in the document (pretty vague). We always discuss where the fix should go and there are several factors that affect the decision (complexity, differences in the code among different branches, relevance of PR, etc.) We have set up an internal process that looks like this: we triage PRs on a regular basis during engineering stand-ups each morning, we also review the progress on PRs every Friday at the engineering meeting. During triaging we agree if PR should go to other branches and we open a ticket for this task. Depending on complexity of PR we decide who does it and contact the author, because in some cases the author of PR will be the best to merge the code to other branches. So far it worked well with both internal and external contributors. I will add the description of the process to it would be clear that we may ask and guide a contributor.
We start reviewing as soon as PT comes. If it is a bug fix with a test, it usually goes in very quickly (in a week or less). Based on our few months of experience working with just two major external contributors that try to change library all over the places (compiler warnings, or new features) the ranges are from an hour to "forever". We spent on average 6-8 hours a day dealing with external contributions (reviewing and going back and forth and then addressing regression testing issues). I think what is important that communications with the PR author start right away and a clear path to acceptance is developed.
Right.
Agree. We are running performance benchmarks internally, so we will know if PR affects performance and we will revert it. We should provide contributors with benchmark set that they can easily run just on their platform and compare results before and after. I will explain about reverting PRs if internal performance testing shows degradation.
Yes and this should be in the ticket for PR.
Yes, it is a quite range and depends on PR. I tried to keep the document short and emphasize importance of communications.
Thank you! And I need to dig out our docs on backward and forward compatibility. There is still a lot of work to do, but at least we started! |
@epourmal am submitting a PR to you hear with some ideas for revision to your contributor's guide.
Several things came up for me as I read it and hopefully this GitHub conversatiion will be a useful venue in discussin some of them. Please take my suggestions here as offered in the spirit of trying to further this conversation.
issue_template.md
that doesn't exist. You can create an issue template for GitHub issues that will come up any time a user wants to file an issue. That template can include a checklist. I can explain further if needed.develop
to one or more release branches? IMHO...the onis for this should be on THG, not the contributor. But, this question of which branch some work should go into may require upfront discussion with the contributor ahead of the work. If so, the guidelines should probably just say that.