OpenDAL Python Binding
Project description
OpenDAL Python Binding
Documentation: main
This crate intends to build a native python binding.
Installation
pip install opendal
Usage
fs service example:
import opendal
op = opendal.Operator("fs", root="/tmp")
op.write("test.txt", b"Hello World")
print(op.read("test.txt"))
print(op.stat("test.txt").content_length)
Or using the async API:
import asyncio
async def main():
op = opendal.AsyncOperator("fs", root="/tmp")
await op.write("test.txt", b"Hello World")
print(await op.read("test.txt"))
asyncio.run(main())
s3 service example:
import opendal
op = opendal.Operator("s3", root="/tmp", bucket="your_bucket_name", region="your_region")
op.write("test.txt", b"Hello World")
print(op.read("test.txt"))
print(op.stat("test.txt").content_length)
Or using the async API:
import asyncio
async def main():
op = opendal.AsyncOperator("s3", root="/tmp", bucket="your_bucket_name", region="your_region")
await op.write("test.txt", b"Hello World")
print(await op.read("test.txt"))
asyncio.run(main())
Development
Setup virtualenv:
python -m venv venv
Activate venv:
source venv/bin/activate
Install maturin
:
pip install maturin[patchelf]
Build bindings:
maturin develop
Run some tests:
maturin develop -E test
# To run `test_write.py` and use `fs` operator
OPENDAL_TEST=fs OPENDAL_FS_ROOT=/tmp pytest -vk test_write
Build API docs:
maturin develop -E docs
pdoc opendal
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
opendal-0.43.0.tar.gz
(593.6 kB
view hashes)
Built Distributions
Close
Hashes for opendal-0.43.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d82f2e29b526cd4672d33526bbedb1dee5b1b346641b79f0f2d7cade7e13f14 |
|
MD5 | 8a7eeac46caf154d8479308ea2069072 |
|
BLAKE2b-256 | bdb4042aa61b4fe136296473850d6ff16efc65ff5dffb24569f2ce050ce74d0a |
Close
Hashes for opendal-0.43.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f79cae8e42bc8c550feedb58cfc9287d208b983076d168d5215fb0df3195969f |
|
MD5 | 9b82c36c9946f2677bafdd562ccb10c1 |
|
BLAKE2b-256 | c7ad40a63d2914d1cea32b4739bacc84386727f077d0b1c0b6bcccd03f22a573 |
Close
Hashes for opendal-0.43.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14f4ca67920fc53f3e8b019eabbb75188dd6f66faabcaa025301f0b0d164122e |
|
MD5 | 16a216299d835b47110fd585745ff731 |
|
BLAKE2b-256 | 016c768d558e3a3b7bdd20bf1d199eed8bf49968b42d2185384f103fa779d8e5 |
Close
Hashes for opendal-0.43.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04b7d975eaf53d3f767911acb314ff59db1bfacf4a0044ad6610c63f3323f88b |
|
MD5 | f4229de6b38f2653a47036a75935cb50 |
|
BLAKE2b-256 | f84c2f00e2f640d23bbc7b6dc40b704d64674b4845b2644d0f86916a5d6dbc96 |
Close
Hashes for opendal-0.43.0-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d6a1c426d69fb186d4dddf154ed50d16b8cfe1409fcf704f52a1202f643bef45 |
|
MD5 | 045a255ce2d71b98a1488709f2a68637 |
|
BLAKE2b-256 | a2908fa3f25fc8bbbf516479797d7a6bb66235a4c799f3ebc1b5465236d98092 |
Close
Hashes for opendal-0.43.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54ae737b04a0825bd9be170c659586a5d1be072d7c681f872c7df7c4f03e58a2 |
|
MD5 | 6fe1cc7d7ec6e41dae02b2720328fe8c |
|
BLAKE2b-256 | c25f792336a11ac32390139989e5bd42954a67c10a9eb7490f39e58e1cbeb736 |
Close
Hashes for opendal-0.43.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ff930edaecd2c947612ceda40ae325dbcf86cb4b271827096094e9ca0952c44 |
|
MD5 | 6aaba1136042fff96354b8a410d3bdad |
|
BLAKE2b-256 | 3bae707547be89b019f90bbae382feab0e13c098876595538a906b66c76f2577 |
Close
Hashes for opendal-0.43.0-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95cf3a4e02022f61407bfb0ae59d4be4b7de544a6d3727f274cddb2c1c7a43ae |
|
MD5 | 46bbce1d00c3baa90e7c2bb1113eaa5f |
|
BLAKE2b-256 | 4e94420d2ee7b9a6010138899fc0b8608b88ac7bd1e9434d6c2ee8603674ce23 |
Close
Hashes for opendal-0.43.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba028f1c2bfd25679c660db36f11ec20b585dbca9589cc2095dca3159145d62d |
|
MD5 | fa43f13d9068712d0efb86ca237328c1 |
|
BLAKE2b-256 | 457b905a4b69d12d0a52baed66fadc71a4835884d8c26b3abd84f419cda8a830 |
Close
Hashes for opendal-0.43.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b5cb709654a9f16721146360ad03ed4781d4deba3942bc66352e500d5cbc10b |
|
MD5 | b086e70babacc2ec59b4973a5cf1dad0 |
|
BLAKE2b-256 | 9f6776a826df06ca6a3c42e0ed3aef2d4f01323d271ebcd2ef93972a0813d4d9 |
Close
Hashes for opendal-0.43.0-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | df36a323a23ecc5d8a814f5982c775be111654df8637d97864f6fd6ec4596bd3 |
|
MD5 | 5f61e6ace571957bc571a1fb4ef9e3f1 |
|
BLAKE2b-256 | 7783f9fc6bbf3cd5de45f1b851bf656482b8f8a9907b1ce87d6cd6fb3960d351 |
Close
Hashes for opendal-0.43.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4af8c4a6764b51168d14d7389acaa4c7a7818c2e9f64348c36a4e203cc9b6e6c |
|
MD5 | 8f774d7e7ebd24a236af9ee05f4ba610 |
|
BLAKE2b-256 | a66a9be32b0c846c5efea9ae9c240bfc1176c46289f0ec750860ffd1a52cab25 |
Close
Hashes for opendal-0.43.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4dd1931ded986954ada26574946e2e64b7dc1da75ffb89dc846f85f18fa3e54 |
|
MD5 | 15802b733dc7eb164825a9b6972b0969 |
|
BLAKE2b-256 | dde2dc80c3696b102664da1211584e83f5297dca77729c421f460f49ff6f0c1f |
Close
Hashes for opendal-0.43.0-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bf613a340442ef3371b81949eeb165a1eabd9806cf791000ec1711d8c471ffa |
|
MD5 | a9d205058d4ac869ab3bf1bc44541663 |
|
BLAKE2b-256 | c73c2153c52ef6305d1af8f6820d5241d3520be1b308d7f84e896747c46135e7 |
Close
Hashes for opendal-0.43.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad35e1099f23a41fadfa83193cbf7b283c7369f03855b8eb0a88cf3aa052ae32 |
|
MD5 | e2d5c8451d832d6070267eae05c207f9 |
|
BLAKE2b-256 | 376d7038686e03f4cab5f7ff11caab1ec7593716ab8b23257bb38a97ea698bfd |
Close
Hashes for opendal-0.43.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 003e429ac0023bc6f54a7bc35e3227489ee7c70ce8ffa3afe5f045161047caeb |
|
MD5 | 2509a4fb07ab72078bc5fc4be0864aee |
|
BLAKE2b-256 | 300bea6e21afe13fbac43036af54a1b21298c57ecd21a4ee2124b58bace65a2a |
Close
Hashes for opendal-0.43.0-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef71c7273ff7b9b880024b3fee3cc54bb46a1c0b0ee2f051b4c54999b9a640d8 |
|
MD5 | 9958476ef2b084663b6f35c39e52fa21 |
|
BLAKE2b-256 | f591f83194a52b56e20b5432cd920417a3304ea1147e93174805db67b89e228d |
Close
Hashes for opendal-0.43.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce07d8982d86af858f1eaefe56ef4f7fe2df3b2aca0c8b76df003d07aa191350 |
|
MD5 | da3aaaeb30b8b2acc98d9c839f3ac179 |
|
BLAKE2b-256 | 9a1015bd2332d388324b47ee912e30e57b831292a22f8edbbfb30bd8ed1bf6d0 |
Close
Hashes for opendal-0.43.0-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f38ac0f99d0d502025b63e4a01b74930d26f96cf9147a86831d6474d8c9bd120 |
|
MD5 | 50cadb80a444314c778bc99988bf58ec |
|
BLAKE2b-256 | e591b1d1d9079d58343392de9348d635cfa91c276c63f3b23973a364bb487f7b |
Close
Hashes for opendal-0.43.0-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5f2e43de0f15afdf62013da8ad370c692b1b93e0ccd921878cfb40031568a2d |
|
MD5 | a72cef1b4a2250f1948d81a134181abe |
|
BLAKE2b-256 | f47c6682355dcd3117e08513ae961f00cd38eb1dc6e59ad6d204110f03f68950 |
Close
Hashes for opendal-0.43.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8856d88e4747f83055e40b27454f0f5fcf6945782f0efc10698d4b011349d524 |
|
MD5 | d69e932a1064f808af668499be807b89 |
|
BLAKE2b-256 | ea5a96d331d42266e57f283a105fe64216736cc4b9d11694b6e7731d4795c710 |
Close
Hashes for opendal-0.43.0-cp37-cp37m-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fd0f8a1f304930605718b3e23b035a3d38c389cf896cf101c8c702798530b25 |
|
MD5 | 7b4a19cc206d5a5b9e166217474b441f |
|
BLAKE2b-256 | b31675d249dcd4e1efa9048b98db794f806230f690750dec959591f2a3ce44da |