Skip to content

Latest commit

 

History

History
71 lines (45 loc) · 2.14 KB

File metadata and controls

71 lines (45 loc) · 2.14 KB

Hack

Ready to contribute? Here's how to set up Watson for local development.

Python requirements

  • Python (2/3) interpreter installed
  • pip tool to install package dependencies
  • virtualenv tool to create virtual environments

Get started!

  1. Fork the Watson repository on GitHub.

  2. Clone your fork locally:

     $ git clone git@github.com:your_name_here/Watson.git
    
  3. Create a virtual environment:

     $ cd Watson
     $ make env
    

    The Python version used will be the one accessible using the python command in your shell.

    To use a different Python version, define the PYTHON shell variable. For example:

     $ PYTHON=python3.5 make env
    
  4. Install dependencies and deploy Watson inside the virtual environment:

     $ source .venv/bin/activate
     (.venv) $ make install-dev
    

    If you are using fish shell, source .venv/bin/activate.fish instead.

  5. Create a branch for local development:

     (.venv) $ git checkout -b name-of-your-bugfix-or-feature
    

    Now you can make your changes locally.

    Notes:

    • The files you need to edit to change watson's behavior are located in the watson/ subfolder.
    • Every time you run watson inside the virtual environment, the source code inside the watson/ subfolder will be used.
    • To avoid messing with your real Watson data, watson will use data/ as the application folder inside the virtual environment. You can run watson projects to check that your real projects are not shown.
  6. When you're done making changes, check that your changes pass the tests:

     (.venv) $ pytest tests
    
  7. If you have added a new command or updated/fixed docstrings, please update the documentation:

     (.venv) $ make docs
    
  8. Commit your changes and push your branch to GitHub:

     $ git add .
     $ git commit -m "Your detailed description of your changes."
     $ git push -u origin name-of-your-bugfix-or-feature
    
  9. After reading this, submit a pull request through the GitHub website.