Skip to content

Commit

Permalink
Added contribute to EvalML instructions (#213)
Browse files Browse the repository at this point in the history
* first-pass

* second pass

* CL

* Change to code block

* update code block

* Change to make install

* update
  • Loading branch information
jeremyliweishih authored Nov 15, 2019
1 parent 91e07ab commit 3535564
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 0 deletions.
68 changes: 68 additions & 0 deletions contributing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
## Contributing to the Codebase

#### 0. Access ZenHub
We currently utilize ZenHub as our project management tool for EvalML. Please do the following:
* Access ZenHub directly through GitHub (using the [extension](https://www.zenhub.com/extension)) or [here](https://app.zenhub.com/)
* Be assigned or assign yourself work from the `Sprint Backlog` and then `Development Backlog`
* Connect your PR to your issue so it behaves as one
* Hit `Connect this pull request with an existing issue` at the bottom of the PR and attach the issue
* Move your issue to the correct pipeline(column)
* In Progress for issues in progress (including work after review)
* Review/QA when needing review or QA
* Closed when finished

More details about ZenHub and its best practices can be found [here](https://bit.ly/379iFB9).


#### 1. Clone repo
The code is hosted on GitHub, so you will need to use Git to clone the project and make changes to the codebase. Once you have obtained a copy of the code, you should create a development environment that is separate from your existing Python environment so that you can make and test changes without compromising your own work environment.
* clone with `git clone https://github.com/FeatureLabs/evalml.git`
* install in edit mode with:
```bash
cd evalml # move to directory
make installdeps # install in edit mode
```


#### 2. Implement your Pull Request

* Implement your pull request. If needed, add new tests or update the documentation.
* Before submitting to GitHub, verify the tests run and the code lints properly
```bash
# runs test
make test
# runs linting
make lint
# will fix some common linting issues automatically
make lint-fix
```
* If you made changes to the documentation, build the documentation to view locally.
```bash
# go to docs and build
cd docs
make html
# view docs locally
open build/html/index.html
```

#### 3. Submit your Pull Request

* Once your changes are ready to be submitted, make sure to push your changes to GitHub before creating a pull request. Create a pull request, and our continuous integration will run automatically.

* Be sure to include unit tests for your changes; the unit tests you write will also be run as part of the continuous integration.

* If your changes alter the following please fix them as well:
* Docstrings - if your changes render docstrings invalid
* API changes - if you change the API update `docs/source/api_reference.rst`
* Documentation - run the documentation notebooks locally to ensure everything is logical and works as intended

* Update the "Future Release" section of the changelog (`docs/source/changelog.rst`) to include your pull request. Add a description of your PR to the subsection that most closely matches your contribution:
* Enhancements: new features or additions to EvalML.
* Fixes: things like bugfixes or adding more descriptive error messages.
* Changes: modifications to an existing part of EvalML.
* Documentation Changes
* Testing Changes

1 change: 1 addition & 0 deletions docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Changelog
* Documentation Changes
* Updated documentation to show max_time enhancements :pr:`189`
* Updated release instructions for RTD :pr:`193`
* Added contributing instructions :pr:`213`
* Testing Changes

**v0.5.0 Oct. 29, 2019**
Expand Down

0 comments on commit 3535564

Please sign in to comment.