library to control placement in a hierarchy
Project description
crush
crush is a library to control placement in a hierarchy
Home page : http://http://libcrush.org/main/python-crush
Documentation : http://crush.readthedocs.org/
GNU/Linux Installation
pip install crush
Other Installation
When using pip versions lower than 8.1 or other operating systems, compilation is necessary and packages must be installed first.
apt-get install -y gcc g++ python-pip python-all-dev libpython3-all-dev cmake libboost-all-dev libatomic-ops-dev
dnf / yum / zypper install -y gcc gcc-c++ python-pip python-devel python3-devel cmake boost-devel libatomic_ops-devel
pip install crush
Hacking
Get the code:
git clone --recursive http://libcrush.org/main/python-crush.git
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
Release management
Prepare a new version
version=1.0.0 ; perl -pi -e “s/^version.*/version = $version/” setup.cfg ; for i in 1 2 ; do python setup.py sdist ; amend=$(git log -1 –oneline | grep –quiet “version $version” && echo –amend) ; git commit $amend -m “version $version” ChangeLog setup.cfg ; git tag -a -f -m “version $version” $version ; done
Publish a new version
docker build –tag manylinux manylinux
docker run –rm -v $(pwd):/io manylinux /io/manylinux/build-wheels.sh OR docker run –rm -v $(pwd):/io manylinux env PYBINS=/opt/python/cp27-cp27mu/bin /io/manylinux/build-wheels.sh
sudo chown -R $(id -u) wheelhouse/
twine upload –sign wheelhouse/crush
rm -fr dist
python setup.py sdist
twine upload –sign dist/*.tar.gz
git push ; git push –tags
pypi maintenance
trim old versions at https://pypi.python.org/pypi/crush
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for crush-1.0.19-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69e3f72fcef5db82e8e49adca234abe70587b388325e5ed755b5f92ae14ba154 |
|
MD5 | 1fc8570fba0a5f17b0b4234695c93ae7 |
|
BLAKE2b-256 | 41eb320230f08f9810c3921ceaa1907c20fcc51b4c399c1eebb1ac6b3fa0c9f7 |
Hashes for crush-1.0.19-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c7017b705e113488d2449d655158f2e20e28cddfb4b22ed8c1ffc9bf6340d9e |
|
MD5 | 0db7489fb736bcd661546fb535dc7982 |
|
BLAKE2b-256 | 75ae649cf4b324461b5b4def7dfa569d735669aed07712b2259462aabd60c8bb |
Hashes for crush-1.0.19-cp34-cp34m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8016eeea286e7f6cc7c11e72ae91a2c8ef1bc9cf84554d98016695b3b2916bd |
|
MD5 | c4416cf92de7c3902746228bd8e7bb50 |
|
BLAKE2b-256 | 62933e5e14d35197aaffbcfb46c62d0b325ee6ed3a7e5ecad34218bc938f968a |
Hashes for crush-1.0.19-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a17c194e89384c607849c8732cd0fdf97ce2f56e272268c20210674066ff26c |
|
MD5 | 2ef51979808cd966b13bb76cb1381226 |
|
BLAKE2b-256 | a5bce706f51dd4c2eeaa44309d0b230e31a477bebc3305a5f253b1a46e6a9e1d |