Skip to main content

Apache OpenDAL™ Python Binding

Project description

Apache OpenDAL™ Python Binding

PyPI Website

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:

# Ensure the dependencies are installed
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


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.16.tar.gz (854.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

opendal-0.45.16-cp313-cp313t-manylinux_2_28_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ ARM64

opendal-0.45.16-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

opendal-0.45.16-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (12.7 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

opendal-0.45.16-cp313-cp313t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (26.5 MB view details)

Uploaded CPython 3.13tmacOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

opendal-0.45.16-cp311-abi3-win_amd64.whl (14.9 MB view details)

Uploaded CPython 3.11+Windows x86-64

opendal-0.45.16-cp311-abi3-manylinux_2_28_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

opendal-0.45.16-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.17+ x86-64

opendal-0.45.16-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (12.7 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.17+ ARMv7l

opendal-0.45.16-cp311-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (26.5 MB view details)

Uploaded CPython 3.11+macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

opendal-0.45.16-cp310-cp310-win_amd64.whl (15.0 MB view details)

Uploaded CPython 3.10Windows x86-64

opendal-0.45.16-cp310-cp310-manylinux_2_28_aarch64.whl (13.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

opendal-0.45.16-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

opendal-0.45.16-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (12.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

opendal-0.45.16-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (26.5 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file opendal-0.45.16.tar.gz.

File metadata

  • Download URL: opendal-0.45.16.tar.gz
  • Upload date:
  • Size: 854.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for opendal-0.45.16.tar.gz
Algorithm Hash digest
SHA256 12aec9c0c72260377d8cbc76a9c953763fd627b6b435e709dfd46a5d546d2c48
MD5 674b907170fdfab6b089f61e2983a01e
BLAKE2b-256 c7ceb11efb1b6d3690d3365a608b01265b2ba635c793df1968f0bcfd29fa10f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16.tar.gz:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp313-cp313t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp313-cp313t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f08a4abf498b56b3c6c5bccdeebfd0d6b33821053691cbf2c7335b4ecb53113a
MD5 8b91afd3a810b2c5dc975e5db5879e9d
BLAKE2b-256 34875ec0c62691b4486d7ed407c62fc6c9957e3280f4d732640e6a9fd8eb05a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp313-cp313t-manylinux_2_28_aarch64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71567e66c11735d5a1b4cf0530e2976c0cb61681f6bd20872d767b0eb257299c
MD5 01f924769922c5181dbe5fac0db92478
BLAKE2b-256 371b190dae421d38f97dfe747dcc5cbac6d03f8bdcb57c0e08c1f797e6977d2c

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 59a9f276469f7d682d325499bb39a3e220ce1e97207e4a6ffa14ef6144f4aebe
MD5 e3a7a693962a43fdac1af321312f1b14
BLAKE2b-256 61bfd206eb6bbc60b6334e08be98c1caf76015762c1a09afbd9070e5039b288d

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp313-cp313t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp313-cp313t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 85bd6ed1e3b8588ac0e5767e0f0aa4d2403efc9dc4297057b30bd819b7db30e6
MD5 7463188232e7c3d431fd0bdfa9730230
BLAKE2b-256 4659b8b9dbd300ae26a18584cc1f6524119d2244d790e327d84a015059e60623

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp313-cp313t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: opendal-0.45.16-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 14.9 MB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for opendal-0.45.16-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 45ded14e0fddbfd445f23cec1cb10a1d86f2d80444fd8e1ced0d5678b7372c8b
MD5 2f2e635250774a256e425d517c68e07c
BLAKE2b-256 acc49cafb607d2875ab64b6878623782be58cccd9fc1dfe31d3f02bab64fbef5

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp311-abi3-win_amd64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp311-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ff201deb49ec0ff2c3f5db97a74a2cbcc35675a610808bb4f199d404bdf76b67
MD5 76325e0e743bd57d7972c7699e0d7ccf
BLAKE2b-256 c50ad268ee19b05cb67d22af8ce2bcfed39f585018ea44a1475c316f49061d10

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp311-abi3-manylinux_2_28_aarch64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 05e6eade550f80e6f0cb1ceae4f645bba87da77b4cce212a81727e8461d934f2
MD5 fdaa240974f208b0b69756df3c209072
BLAKE2b-256 4572b4fed73ad54d531c81e51b8ca196730c3449667b397282e0d884edc538dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 270be49daee1fd8a1cfa229c827e450ba0d50d99f34c0a77271979b599136ccc
MD5 6ff3d3b72c7c19b38f4c0ac2ef9b5962
BLAKE2b-256 82f4e958ad87ba8eb8e4a8565aad0c8b4784ebaaa32f6bf0784e3c90281cb9ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp311-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp311-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 d2f75b34c89e104448b8c2323cfdd7c5055a0f2df286ed460ea502253fae4115
MD5 f335d1612fec6acf01be3f74d18bd62b
BLAKE2b-256 2303f0b893388dc81acbf133345d52b5b54cdc7f3fce8d20d14fb2eb822963dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp311-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: opendal-0.45.16-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 15.0 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for opendal-0.45.16-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b775ee69103df804b327b809ce5d20ff36a52e354185a722e1a14c48cd618a18
MD5 93ae74f1324c7515d6cef5a4e504970a
BLAKE2b-256 27b9e4ee4712e184c680a5ebaf42ffbd8d8e1649971ac6294de06c251d26ce9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp310-cp310-win_amd64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fb6c0cfe5363dfd6db2a50e7f534cf8a0bd27da989021f2f303fd4157a0c186b
MD5 31254fde3d35c89c357098589d0487ef
BLAKE2b-256 d3fc0a0c7502bbd94d50d32a93297550e0518154699bc90af09fa9257b9b4c34

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4aa1e1e5796982a0bbef4da4af5611fd768eaf10d1031089f3dab93cdcb01d84
MD5 27d19fa73ccc38199a33b99db7966092
BLAKE2b-256 74072a66d7c2898f9e390ec9e04b611f065761c8ecd95d526742c6a72586a506

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 d10ae4edee9602b55b58469429c56bf82b7044cde25b87f9ec994ca4fbf57a3e
MD5 92ae003ec0cf553abc445c0da6f6591a
BLAKE2b-256 eb44ea45f2ed159d585c3ad510f57e748db59694ed2b270e8a8af0c7128c4fa3

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file opendal-0.45.16-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for opendal-0.45.16-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 aa8d3bcf8466a489800df517bff40e5da107c11f88123b3063aa8c0238552548
MD5 71f554f4a8664e14f73b4dc3009e7edc
BLAKE2b-256 369e1e77797588b728afacdae892703486245ded392bbf1df3eeaf858f537006

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.16-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release_python.yml on apache/opendal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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