Apache OpenDAL™ Python Binding
Project description
Apache OpenDAL™ Python Binding
Documentation: main
This package intends to build a native python binding for Apache OpenDAL.
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
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 -t ./template opendal
License and Trademarks
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
Apache OpenDAL, OpenDAL, and Apache are either registered trademarks or trademarks of the Apache Software Foundation.
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.45.1.tar.gz
(674.2 kB
view hashes)
Built Distributions
Close
Hashes for opendal-0.45.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f62aa634345c070b7a8160fda79e2b7d058fabd06f5ab171517731f3ea08086d |
|
MD5 | e67e7e764353a2215885d27ad2bc1e77 |
|
BLAKE2b-256 | 9b9951962a95830e9968d3ec5379801400c048f64ff253e695d7f35901fb3825 |
Close
Hashes for opendal-0.45.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e01cf4a276dba6667bb5e5d9a58b2008202082477fc1cf23ffbbc3f1e65d5925 |
|
MD5 | 706528fdd180b2dcac8d47058589079c |
|
BLAKE2b-256 | b8254f9a6049f26c51a6d0fe73e94d3679395ce12f67764f5358200686e8f846 |
Close
Hashes for opendal-0.45.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66416d62a32be22eb208fffbc4d86d3be814c1c56d4e66f6e2e28ef767a9e79c |
|
MD5 | 6f23b87ba5eacec020af019f31a61dc6 |
|
BLAKE2b-256 | a5e0cae7f25da3ab3d585fa0e1e28a29197875a8045c67e8fe17991fbaee9886 |
Close
Hashes for opendal-0.45.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3b974b023fbc1365b069274223667e5ed23138ccdc7a92989d9031c6c956f64 |
|
MD5 | 331ecdcab77e1462edb0841cc3faa6f9 |
|
BLAKE2b-256 | b24b8b8c9a33807418d9981f353634097a6692ef88eee60832097504b5091e7c |
Close
Hashes for opendal-0.45.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9e2e860af801ef44f61cc3284ccac93eefe503429bc189128475ca9d7c78081 |
|
MD5 | c0d38597b1a0e23b2a57341e48f9cfd3 |
|
BLAKE2b-256 | 7218052b838a98fc4e19adf1fb10b5f1c1e60af956f3fc3a2a8a9dd191c4fa80 |
Close
Hashes for opendal-0.45.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cc18139e0c3b87c2e148b4416e59f7b45e5f1b0274a315b20277b9422c77996 |
|
MD5 | 70f5c17b5a41add36d7309ce5f1bb733 |
|
BLAKE2b-256 | bd63264ff0760002bdd0fb14c2e83bb02959f3bce58792f94c4446b52449651b |
Close
Hashes for opendal-0.45.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d37929193c34b63de7a81f2a98a55911c56f11a855548193ba71de2a04304234 |
|
MD5 | fe455b431c065537fc36f8da3ab726e1 |
|
BLAKE2b-256 | 29cc4b409e513b7ae9601f1e5512e68a7fbf07c59316e08093d89e331fc8f879 |
Close
Hashes for opendal-0.45.1-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ebd97bc87de2280ea7ef924855de02f47123cb759061baea9aefd72b8e253c46 |
|
MD5 | 52473d030e66a831f4314fd11fd59973 |
|
BLAKE2b-256 | 9a1b8dd6448044d0b308ffe7be1cf778bf9220ad4cb9071882d6c908709c2f06 |
Close
Hashes for opendal-0.45.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c822fddfc9ce48ea003f708c65857a6f5b573c504982a7a7b7772afcfcf30cf1 |
|
MD5 | accb61bb59c8775a3147d02406c5f31f |
|
BLAKE2b-256 | 02eb262a7d359c873181fc2da20cf525b2a7656a3b1b5bffc97f6588925678e1 |
Close
Hashes for opendal-0.45.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c279a55b3bfc3e3f22d9c052da4cca4bef9e22c3e16496700d9f148846b2740 |
|
MD5 | 4d0e7d2c8e653060589e395693310cc2 |
|
BLAKE2b-256 | 1745dcb0cff4a0de15546548f57991c90dab8d8d6cdbcd6ccc1aa22eb5989ab0 |
Close
Hashes for opendal-0.45.1-pp37-pypy37_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1db787ca5b79f59ce1ea53a4cfe16248fdd6ddb3bb336f372746c2196edebcf |
|
MD5 | 342c7798d8c54809c5f57eb89a9e4e78 |
|
BLAKE2b-256 | 54ae50633196ff23bbdde017b009958b240612224b26116caf20f2a719b2cfdf |
Close
Hashes for opendal-0.45.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4333c9db13712418d7330fac7b27c8c67c94f5a23e3c04fd6a17f0faa23d07ad |
|
MD5 | 827a4002bd4b9d210e9acdca8fc3ed1c |
|
BLAKE2b-256 | 087d83a139722d0bbd38f18dd3a3c7f4c634b7f7d085cb61b35eed729fa635fb |
Close
Hashes for opendal-0.45.1-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3f22a8a1a28dabe2f0f7ee4be7a6e56e8be8b06367061e1806b74eb00477b22 |
|
MD5 | a8db9ee56fd89482325599cfa9cc4fa3 |
|
BLAKE2b-256 | 19a4ace5c6646fff5bfe3d234ee953fcbd6c339e99ce272846f9e5380b0dfd85 |
Close
Hashes for opendal-0.45.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 42ffa4270917e9cca44c8bec17f248c24eeb6716d01ec2340002e0965faf1861 |
|
MD5 | c45e41d01f6a9cfe32ec8c56d8702a49 |
|
BLAKE2b-256 | 9de8ec51d5a73c1db937519568b0ccef37ffc9019ac932bbe2d4286ec4fb4942 |
Close
Hashes for opendal-0.45.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6bf5df342dbcda8ced1e2a768c8ab66372c32f4c7de67091966674b9d9169d35 |
|
MD5 | 7ca2a0b7063602474a6e4306de082192 |
|
BLAKE2b-256 | 09a1739227a588d491f8103cadabc445a93144ec487ac508541470b5f5a28698 |
Close
Hashes for opendal-0.45.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36ec935644d804cd66c7a3d18dd94061688c17bbbbadae174eb6e7cb1feeb558 |
|
MD5 | 8b239c26d2847530537363668b83ff79 |
|
BLAKE2b-256 | f3296eb505ff2bd9be918a0cf4b7b8e071c71cbd7f715764a57f7d59f127c28a |
Close
Hashes for opendal-0.45.1-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1b7bb9133a6b8a1fbbb239438981a8efb9006dce5b7cf8e442eac4ba667d547 |
|
MD5 | c9c460024f3cdd80e79a950499994f9d |
|
BLAKE2b-256 | 745784074ef9777bdd952b44a9fac82e1620f7d9af34ed0f9d4c5bb8a25599fa |
Close
Hashes for opendal-0.45.1-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 061deda6a95ed05101ac0832609ae16b5795cc086c2add6087c3b828453820dc |
|
MD5 | e0392f98c74cb8034741194e76fd862e |
|
BLAKE2b-256 | 2f12463446abecc3801f0472af62753f0ad61c6e60dbb7ee00c27dbe98e3c9f9 |
Close
Hashes for opendal-0.45.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 379c0a3fe8509f4b1b981ac9259252788672b1427c78f85f536b20a7fed99c4e |
|
MD5 | 1addd6fc6b7ffb13a07124e09e6f32fc |
|
BLAKE2b-256 | a552253cd981ad7c5d7fca8fab6281ca509fb2cb22328aa0e506f5aa0e702173 |
Close
Hashes for opendal-0.45.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63434c953ddb265e27a6d892a407a6e319ca7bfdd878190c6c88309666426d68 |
|
MD5 | af127a0e4379ba7fd8f0171cf46717be |
|
BLAKE2b-256 | bb73a514dc843a3d2e1b587d98d47657138656878f659d076f4b7bb34edbcf49 |
Close
Hashes for opendal-0.45.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17f22529576788cbcbf204022097cde56461f123b5ca0e32c3f39fe6c0b5838b |
|
MD5 | 91155704cdedb4df48af89a4a0ac8346 |
|
BLAKE2b-256 | 01bf09c8b09f0067c5d9b2ed00f0507e5e593bc5be8b645f02aea153026897af |
Close
Hashes for opendal-0.45.1-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d231dc8a8531e1caa6aae5beef4c359900b71c8a886a728433976f9072c3939 |
|
MD5 | d98cf5e0e717461c15a77a657c0a9182 |
|
BLAKE2b-256 | 0b5a510bbf4916032d367861e01c22253b024c3dea16afcc0a0a4eaa1cef70ca |
Close
Hashes for opendal-0.45.1-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d07e369f8a0b3280f686b6022bf1e49fab413cdaec5f768669aae2de28c9fe5f |
|
MD5 | be53cfd430b35ead09ed7ca573e3780e |
|
BLAKE2b-256 | 486127c982d711325fe817a8820a4f902f5bfba350b8fb5ae0348108b325e72c |
Close
Hashes for opendal-0.45.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59f9654d055f7aedbc4df3bb5ef4dc4e27fe500cc017c29366a820fb7b55d601 |
|
MD5 | e9b55b220e8427b345e5f692a97ea31f |
|
BLAKE2b-256 | d48376ec870fffb4f89ea17a953b03d4d15b6db6694eb59df3fa498ec20426d7 |
Close
Hashes for opendal-0.45.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad819e6ed2dad12ad350061d673269900b20f5895b68c01427fa873da642f157 |
|
MD5 | 6f7879213c69d5057d84671082905a4f |
|
BLAKE2b-256 | 7408f5a96e87179f2b17a205cbe7d768300fa30e19fb228013b461b77f1e1449 |
Close
Hashes for opendal-0.45.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58b2cd2942ee014a882f2db97c3b7082f6888dc53a486463741fc2a0fae6ca76 |
|
MD5 | a20c79ca0e282c9f46c0caa7de1b9088 |
|
BLAKE2b-256 | dec7f974aaff5badaf8bfb61b93b91ef0fa6c4113df1c1d72d9b2d6de6e7830b |
Close
Hashes for opendal-0.45.1-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4c23a9df6f3da0cb88249e1d091a8808b2067fae383b25d755774dbb28f4f40 |
|
MD5 | 5a27b726fdd92182e40572c01e1d11a9 |
|
BLAKE2b-256 | a2393eb808dc6eaed546661cae70991ceabc0a5591cb4f3286ac4cd5e71114bf |
Close
Hashes for opendal-0.45.1-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d06286bfdfcf0a20161b9c349a7b201dccfdde9bbd10ad2a148efbe01f24a0b4 |
|
MD5 | 64c415933e6e996e2bfec45cf12a6066 |
|
BLAKE2b-256 | 203f93665880f58d98044f5210789c6cbacf4b47bfdbf128abca39353103abbf |
Close
Hashes for opendal-0.45.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aed64bef7f43f355d0bb2bc292e8167c50f86405e8b5809d26156cfe24620e2d |
|
MD5 | f1efc3bdf0d721e26d7f005dae0a94ae |
|
BLAKE2b-256 | 1ef04f7d5cc6cf8c7ec0fa340579a61f52e2e081cb6d3b6489d3b3e0dfc5e845 |
Close
Hashes for opendal-0.45.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4286279467fd55b874819be64dc558bdaf9811f4438d01ce9b82f19b643bb7c7 |
|
MD5 | f685a25532fe484613ff3aae7e5e57fb |
|
BLAKE2b-256 | 5f5fdbc1ed7ed631872d2d8bb78d82761d24733a1f7cc0af69f164777ce02fdf |
Close
Hashes for opendal-0.45.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dba36845ff810e956a8401bffaa346394c040ba158327e4d31829abd253e4355 |
|
MD5 | eab657c56496a0d828780b3abe66174e |
|
BLAKE2b-256 | cd25aa0d25d4126f57d84a3bd92fcafe586e05609a33ec01d7b61deb3c18d25c |
Close
Hashes for opendal-0.45.1-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d5eb0f4cb597e57a7a22ed087ad66ef6322748a5c00f179629f230082d87488 |
|
MD5 | f2518daad7705dfc6e51bed679bbc82c |
|
BLAKE2b-256 | f6d29a77b6fb984f1df5cc753fc734488c369d4d09c21aedaae016c7611c6df8 |
Close
Hashes for opendal-0.45.1-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cc8bdf1005c623328ae316fa55cbe25bc084b9db630f3ce2d2f7e4712f0a30c |
|
MD5 | 88a541a406fd9152ef6716b61d5d1599 |
|
BLAKE2b-256 | 4260e25bc05342cd0cadc3123865e5f010cfffb1446f9dae84bbf1340fb13d07 |
Close
Hashes for opendal-0.45.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 38908fbb05cf0d6dedb66e840293f36b0222c5ed4e3c6d715e07eb2479827ad8 |
|
MD5 | 9593cd466e01c6e20e93684fe89606e5 |
|
BLAKE2b-256 | e98dc7c1963d46ac5aceefd70f7aa22d03141e1e648fcf2a9cb960a96d5ec5c5 |
Close
Hashes for opendal-0.45.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7adcb4f7697d23100ddd734e840736c90904025e9ccf63601132279cc49d15d5 |
|
MD5 | c8928701d5796ad590145c7fac66c45c |
|
BLAKE2b-256 | e6c365c9edae4d7fb763d1cbc2cc55e602a0d6f33f07fd8764d2d94cfe6b3768 |
Close
Hashes for opendal-0.45.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a89645f73fc121f306113f89a0e36862909f41bada516c201b111e58e4cc3fa1 |
|
MD5 | ff1e8326731f6b9c5f3b677ff8071b04 |
|
BLAKE2b-256 | 87332bda2af4a9f539362a44129290dd6a19c9002f1bc23cfaa264e9dcae2861 |
Close
Hashes for opendal-0.45.1-cp38-cp38-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06fceaf63765fa6c3a53384b4a691973e807fb554941c996c9975928b380a53f |
|
MD5 | c6b0a4c1a67e1b54956e8cc0bb4d8172 |
|
BLAKE2b-256 | 1a783752af1f4ed65a282b4d8ab16b2f1794e934b4c2d7e1b31d39be64369277 |
Close
Hashes for opendal-0.45.1-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13a6b92c2469e5182ba73cc30a1c53420f4cfd387da5fdb186bb7c4187073420 |
|
MD5 | 3e344c763c0a43d93c5cff8a27c51dd3 |
|
BLAKE2b-256 | b6cf0be2a6b3abdb60ad2e2da712b55c390cf87bed27dd1a693503cc4a711b88 |
Close
Hashes for opendal-0.45.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 38cb56c27bc866cf0a71042797b2405690bc2a031da40574fae19fdd4e81ed13 |
|
MD5 | 13d170455882c81aabf79b849bb40ad8 |
|
BLAKE2b-256 | 43e0118c92c7d7bfa8fda36f305d1ada2ff6d71c7436b8d00285db885a9c4aa9 |
Close
Hashes for opendal-0.45.1-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7cf402a5fdae7258a744998af7c1353cc9468c43d8a5214be9ec8cfb72773bec |
|
MD5 | 2840148d39119da7ced53d9ee090076f |
|
BLAKE2b-256 | 68fe2560ef9c1603fdb5aaa380a892055a5d067f0217f100d9a2056629fb317b |
Close
Hashes for opendal-0.45.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49eacba5b413a587fe76f70c1cdfd8da51560dfff02ff53c07fc847c50441b6a |
|
MD5 | ed418b7d2ea02b7db861c24d636f1c66 |
|
BLAKE2b-256 | 4cdfe44e0ff0047da21126b3a5e83c7a9f332fa277537fa6e65a11ece604d4cc |
Close
Hashes for opendal-0.45.1-cp37-cp37m-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 395640239a84de9dd8721412a89d77b594cec7160bacd586dd778a08e43bc8f8 |
|
MD5 | 7941b67a9af433cdc5bd71be06bbaec0 |
|
BLAKE2b-256 | 758c0bb0d9d1c812349811bfd4dc64e5f5d4cb13c06bf70ebf5249ba849f794d |