Skip to content

Latest commit

 

History

History
66 lines (51 loc) · 5.43 KB

CONTRIBUTING.md

File metadata and controls

66 lines (51 loc) · 5.43 KB

Contributing to Autoimpute

Welcome to autoimpute! We appreciate your desire to contribute, and we're excited to see how you can add to or improve our project! We've outlined some guidelines to make contributing easy and ensure the contribution process is smooth.

Jump to specific sections:

Getting Started

If you're completely new to autoimpute, read through our README. To learn more about using the package and review sample use cases, check out our tutorials.

Code of Conduct

Before continuing, please read our Code of Conduct. Our code of conduct extends to questions, issues raised, pull requests, and code itself.

Reporting Bugs

Because autoimpute is in rapid development, bugs are inevitable. We do our best to avoid them through testing and squash them quickly if they arise. That being said, we rely on users to help us find bugs that we missed. As noted in the Pull Requests section, always start with a bug report before you actually submit a pull request. A bug report gives us a chance to discuss the feature in more detail and ensure a pull request develops smoothly. Here are some additional pointers for reporting bugs.

Before Reporting Bugs

  • Make sure the bug occurs when using the master branch.
  • Check other active branches to ensure the bug is not being worked on or already fixed and slated for a future release.
  • Comb through the Issues Board to see if the bug has already been identified.
  • For errors, make sure that autoimpute is not raising the error as expected behavior.
  • For unexpected behavior, determine if any implicit assumptions from autoimpute logic produce the output.

When Reporting Bugs

  • Follow the guidelines specified from our Bug Report Issue Template
  • If you're unsure who should act on this bug, assign it to kearnz by default.

After Reporting Bugs

  • Stay involved! Monitor the issue thread. Be prepared to respond to comments & questions we may have.
  • Keep us updated! If you have more info to provide after the fact, follow up with us in a comment.
  • After acknowledgement and discussion, submit a pull request! Follow the pull request guidelines to do so.

New Features

Missing data imputation is a vast field. While we hope to cover as much as we possibly can, it'd be impossible for us to do it all. As noted in the Pull Requests section, always start with a new feature request before you actually submit a pull request. A new feature request gives us a chance to discuss the feature in more detail and ensure a pull request develops smoothly. Here are some additional pointers for submitting new features.

Before Suggesting New Features

  • Make sure the feature does not exist within any active branch.
  • If the feature exists in a stale branch, get in contact with us first.
  • Comb through the Issues Board to see if the feature has already been requested.

When Suggesting New Features

  • Follow the guidelines specified from our New Feature Issue Template
  • If you're unsure who should act on this feature request, assign it to kearnz by default.

After Suggesting New Features

  • Stay involved! Monitor the issue thread. Be prepared to respond to comments & questions we may have.
  • Keep us updated! If you have more info to provide after the fact, follow up with us in a comment.
  • After acknowledgement and discussion, submit a pull request! Follow the pull request guidelines to do so.

Pull Requests

We've open sourced autoimpute early on so colleagues and students can use the package. We have completed what we feel is the first phase of autoimpute, and we are ready to accept pull requests from those who want to contribute. As noted in the previous sections, never issue a pull request to fix a bug or add a new feature until you've submitted a bug report or new feature request. This intermediary step helps us understand your issue, discuss it, and ackwoledge the work to be done. We believe it makes the pull request process more successful! Below are some additional pointers for pull requests.

Before Submitting a Pull Request

  • Raise an issue, create a new feature request, or alert us via a bug report BEFORE you submit a pull request.
  • Comb through existing pull requests to ensure that a similar or identical pull request is not in the queue.

When Submitting a Pull Request

  • Follow the guidelines specified from our New Feature Issue Template
  • If you're unsure who should act on this pull request or review the code, assign it to kearnz by default.

After Submitting a Pull Request

  • Let us know if you'd like your name and profile added to an acknowledgement board!
  • Get in touch if you'd like to collaborate further on the project - we have plenty of ideas and need bandwidth!