Contributing to Cask¶
This document provides guidelines and information on contributing to Cask.
Cask comes with a rich set of test cases. When fixing bugs or implementing new features, please add the corresponding test cases as well.
- make start-server to start the fake package server, which is used throughout the tests.
- make test to run all tests. Use make unit to only run the unit tests, and make ecukes to only run the integration tests.
- Repeat 2. as long as you need.
- make stop-server to stop the fake package server started in 1.
Cask includes a comprehensive user guide. Please try to extend it accordingly when you implement new features.
The documentation is written in reStructuredText, using Sphinx and sphinxcontrib-emacs. The former is a generic documentation tool, and the latter extends it with specific support for Emacs Lisp projects.
To build the documentation locally, you need to go through a little setup first.
$ pip install --user virtualenv
Then add ~/Library/Python/2.7/bin (on OS X) or ~/.local/bin (on other Unix variants) to PATH.
You probably need to install pip first. It is available in the package repositories of most Linux distributions, as python-pip or similar. If pip is not available for your Linux distribution, or if you are using OS X, please follow the instructions to install pip.
Now create a virtualenv for the documentation, and install the requirements:
$ mkdir -p ~/.virtualenvs $ virtualenv -p python2.7 ~/.virtualenvs/cask $ pip install -r doc/requirements.txt
Now you are set up to build the documentation.
Now you are ready to build the documentation.
First, switch to the virtualenv and make sure that the requirements are up to date:
$ source ~/.virtualenvs/cask/bin/activate $ pip install -r doc/requirements.txt
Then you can build the HTML documentation, or verify all links in the documentation:
$ make html # Build HTML documentation to build/doc/html/ $ make linkcheck # Check all links in the documentation