Skip to main content

Chik BIP158 (wraps C++)

Project description

Chik 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 chikbip158 e.g.

Contributing and workflow

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

The master branch is usually the currently released latest version on PyPI. Note that at times chikbip158 will be ahead of the release version that chik-blockchain requires in it's master/release version in preparation for a new chik-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 chikbip158 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

chikbip158-1.5.0.tar.gz (125.8 kB view details)

Uploaded Source

Built Distributions

chikbip158-1.5.0-cp312-cp312-win_amd64.whl (80.0 kB view details)

Uploaded CPython 3.12 Windows x86-64

chikbip158-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

chikbip158-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

chikbip158-1.5.0-cp312-cp312-macosx_11_0_x86_64.whl (156.6 kB view details)

Uploaded CPython 3.12 macOS 11.0+ x86-64

chikbip158-1.5.0-cp311-cp311-win_amd64.whl (79.9 kB view details)

Uploaded CPython 3.11 Windows x86-64

chikbip158-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

chikbip158-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

chikbip158-1.5.0-cp311-cp311-macosx_11_0_x86_64.whl (159.0 kB view details)

Uploaded CPython 3.11 macOS 11.0+ x86-64

chikbip158-1.5.0-cp310-cp310-win_amd64.whl (78.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

chikbip158-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

chikbip158-1.5.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64

chikbip158-1.5.0-cp310-cp310-macosx_11_0_x86_64.whl (157.6 kB view details)

Uploaded CPython 3.10 macOS 11.0+ x86-64

chikbip158-1.5.0-cp39-cp39-win_amd64.whl (79.1 kB view details)

Uploaded CPython 3.9 Windows x86-64

chikbip158-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

chikbip158-1.5.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

chikbip158-1.5.0-cp39-cp39-macosx_11_0_x86_64.whl (157.9 kB view details)

Uploaded CPython 3.9 macOS 11.0+ x86-64

chikbip158-1.5.0-cp38-cp38-win_amd64.whl (78.9 kB view details)

Uploaded CPython 3.8 Windows x86-64

chikbip158-1.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

chikbip158-1.5.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

chikbip158-1.5.0-cp38-cp38-macosx_11_0_x86_64.whl (157.5 kB view details)

Uploaded CPython 3.8 macOS 11.0+ x86-64

File details

Details for the file chikbip158-1.5.0.tar.gz.

File metadata

  • Download URL: chikbip158-1.5.0.tar.gz
  • Upload date:
  • Size: 125.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for chikbip158-1.5.0.tar.gz
Algorithm Hash digest
SHA256 174396473e4d4a3d700585254b8b529212939dc982898626a8f0662b74fc4e21
MD5 d8a363db67d4c1613a6e6586e5e8cdcd
BLAKE2b-256 686c825f4927ce16a1455d85cdd79433199e8eb758fc0be44ed938adc6046c3e

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1e67f2a6b24ff47adac183ef76e4d7311cbaa1af5a22674e28bf89e5bdae07df
MD5 9fa282d952ac2368e5a280f8d64ac64f
BLAKE2b-256 d7f829edf4d03ea06f2aa98f4a039b84ca2de278e17ec586e20f8eb7bdda1314

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3a37428a20fc5aaa51d3048342986b798f4d31f05c56dc3056115c14edb9bf40
MD5 73cd0068d692306550e7b8767a0ccf30
BLAKE2b-256 1e8f41c09db9981e33dc3bafb245acff2b986c10b2e3d1c125ece5c1528dbae4

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5f70eff58dcbe6bbdc227ec787c26dc0214c339df15e817eae978c476cd0eb4f
MD5 79dfe695472ae8bf870a79c17935d98c
BLAKE2b-256 ae92de3a8fa73ebd291f33c2914deae88b5e05d68589575349274f84e8299f77

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 353c8ff4200fa49a7220b683b48723c205cf323056620e5bf01d6b05a58a63ad
MD5 a088d10ec8efde5fe3f05ad55a2575df
BLAKE2b-256 1e941bd64e227eda7b0e26b46b93ffeb01c949174b58d2713f0c8260e2456b67

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3b22a9cda98d49116baaeebe65bbe8fa7c94837457817a897446d30e92a668e6
MD5 9d7681ec438ac5843dc81c5b8d053227
BLAKE2b-256 b671115dc1aca78d997dec49c91d43eebfab97156057f45ca27cbfae5c0e670e

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3a8ef670125ed02c76587346e364b596ceac73e1c6358ff7c2886caf805f5425
MD5 0b92e822b19e6046347a2cb8e27e76f4
BLAKE2b-256 e78acdd85e5416d42bf285bb906988336b7c56a59918dd37d99f07c1560c12f9

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6423186f9acaf8e58b04a9183719be1427d74df818964ba62f02e1481eb60286
MD5 2fde8b84fd9b7d8f2ead19a52cd2906f
BLAKE2b-256 e9b17b75703de0c05ee9472593aaed703244b189752aca7f147cd56f35718fad

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 fafdc7896a490e32676b566bd7ab98be3aec43e4d569429005f1286ba8869062
MD5 ccecefdc8a9c44874231772fb8b420ec
BLAKE2b-256 63d4122591712c31544decc93ce8743004bdcb72e0af2dc693810bf7e51576e7

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1b2dee897f4b4cabd2489cb97d29e536775eb547b1cb180152cbeefebd7588f7
MD5 decd2f827fc92ed1eaa3f635144780fe
BLAKE2b-256 36b37875c9ffbe72e0d6f0bd9f909052ae67efa57c67fbb5f2fe8ca5032bdad2

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1a6e6c356d79f58558a2eadd9c52f7d57c8f2124869b8fa5ccbb66b08cf61328
MD5 8c61d5307094cb3d7ff8bf86197b9b86
BLAKE2b-256 396332a039c5ac6fce5bbccada104c7d7bd0b3990259d0a035a43c5ac3bbbca1

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 10ed3dd03e04a7cc5a1de61e97072b8817bc7e40923543c1c90dab5a04a4c875
MD5 280e5af5391189daa96236365e0d8fa8
BLAKE2b-256 4e9792b4f152c7ce5eba34c10a1fe964078c6cd2510a6e253d52c7fb6805bf7a

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 bd19066dcc7e5947c061432cc74b844e0331a8c4ca8a0a160b7c4dec038ec8ce
MD5 f5d027445769dd2381b327692bc18935
BLAKE2b-256 18a7dc62d34f2db7a38db1d8efcd606a5ee4852c0fb6fc9d1aee171827e39b2a

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: chikbip158-1.5.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 79.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for chikbip158-1.5.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 96858f7e1404a323b48f40241e9f7268fb1269cda28312a745e0a135defc9c7b
MD5 8e90704e66e91a0d206de066f738854c
BLAKE2b-256 b195395d96a025933388fcfd863004b977a254b8f586ee35a4dff2257ebf32f0

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 140648098509003d9a5ec5ca8d821c51f0d5d137895b313de97435548c95a55b
MD5 fc4877b6ea53c5d068a17d029a6987dd
BLAKE2b-256 10076ee1ebbea4af3bc5e77bd988a1738f611e521ef9e84e077c54d571d69ab3

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 36821192737b6b258918275809d0cb324a124f99c387d932dea7bde8a2bc8e4d
MD5 b56de52c614e5509471afd4869173d22
BLAKE2b-256 374ccd4323292e1c1b76ce8c1ec858e6c4df3cc172e843e65fc3e92fcfa482b0

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp39-cp39-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 7042a28acd368766833d8c61427720e6b6a4546c853f829ab88e45bd2d1b6f34
MD5 8952c5f2d2bac4608fd3c3922cdbbdd7
BLAKE2b-256 1581102ced3acfc9538da0ec1604456e979077df6abb55ef78cec0f04f7d1b6e

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: chikbip158-1.5.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 78.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for chikbip158-1.5.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 a12097c60698d091165eb2ea2fc0c87c20d66da0cbd3c8c6d2688909121877f8
MD5 38e6727d85a2ce190aa283113b5dc186
BLAKE2b-256 3e36e9b46c8156a3893cadd140a29b5ad8596023a2306b0c3496930951250a9b

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5307189adb65260855b988f1636a34735750c8bfb18166c3088c96819a080fbe
MD5 5f1daae184341992466639122ae27619
BLAKE2b-256 86f38b97b61419b444f902766119c07ded9693874b3648a57e2766d41e3c9ae8

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 93d3e59508297d8662c9c4474c38948456e53ec34395ba295ff9f65f1f865e2f
MD5 3c6793d6751169f3d3997dddfa6e75db
BLAKE2b-256 69adc89fd7678eb98a0cb1357fd334111e6efd3cb8a745a6e525a75adf958847

See more details on using hashes here.

File details

Details for the file chikbip158-1.5.0-cp38-cp38-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for chikbip158-1.5.0-cp38-cp38-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 c055aae2d60b9f467c3b834af80faf91d65a966771f08241ecbf2f1c38ed6dca
MD5 95fca71ec23298bb485226163bc47353
BLAKE2b-256 cbd2739b77e7399ebe0c0eeb13a9c59142ba88ef30cf31c6f171fa70a88bcfb4

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