Skip to content
This repository has been archived by the owner on Jul 16, 2024. It is now read-only.

Latest commit

 

History

History
61 lines (44 loc) · 3.22 KB

CONTRIBUTING.md

File metadata and controls

61 lines (44 loc) · 3.22 KB

Contributing

We warmly welcome and appreciate contributions from the community! By participating you agree to the code of conduct.

Development

  • Gather input early and often rather than waiting until the end.
    • Have in-person conversations.
    • Regularly share your branch of work.
    • Consider making a draft PR.
    • Pair as needed.
  • Prefer short names based on context such as: file vs. database_file
    • People will be familiar with the code, so err on the side of brevity but avoid extremes.
  • Generally follow surrounding code style and conventions. Use make lint.
  • Have tests including unit and end-to-end.
  • Resources:

Contributing/Submitting a Pull Request

  • Sign our Contributor License Agreement.

  • Fork the repository on GitHub.

  • Clone the repository.

  • Follow the README to set up your environmen.

  • Create a change

    • Create a topic branch.

    • Make commits as logical units for ease of reviewing.

    • Try and follow similar coding styles as found throughout the code base.

    • Rebase with main often to stay in sync with upstream.

    • Ensure a well written commit message as explained here and here.

  • Submit a pull request (PR).

Code Reviews

  • Follow Google's Code Review Guidelines
  • PR comments should have technical explanations.
  • Avoid “I prefer it this way”. See Principles Section.
  • Avoid these Toxic Behaviors (video)
  • Use Github's "Request changes" very sparingly. This indicates that there are critical blockers that absolutely must change before approval.
  • Use Github's “Start a review” feature to submit multiple comments into a single review.
  • Address PR comments with fixup or squash commits. This makes it easier for the review to see what changed.
    • Ideally wait until the PR has been approved to squash these commits, but sometimes it might be cleaner and easier to follow to combine them earlier.
    • Rebasing your PR with main is good practice.
    • Use Github’s “Resolve Conversation” button to indicate you addressed the feedback. There is no need for a comment unless you deviated from the reviewer's specific feedback.

Community

Connect with Greenplum on: