When using pip versions lower than 8.1 or other operating systems,
compilation is necessary and packages must be installed first.
-
Get the code::
git clone http://libcrush.org/main/python-crush.git
cd python-crush
-
Set up the development environment::
deactivate || true ; source bootstrap
-
Run the tests::
deactivate || true ; bash run-tests.sh
-
Sync the libcrush submodule::
git submodule update --remote libcrush
-
Run a single test::
tox -e py27 -- -s -k test_one tests/test_crush.py
-
Check the documentation::
python setup.py build_sphinx
firefox build/html/index.html
-
Update requirements
rm -fr virtualenv
virtualenv virtualenv
source virtualenv/bin/activate
update some module in requirements.txt
tox
if that works
pip install -r requirements.txt
pip freeze -r requirements.txt > new-requirements.txt
.tox/py3/bin/pip freeze -r requirements-dev.txt > new-requirements-dev.txt
diff <(.tox/py27/bin/pip freeze -r requirements-dev.txt) new-requirements-dev.txt
all lines after the first "were added by pip freeze" are indirect dependencies
remove pkg-resources==0.0.0 https://bugs.launchpad.net/ubuntu/+source/python-pip/+bug/1635463