Skip to main content

crush

crush is a library to control placement in a hierarchy

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 make boost-devel libatomic_ops-devel

  • pip install crush

Hacking

  • 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

Release management

  • Prepare a new version

  • git checkout master ; git pull

  • 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

Release files for crush 1.0.35

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for crush 1.0.35
File Size Uploaded
crush-1.0.35.tar.gz 352.1 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for crush 1.0.35
File
crush-1.0.35-cp36-cp36m-manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details
crush-1.0.35-cp35-cp35m-manylinux1_x86_64.whl CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64 Details
crush-1.0.35-cp34-cp34m-manylinux1_x86_64.whl CPython 3.4 CPython 3.4 pymalloc Linux glibc 2.5+ x86-64 Details
crush-1.0.35-cp27-cp27mu-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64 Details

Total release size:10.6 MB

Release files / crush-1.0.35.tar.gz

Download URL crush-1.0.35.tar.gz
Size 352.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a0cfb6166965a9cf19d479a14a2909e02af67775772773eb91ab3089b8e2e759
BLAKE2b-256 checksum
How to use checksums
b87b2fd699893193eec99cbcf12e16c6199c6f116e71cea17d1c83f3d715757f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / crush-1.0.35-cp36-cp36m-manylinux1_x86_64.whl

Download URL crush-1.0.35-cp36-cp36m-manylinux1_x86_64.whl
Size 2.6 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
d14f2751cdb7003183d99599f06aaf7c3d235e55e031288da8a6f777aa615d31
BLAKE2b-256 checksum
How to use checksums
89db7d04576ec1f49468b0852435d9fc77b6892b20503efdd6576c41e45c7b5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / crush-1.0.35-cp35-cp35m-manylinux1_x86_64.whl

Download URL crush-1.0.35-cp35-cp35m-manylinux1_x86_64.whl
Size 2.6 MB
Tags CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
4e45826c1ca092ed24e77be6450305ff25e8cdc9da8f389691905677e1c20a45
BLAKE2b-256 checksum
How to use checksums
7dc05937d8905c1a87b28352bcf64ccd12199993f53a6938f1c6de75e6699453
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / crush-1.0.35-cp34-cp34m-manylinux1_x86_64.whl

Download URL crush-1.0.35-cp34-cp34m-manylinux1_x86_64.whl
Size 2.5 MB
Tags CPython 3.4 CPython 3.4 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
857f3d981f4bc3f27ddfbd2dbfdda45c5beef80447516d577db7b8fd14afd1b1
BLAKE2b-256 checksum
How to use checksums
7daba7df0516e0a80050d94e69748e766b541a59dfdd6e7b4a62ca62cc145203
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / crush-1.0.35-cp27-cp27mu-manylinux1_x86_64.whl

Download URL crush-1.0.35-cp27-cp27mu-manylinux1_x86_64.whl
Size 2.5 MB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
51ad44682fad5504982038ad5c2e1335963d1c3e00adf2a998cc851d6d08ace1
BLAKE2b-256 checksum
How to use checksums
5958248740d1e1fa55a3685d9f2824face07d72858c3c89be75278d4a0cbf0c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.35 This release

5 release files

1.0.32

5 release files

1.0.31

5 release files

1.0.30

5 release files

1.0.29

5 release files

1.0.28

5 release files

1.0.27

5 release files

1.0.26

5 release files

1.0.20

5 release files

1.0.19

5 release files

1.0.18

5 release files

1.0.17

5 release files

1.0.16

1 release file

1.0.15

1 release file

1.0.14

1 release file

1.0.13

1 release file

1.0.12

1 release file

1.0.11

1 release file

1.0.10

1 release file

1.0.9

1 release file

1.0.8

1 release file

1.0.7

1 release file

1.0.6

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page