A multithreaded python wrapper for rust bindings of minimap2.
Project description
Mappy-rs
A multi-threaded minimap2 aligner for python. Built for readfish compatibility.
Heavily leaning on and inspired by Joeseph Guhlin's minimap2-rs repository. They also have a more heavily featured python client, which also provides multithreaded alignment. This client provides a more simple streaming interface for use in pipelines.
pip install mappy-rs
Developers
Start with some Docs on Py03 - https://pyo3.rs/latest/
If you wish to contribute, have a look at CONTRIBUTING.md
In order to build an importable module:
python -m venv .env
source -m .env/bin/activate
pip install ".[tests]"
To run the tests:
# Python
pytest
# Rust
cargo t --no-default-features
Then in your python shell of choice:
import mappy_rs
aligner = mappy_rs.Aligner("resources/test/test.mmi")
The current iteration of mappy-rs
serves as a drop in for mappy
, implementing all the same methods. However if this is the use case, you may well be better off using mappy
, as the extra level of Rust between your python and C++ may well add slightly slower performance.
Multithreading
In order to use multi threading, one must first enable it.
import mappy_rs
aligner = mappy_rs.Aligner("resources/test/test.mmi")
# Use 10 threads
aligner.enable_threading(10)
Enabling threading makes the map_batch
method available.
This method requires a list or iterable of dictionaries, which can have any number of keys and depth, but must contain the key seq
with a string value in the top-level dictionary.
Currently, the maximum batch size to be iterated in one call is 20000.
For example:
import mappy_rs
aligner = mappy_rs.Aligner("resources/test/test.mmi")
aligner.enable_threading(10)
seqs = [
{"seq": "ACGTAGCATCGAGACTACGA", "Other_random_key": "banter"},
{"seq": "ACGTAGCATCGAGACTACGA", "Other_random_key": "banter"},
]
for (mapping, data) in aligner.map_batch(seqs):
print(list(mapping))
print(data)
Benchmarks
A simple benchmark against classic mappy, and mappy_rs with incrementing numbers of threads, run on a 2018 Macbook.
Device
Property | Value |
---|---|
Model Name | MacBook Pro |
Model Identifier | MacBookPro15,2 |
Processor Name | Quad-Core Intel Core i7 |
Processor Speed | 2.7 GHz |
Number of Processors | 1 |
Total Number of Cores | 4 |
L2 Cache (per Core) | 256 KB |
L3 Cache | 8 MB |
Hyper-Threading Technology | Enabled |
Memory | 16 GB |
Results
Name (time in s) | Min | Max | Mean | StdDev | Median | IQR | Outliers | OPS | Rounds | Iterations |
---|---|---|---|---|---|---|---|---|---|---|
test_benchmark_multi[5] | 26.8900 (1.0) | 30.0969 (1.0) | 28.0622 (1.0) | 1.2614 (1.0) | 27.9017 (1.0) | 1.6081 (1.35) | 1;0 | 0.0356 (1.0) | 5 | 1 |
test_benchmark_multi[4] | 28.5573 (1.06) | 43.4543 (1.44) | 32.3371 (1.15) | 6.2815 (4.98) | 29.7480 (1.07) | 5.2148 (4.37) | 1;1 | 0.0309 (0.87) | 5 | 1 |
test_benchmark_multi[3] | 31.6497 (1.18) | 36.9986 (1.23) | 33.5103 (1.19) | 2.0542 (1.63) | 32.8415 (1.18) | 1.9576 (1.64) | 1;0 | 0.0298 (0.84) | 5 | 1 |
test_benchmark_multi[2] | 43.2616 (1.61) | 86.3859 (2.87) | 53.8572 (1.92) | 18.3339 (14.53) | 45.9328 (1.65) | 14.6382 (12.26) | 1;1 | 0.0186 (0.52) | 5 | 1 |
test_classic_mappy[mappy_al] | 78.5566 (2.92) | 82.8876 (2.75) | 79.6177 (2.84) | 1.8343 (1.45) | 78.8350 (2.83) | 1.1938 (1.0) | 1;1 | 0.0126 (0.35) | 5 | 1 |
test_classic_mappy[mappy_al_rs] | 83.7239 (3.11) | 87.9675 (2.92) | 85.4424 (3.04) | 1.6806 (1.33) | 85.6335 (3.07) | 2.3310 (1.95) | 2;0 | 0.0117 (0.33) | 5 | 1 |
test_benchmark_multi[1] | 84.8418 (3.16) | 94.0907 (3.13) | 86.7404 (3.09) | 4.1096 (3.26) | 84.8749 (3.04) | 2.4310 (2.04) | 1;1 | 0.0115 (0.32) | 5 | 1 |
Changelog
0.0.8
- Updated
map_batch
- now has a max attempts parameter, which defaults to 6. If set toNone
, there is no limit to the number of attempts to add a fastq to the mapping batch.
0.0.7
- Added wheel builds for aarch64 linux and MacOS, and armv7 in the CI/yml.
0.0.6
- Lowered backoff time for
map_batch
to 50 milliseconds, with 6 attempts. Each attempt will double the previous back off time. - Improved error handling for
map_batch
, now will raise aRuntimeError
if the backoff time is exceeded. Also prevented loggingInternal error returning data, the receiver iterator has finished. sending on a disconnected channel 2870
to stderr excessively. - Added tests for mapping more than 50000 reads, using
back_off=True
andback_off=False
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 mappy_rs-0.0.8a1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed3214470efa7c5c4b29b434c1ba90cf1ea5c3a6748aea543a821aa090a4f022 |
|
MD5 | 4a290f89117e63488b0c12dd2f1fa209 |
|
BLAKE2b-256 | 30878e994054f3fa54b4b0199139f5a2e4d1d9271d59cbc0d87c2a7c607632b7 |
Hashes for mappy_rs-0.0.8a1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d955d9833b112b76adf9b2e9a31c825dd3932fe0c7db93cf11815efcf470fb29 |
|
MD5 | 0d46a27b08308e9cf6401217e2709d2e |
|
BLAKE2b-256 | 596dbb322987199804d781c084fec66c12c1228e960c5e287ea017aa9d379749 |
Hashes for mappy_rs-0.0.8a1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e1bdc0bc338beb3e7f651f6695a34f4652ef08567d27830ad827b6551a09f6bf |
|
MD5 | f91a6b10e64537aaab88c47182a83282 |
|
BLAKE2b-256 | f7a67e404b6684501306047d4e2953b96613b7fe4dfcca2f2c6afca33653bad8 |
Hashes for mappy_rs-0.0.8a1-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfb6ce15ccdced6aff887fab9f8e5d924b50742c538e6bdb07425746f7eef754 |
|
MD5 | 7e5bac938494f23345c1b54edb5e3cc9 |
|
BLAKE2b-256 | fb1628a77aec1eb4c44e3f2669ca6e3b2cfd3d4465e9d037f63655a142b76c92 |
Hashes for mappy_rs-0.0.8a1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87e2e5c1c93911d3f8931ec08e00e9c228896dacad128017708b0abcfb95d30d |
|
MD5 | 2433bd07533a82c67a958eb005d798af |
|
BLAKE2b-256 | 5caaccbf6155d1c130a6c8927d4e5bb0ac9d5b7b3a5cc114dabcc14a61ca8e1c |
Hashes for mappy_rs-0.0.8a1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21e4d3659df1ac46d82b42f61cef3dfbb8cb7345a3c26b7a2d35cf4755a8c812 |
|
MD5 | fd6250984a239f72aa181585baab52cb |
|
BLAKE2b-256 | a52640a590443a57cae1df6a68508579b8000a725bbc668be18edfdbf7d0153f |
Hashes for mappy_rs-0.0.8a1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa11c645ddb9becdefbbc6f37fa8b452d378045ea011c5ccc8dd0c317d8e701d |
|
MD5 | 18bd665d4f0699d4209a3e6f16f6d60c |
|
BLAKE2b-256 | 888911f4379393805816616445849c29d9cfba8cf1795413a212624fd877991d |
Hashes for mappy_rs-0.0.8a1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95e0ff95f2a9e41ed1b6178a4930ca122982bc447fa0dc7a56586f836be8af64 |
|
MD5 | 9d4951014dfc4f32008268cb425055cd |
|
BLAKE2b-256 | c0a167fb656990c7c9cc4e3596e43717dd50e56db22b4581edda678e8d8ae81c |
Hashes for mappy_rs-0.0.8a1-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9e715f431fa6a825f59b5e3da3fa0243f58963c00c60d464d5261cba1bc18b6 |
|
MD5 | 3e3e8e4a8afe0bd5bbfcd937b2e9007d |
|
BLAKE2b-256 | ae2419445bb2c706437020de58f5ebc131e4de972ad45bbad36d5dbc0408dfe1 |
Hashes for mappy_rs-0.0.8a1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f05d78fa6a1432fb1c3201922b7a367286a1e963f7fc272c81eacfcebb77edb5 |
|
MD5 | 3fe0e7fcbd7455d628437290fac04b5a |
|
BLAKE2b-256 | 2b84b66e63c4abfde8be300f079d29c11d259b1e948cb1759eb58020c81b7008 |
Hashes for mappy_rs-0.0.8a1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f13af8caf4c5c2bb9be227bbbfe8ae486f2c73f86d54794a2e9abdfcc919149 |
|
MD5 | cc51e785df01ddab53db6a5583593877 |
|
BLAKE2b-256 | 69a742246a8f7f7895c739c3f730c3a99bf40175b25cddcf17fa6dc8e84234ac |
Hashes for mappy_rs-0.0.8a1-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8c028dc559310e0f499459791da79d95c32f52c280dbd4e2c7f9cf2c69ffd0a |
|
MD5 | 4d91128e354819d4405d5094b44b5e8a |
|
BLAKE2b-256 | cff7604f675d799b944a1858c6d14b5f32059b8ad509750663f4adb12330b7ac |
Hashes for mappy_rs-0.0.8a1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65a65b0734619969c899f282e044f7f5f926765ab4532989c0fea1b100ec64db |
|
MD5 | 3454b0614078a32ddb5c610ce759141d |
|
BLAKE2b-256 | fd2ef3db4211559b4a9a9a6eb54056b6fd1b5d06c6d0eacb5fd4e3115511abcd |
Hashes for mappy_rs-0.0.8a1-pp38-pypy38_pp73-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1eaa65d399d9eb0d8250196dbba973db7e8127ddc6357f38585465c7249021f4 |
|
MD5 | c0e5daa7c1e8a1a9a451087d69565b33 |
|
BLAKE2b-256 | 120e488b6283488374f4bc8e342eb4d90c870cd7b24ec8f5f551178cf0ea4b03 |
Hashes for mappy_rs-0.0.8a1-pp38-pypy38_pp73-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bb25c9086cb0fc83f4d6b6d5730e2f54f6534c9cbbb4adae87723b1807aff01 |
|
MD5 | 73f49ef5879a6181d774e915946bffde |
|
BLAKE2b-256 | 34de6108aebf44fc4ceec431b2b5146adcde01a50590e1ac131d17ef7fa81e92 |
Hashes for mappy_rs-0.0.8a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd69c5d9af314a89416feb15f72f7dc77186e8a5f7bee58955007126b1c929ff |
|
MD5 | e196103f69df04dccd452ce74369ce88 |
|
BLAKE2b-256 | ae41756a67fa7ad058a6050676e9f9e6fff6a53018325efe2ab099fac31f31c5 |
Hashes for mappy_rs-0.0.8a1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b4b52fd2ad3595e03b4093a1a45c1549f9fb6efe328488d4e45087c5c018573 |
|
MD5 | ce81d91614dee773ca9595a2b466e8c6 |
|
BLAKE2b-256 | 7d872a882602e041be691ede8744966556d1929f1081f06c8545a4919899cbdf |
Hashes for mappy_rs-0.0.8a1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb7832dd3988b9ad3514520d8a65b5f6bfecab3988df17c377a0d1a2a58d3ff4 |
|
MD5 | 837d894c83ea09c604d3569f6b3abcb9 |
|
BLAKE2b-256 | b960a33f8a5310cbb2d85dfa713fb507c594773fba991243d038b9e8c44bff97 |
Hashes for mappy_rs-0.0.8a1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f49d549b14cf1599c3fdd951631250595c9105d32b1c866739ab587a728303ff |
|
MD5 | 8c891a839d76cf4abd66498326ee1632 |
|
BLAKE2b-256 | 6dae99cdb73d01367d0417449829f4c54ce67ade9de524ba53dfe8c022c7c526 |
Hashes for mappy_rs-0.0.8a1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13ad20f5be693500642450152db33b310ddea75de49c47ef3d9330e3d02d0857 |
|
MD5 | c8d7ab45fa08f3a824f2c9557f0e0e58 |
|
BLAKE2b-256 | 47a552a57b1c172fbeb5300f38588f7d1ae3a0aba8b68d9747d04ed3db68fe68 |
Hashes for mappy_rs-0.0.8a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b12b9026eb8401ac11ff30a63a4e00b4455d091e73e18a032e429ddfdaf3a766 |
|
MD5 | 9c25d87dab7cdf3dec40085fb1a23f74 |
|
BLAKE2b-256 | dfda0cfd592a834dee0dde80990542e3bbb3eb940f25fa8b717060ca2034a414 |
Hashes for mappy_rs-0.0.8a1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bcaa097f257212add67aa1b65e0a7323c76b8a01fd04635d8b9c234cf8d1978 |
|
MD5 | 55b44c3c4751f0707412b54367a8f1b0 |
|
BLAKE2b-256 | fccc14221cd53696dc779943206fe51bf0a0e31e3cbe0f8c7276c8fb2666bb07 |
Hashes for mappy_rs-0.0.8a1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2502e229ecaca14ee73bc990a305af0a05b65645a326df777aa5305443083a96 |
|
MD5 | 9a345572fbbdbd502635f0b64a7df3f1 |
|
BLAKE2b-256 | dc716ecf53fe2001c23e17dbed7fab4e5fec9dde5be8164d8bbc0a7dc856340a |
Hashes for mappy_rs-0.0.8a1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41d2a27e41da30b76d95643a347a74a4d452182d1e74f76bb9ae45ba05c3108c |
|
MD5 | 25679fbaaa0cbb2898b4691b45fe66a3 |
|
BLAKE2b-256 | 167c6a4dc8f0fa0ac48e7f5bbd300d453c3f4303cfabef9a6625de837e65f363 |
Hashes for mappy_rs-0.0.8a1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a7b23127048d3e45d198ff426be5f23e97dcfcbad165850294731e6e9d4eeaf8 |
|
MD5 | 5f79a236a81472f3aa74a780d3e411bb |
|
BLAKE2b-256 | 1696b4e425c8ccb3a2d6e73e8d35698ea7eb81aab67bb2e62a610b6f651bcdba |
Hashes for mappy_rs-0.0.8a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f43aeaddbbe72d14c68966c82ecb9ff1eb0bd35dcdeac44500830ba3765dfb6 |
|
MD5 | 8ff51ae8a8a121e010b222ebc8e3dd57 |
|
BLAKE2b-256 | 49ab821b0ecd55b74f7652a067f07f705ae4993a998fedf309409d4bba4bceee |
Hashes for mappy_rs-0.0.8a1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a029ed8db7688e8775b72dd10be709563677ac0c121bf65b3aac6eda86a9e3b |
|
MD5 | f7cf66d738d4c3c35aeb58fe62bf38f5 |
|
BLAKE2b-256 | 17275923212cb8161ed969ad3138e68d7f71ffa8ac40a5203d99e42d3ef2c291 |
Hashes for mappy_rs-0.0.8a1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6661bdca6f988d2eb5a46589b8f5debd6b2ccb9f63d09d471033f057db0805d1 |
|
MD5 | 7981edd179449462bf5362290707026a |
|
BLAKE2b-256 | f1658d625f3f09dcca2ef9264fa008ad7bc6ddc2645502d8a3ca36f23dc2d316 |
Hashes for mappy_rs-0.0.8a1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85092b3fb2d3690662110121289efc9768f70e86b7cb82c5802309533fcdd925 |
|
MD5 | 58932182f46c063fd914f5762c3fd9ad |
|
BLAKE2b-256 | acde6a0916507dd4e0a24f760d442d0fe3ce93eec24a6ee6ab74a044767187fe |
Hashes for mappy_rs-0.0.8a1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1bb0e799e1d5ad11e29f0f8626f48380d8c863bf6600fb3ed220d518e2332d09 |
|
MD5 | 6cd169c352cf47917d95131a8010ef82 |
|
BLAKE2b-256 | 7fb64ecb3e2797bcb3a3eee8304409dd69299799f76d616f513d31dfd253c50c |
Hashes for mappy_rs-0.0.8a1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7efd29b465c30f241bf36b44ca7ca8a897a5f35f011d4233f6c42a8e7ce2c6b7 |
|
MD5 | 7e8dd5e7735cf38853f04860e9f0bf91 |
|
BLAKE2b-256 | ebc4c42cc5e848ef9c3df2968973b01fd232c4c7d8e7b3f1dc98b6394dc56b9d |
Hashes for mappy_rs-0.0.8a1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | befe3fce77490ea3184274fba466a3b086195fa0f11aa29fb2b82072d1d7b1e2 |
|
MD5 | 8961a5ff1be835e7412f74c5c9ac8e32 |
|
BLAKE2b-256 | fb299a8bc27b69e4844d3da4f73321e7beaf85acc36c8e90182ba4469e4069e7 |
Hashes for mappy_rs-0.0.8a1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 493cd26f341ab794fcf356d4a65ebefd0acadb98e394d9107190381e86b9c448 |
|
MD5 | 08ed405e87ca2a9b391502045d531a76 |
|
BLAKE2b-256 | 0313198ddea8be82ae830f2c9acebf2cbd706a2612ff8369115d0dea4804b807 |
Hashes for mappy_rs-0.0.8a1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 64e7aad6a9c9dd31125e519db8ecd399e53d9831efcbe709f324c6de5f2c9346 |
|
MD5 | 90ba91ec4225b9dfbcbafc69be767c81 |
|
BLAKE2b-256 | 76649509df3279a1225f9c5285752ef1923a7fb7d9ef422f4e2809ddf221e63d |
Hashes for mappy_rs-0.0.8a1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4248e515d21169c7951f3cf5e2ec3fc61a89bbc3a18a11409351388b77432026 |
|
MD5 | 1c37a2aff550f40133277d5b666fab9c |
|
BLAKE2b-256 | 13201a5be98fc725f88a6619a9dda39491ff1a32b01b9bc6048dd8e8153dedd6 |
Hashes for mappy_rs-0.0.8a1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 211e0961b164c595d9d26965d265d96b97cfa8ac6626e0ffafd4aa0455973943 |
|
MD5 | a4256349cff9777616d5f572227ae49a |
|
BLAKE2b-256 | 6f3084d7c8ce646add4fcf1a3dd0fed9597059a7bf020ca6007280f8ee6dc7fd |
Hashes for mappy_rs-0.0.8a1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0644e937860642c40a4a1a89f06f6413ace75256830456983bbb4f9a4f97612f |
|
MD5 | 9b41be078243cbb4652af8e4f7664660 |
|
BLAKE2b-256 | bb384fb1d1f4ff7f5da5677e3a1aab7086fb2aa70e6a3d9e6e0f803a2c884128 |
Hashes for mappy_rs-0.0.8a1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 891151f9329fb3894db7fb03a0677c1c19b1273cd7fe0094ddac70aaec192530 |
|
MD5 | ecab055d4f1d0c6aa435fa37d695c3e5 |
|
BLAKE2b-256 | 0b10571c896c69ddd1038f74a7e8136271df6dec205997889b563b7c917b8e7a |
Hashes for mappy_rs-0.0.8a1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ff469d441dbb47b5145587d5d6910796facb48a2e098a0e835ec78af4c61b2e |
|
MD5 | 6b9c587261d1875df76ce31d9e93e669 |
|
BLAKE2b-256 | 74fb040f1f4a05d50678156de7b1e714e205e1379878698f9fd3f67e2176e54c |
Hashes for mappy_rs-0.0.8a1-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d40c3ca39f83c20a842e112753bb6c5aa923514ec31b5cb5531d01a77876b47 |
|
MD5 | ccd87692e84a0f08b586545b15b07084 |
|
BLAKE2b-256 | db6e239901b26bd72252aa8404d0aed1ee132073d0a3aa063e87b943eee4c889 |