Skip to main content

Chia BIP158 (wraps C++)

Project description

Chia BIP158

Build PyPI PyPI - Format GitHub

Total alerts Language grade: Python Language grade: C/C++

This implements the compact block filter construction in BIP 158. The code is not used anywhere in the Bitcoin Core code base yet. The next step towards BIP 157 support would be to create an indexing module similar to TxIndex that constructs the basic and extended filters for each validated block.

Install

python3 -m venv venv
. venv/bin/activate
pip3 install .

Run python tests

python3 tests/simple_test.py

Installation steps on a fresh OSX image

Install brew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew install python3  
brew install boost  

At this point the only error is can’t find boost_thread lib

The issue is the homebrew boost ships libboost_thread-mt libs but doesn’t include plain libboost_thread, so clang can’t find it. Interestingly, homebrew boost does have both plain and -mt files for the libboost_system libraries.

$ find /usr/local/lib/ | grep boost_thread  
libboost_thread-mt.a  
libboost_thread-mt.dylib  

Solution, with no guarantees that this is "the Right Way to do things", but appears to work fine for the configure stage:

cd /usr/local/lib  
ln -s libboost_thread-mt.a libboost_thread.a  
ln -s libboost_thread-mt.dylib libboost_thread.dylib  

ci Building

The primary build process for this repository is to use GitHub Actions to build binary wheels for MacOS, Linux (x64 and aarch64), and Windows and publish them with a source wheel on PyPi. See .github/workflows/build.yml. CMake uses FetchContent to download pybind11. Building is then managed by cibuildwheel. Further installation is then available via pip install chiabip158 e.g.

Contributing and workflow

Contributions are welcome and more details are available in chia-blockchain's CONTRIBUTING.md.

The master branch is usually the currently released latest version on PyPI. Note that at times chiabip158 will be ahead of the release version that chia-blockchain requires in it's master/release version in preparation for a new chia-blockchain release. Please branch or fork master and then create a pull request to the master branch. Linear merging is enforced on master and merging requires a completed review. PRs will kick off a GitHub actions ci build and analysis of chiabip158 at lgtm.com. Please make sure your build is passing and that it does not increase alerts at lgtm.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chiabip158-0.17.tar.gz (114.5 kB view details)

Uploaded Source

Built Distributions

chiabip158-0.17-cp39-cp39-win_amd64.whl (85.8 kB view details)

Uploaded CPython 3.9 Windows x86-64

chiabip158-0.17-cp39-cp39-win32.whl (76.5 kB view details)

Uploaded CPython 3.9 Windows x86

chiabip158-0.17-cp39-cp39-manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.9

chiabip158-0.17-cp39-cp39-manylinux2010_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

chiabip158-0.17-cp39-cp39-manylinux2010_i686.whl (2.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ i686

chiabip158-0.17-cp39-cp39-macosx_10_14_x86_64.whl (141.2 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

chiabip158-0.17-cp38-cp38-win_amd64.whl (86.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

chiabip158-0.17-cp38-cp38-win32.whl (76.8 kB view details)

Uploaded CPython 3.8 Windows x86

chiabip158-0.17-cp38-cp38-manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.8

chiabip158-0.17-cp38-cp38-manylinux2010_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

chiabip158-0.17-cp38-cp38-manylinux2010_i686.whl (2.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ i686

chiabip158-0.17-cp38-cp38-macosx_10_14_x86_64.whl (141.9 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

chiabip158-0.17-cp37-cp37m-win_amd64.whl (87.1 kB view details)

Uploaded CPython 3.7m Windows x86-64

chiabip158-0.17-cp37-cp37m-win32.whl (77.4 kB view details)

Uploaded CPython 3.7m Windows x86

chiabip158-0.17-cp37-cp37m-manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.7m

chiabip158-0.17-cp37-cp37m-manylinux2010_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64

chiabip158-0.17-cp37-cp37m-manylinux2010_i686.whl (2.2 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ i686

chiabip158-0.17-cp37-cp37m-macosx_10_14_x86_64.whl (141.2 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

File details

Details for the file chiabip158-0.17.tar.gz.

File metadata

  • Download URL: chiabip158-0.17.tar.gz
  • Upload date:
  • Size: 114.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17.tar.gz
Algorithm Hash digest
SHA256 3f082c4e15d5f500108b3a0680d7049e3e84041733f17ff2f88c22e4d1ac230b
MD5 e3d620a50e8ee7f7dfbc50972714b331
BLAKE2b-256 a6af36376a30ba02acb9876c8355040f90be8ebc3d83302cbbeaa0a2e8cc5c24

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 85.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 cdad53ec249371412f2b3c650cde8b076926707e4966100bcbff8ea69db599b9
MD5 8b6845f09873ecae342eb5cc681ce50c
BLAKE2b-256 90a3df82d9bcb299982c92d79aacdc36874f5f319bbaa4bd257e18ff55ae59b7

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp39-cp39-win32.whl.

File metadata

  • Download URL: chiabip158-0.17-cp39-cp39-win32.whl
  • Upload date:
  • Size: 76.5 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 f300105e609c0d2793a2466ebee3b02d124c2a8c38cecfda900b557c78cac85d
MD5 981ba42afa5ddf6ab70d8317695ea8d8
BLAKE2b-256 94b067b61d6c7c6be5f2637080d138531218248c9c2fd5e7b15b13841d5f278a

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp39-cp39-manylinux2014_aarch64.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.5

File hashes

Hashes for chiabip158-0.17-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9db85c9bd41477e992c17583c78336319fe08935b3d2191322161dbe1dcbeeb3
MD5 9099984d473dfba56e1ef76218340456
BLAKE2b-256 fa5781958daa0fb5db8175830f2ac02aec3f8b12d13101361db8577ee7d325e5

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp39-cp39-manylinux2010_x86_64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8e8737b2a075f89185d910b4432b99b91278e07fb995308def803dde566619cb
MD5 c7299b10b97b69728caa1301273553df
BLAKE2b-256 6c35e2941abbcbd23a0358af27424636a8172a1ee87dc28b699d4c7d47ebe89a

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp39-cp39-manylinux2010_i686.whl.

File metadata

  • Download URL: chiabip158-0.17-cp39-cp39-manylinux2010_i686.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp39-cp39-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 f6dfe0f1f54a163c44f1709c24cc35a22c77f2073883b674726600f6cde1a85b
MD5 a4fff76d684cb06e6a2ddc9165c54d85
BLAKE2b-256 edf56a950cdb0b1bf2ba8393b9aece2f2c5fc15f3d5a2a8db5ea71140b6d77ef

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 141.2 kB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 0648c46e73ef6b8ae0b7bd98b20682d96e5f0737b73621c28886b1f3815df815
MD5 86517b342f804c7c6edea734d2fac716
BLAKE2b-256 685763981031e0ac5513144c3bdaa6d24310f5fd836adab60d3093b6fd822056

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 86.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d739b09ec609cf38a4909316841fa6ad0548a59bbd96ff7a1127a65f3315b50c
MD5 dc56508110cb7ba4cfa9db507421787e
BLAKE2b-256 d3ba080de6b68a025a9acff8ba29bf784b9c231177ae38047518dc6c12aa45e1

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp38-cp38-win32.whl.

File metadata

  • Download URL: chiabip158-0.17-cp38-cp38-win32.whl
  • Upload date:
  • Size: 76.8 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 8a3a65af0eba253a2daaf76c62c7ab150f6998517cbf2179141a90b69fbec47f
MD5 a32d4dac617933f97d09450fb39548e5
BLAKE2b-256 5d9e4800f1f89bc8a136d61753c74e3c920d483698bdf16f4505f016fadc5c62

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp38-cp38-manylinux2014_aarch64.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.5

File hashes

Hashes for chiabip158-0.17-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ad34be5255cbb56d80201ddd1ba09a1525481cc3c011f92237c2c6512597106b
MD5 f1d632f0103877d44a646742a88dd50f
BLAKE2b-256 024d1745f6fdf0b482d482c2e53156a458e803f04de25110fd1360cabab8dfd0

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 50883c2ee2309b7a5fe5b9d5e98dee2d140a5d7c472da0158ecb50568bfb240d
MD5 fda07cd22f02f69888db369bae5f1ceb
BLAKE2b-256 bc59e177367e4477c8c5816cf3dc99c030d964d5672387bc252a5aef4c28a233

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp38-cp38-manylinux2010_i686.whl.

File metadata

  • Download URL: chiabip158-0.17-cp38-cp38-manylinux2010_i686.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp38-cp38-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 3f0f96f2f3784237d0fe4c33a7edb44a3c5b90b9d52000e537a688e2e99a4211
MD5 e5d409be227e3c243d05cc528b19a692
BLAKE2b-256 4ef62c01a2cf4b1b9f9622ab8972256d16375f3eb557a9a38c6fd8cfc445a467

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 141.9 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e3cab9905ac4a80eaee8d598c5c3dcb7fdb104b27b1ff03290d426456780650b
MD5 074fbeef7df2bc270e4e5aa1fe66590c
BLAKE2b-256 054f15aea5d7942654b7383551945dcd03beb7db2b925de85ddccff7966b28a3

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 87.1 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 d0c215c4ad4d13386bdfa293ab3136ae95d2b8c655b66d93582c24b87851df63
MD5 b56acd78061447d5d3446425f776939f
BLAKE2b-256 40c90c337cc5832e6fa34281433721c806c3da5d82f28652f68b26706d59975e

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp37-cp37m-win32.whl.

File metadata

  • Download URL: chiabip158-0.17-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 77.4 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 b5151d775b1fce6475120140d209007b9f187eab4d511e7415427b0e7c692319
MD5 ca9151a3146177bee1dd9acf6e759573
BLAKE2b-256 625482a57a777961b2876d1f162243b39e3b917deb51c484bde06366db9a0177

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp37-cp37m-manylinux2014_aarch64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp37-cp37m-manylinux2014_aarch64.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.5

File hashes

Hashes for chiabip158-0.17-cp37-cp37m-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 200e4d07c4f6d6ddab4541a6219a2054f6cbffe298329a17b787139b6a705de9
MD5 35eca1d54016ced287237f9bc35d6777
BLAKE2b-256 555ef279e6fbc4ba069e54526aa2c99c7e8f39e36a5e0329888ef33c335b0318

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 6ba59647864dae3086c581f8b76a1fa82110734858eb5cb54d34100a3d1917d2
MD5 0112b4aa316bf891af2d75ef78a26e87
BLAKE2b-256 b2ef5438f8d0de7e9b5114d60673e12287bde953dd5e7e378f313b623862788d

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp37-cp37m-manylinux2010_i686.whl.

File metadata

  • Download URL: chiabip158-0.17-cp37-cp37m-manylinux2010_i686.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp37-cp37m-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 5ecf45fb0d5a61df6581051d5f573b19e6db98dfdc43c5d0cf48451ce8bd580b
MD5 b0c0c98003ea01c4766e5369d68f8eef
BLAKE2b-256 7ef3d36d83f4e24d7fe168eebc3161131f8afaed02a51bae95f1e57f737f561f

See more details on using hashes here.

File details

Details for the file chiabip158-0.17-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: chiabip158-0.17-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 141.2 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.9

File hashes

Hashes for chiabip158-0.17-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e096b777164d5aab1e10b76107fc382ec5280ce0babb642185d2ffea6bb001bb
MD5 47ed69357e62c3e817e9f8c44ab434c0
BLAKE2b-256 2cb7da094931d1f71b382f7b889ff64641b3bcb7d55a8f7d1089ad1d757524db

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page