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

Uploaded Source

Built Distributions

opendal-0.45.15-cp313-cp313t-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.13t manylinux: glibc 2.28+ ARM64

opendal-0.45.15-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.13t manylinux: glibc 2.17+ x86-64

opendal-0.45.15-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (15.7 MB view details)

Uploaded CPython 3.13t manylinux: glibc 2.17+ ARMv7l

opendal-0.45.15-cp313-cp313t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (30.6 MB view details)

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

opendal-0.45.15-cp311-abi3-win_amd64.whl (15.1 MB view details)

Uploaded CPython 3.11+ Windows x86-64

opendal-0.45.15-cp311-abi3-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.11+ manylinux: glibc 2.28+ ARM64

opendal-0.45.15-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.7 MB view details)

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

opendal-0.45.15-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (15.7 MB view details)

Uploaded CPython 3.11+ manylinux: glibc 2.17+ ARMv7l

opendal-0.45.15-cp311-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (30.6 MB view details)

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

opendal-0.45.15-cp310-cp310-win_amd64.whl (15.1 MB view details)

Uploaded CPython 3.10 Windows x86-64

opendal-0.45.15-cp310-cp310-manylinux_2_28_aarch64.whl (16.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ ARM64

opendal-0.45.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

opendal-0.45.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (15.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARMv7l

opendal-0.45.15-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (30.6 MB view details)

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

File details

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

File metadata

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

File hashes

Hashes for opendal-0.45.15.tar.gz
Algorithm Hash digest
SHA256 ce7ac10d359a029efb4def31816f665dd02200ec3b076c50c67eabaf67f80117
MD5 0a494090f31a4eb47eb8c7dc263edfb3
BLAKE2b-256 112dcde4b858a7e703226220a7c3339bbd8023d1dc8ce0633199ef4fd29e202d

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15.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.15-cp313-cp313t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp313-cp313t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e7ea3955bbd4f3ad93cf270d9ef0cce19d5b0d79d9b37e5fd39ab1cf68ce8b64
MD5 6b2d2f4bb6fc635cc73d251565fa8d52
BLAKE2b-256 13777d81f19d43850e4837fc5a85ee4c91fb3a544a59954578516529fdecf243

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0fabd759dfafdc04fdefaccd5764d4eb689059b491a6428a8f2528d2fcad8205
MD5 8ef62685b3a3761cf3142886fc710a0f
BLAKE2b-256 2591b40c707127263490efb1010fc4a45b8cd02e44708bd3531173c14682909d

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 5bac5c3843903c54b929de561821055fab806d49eb055770ba68ef5b88616fae
MD5 a34d928cc723a77a97da66c6148f62e0
BLAKE2b-256 3c3ed583953c870b1d395bfa3e3821e82bd24cbdc3aa81dc67d982eb93fdb739

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-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.15-cp313-cp313t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 921a5f917ac44f5965c3fd3d56ab6d2c2df9243cb507780f5f06e6a0f40fdce9
MD5 1d333b1a95c39fe78e053833ef68d585
BLAKE2b-256 c0b743c47236cbfcf008ac36a7df157533240d46383581cfc4c17361c775d9ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp311-abi3-win_amd64.whl.

File metadata

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

File hashes

Hashes for opendal-0.45.15-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 476b5505f08d346a22a3f603be33499503ff52fab8f43d731c6ec31f6974ad51
MD5 76f8a729f43f188cb9be40cd7e849f58
BLAKE2b-256 f075fb5653642a03db5176acbe64945475869166511f3185fe4ad9c5dd889d51

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp311-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9c2ba47b733907babf66118e7579c06c561900780fbdb9c5709397ca7e06ac17
MD5 050b561f344975c19b12ee8bbf46d34b
BLAKE2b-256 eb428dcb4ea0eba86f5e4825254756a459b7d59971684d9d108520aee8303ce4

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df87172a8181805b058c0c2d2468441e9f046ecc3d73d202032536b4f8b883ae
MD5 913824bc9e8b247ea38ebec814b47863
BLAKE2b-256 797f9205d26fcd6202d518becb052231a1eda2a66bef4a6cf6b58462b1b08979

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp311-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 f496be9c020557a9651138f141d8e9e87ce4551a7be881b08d449af559737810
MD5 35c30858479beafb96a6db0a27a2aac7
BLAKE2b-256 9e3b854fb84e0a81515c2f685f83ad5d1b32454cd57ad14cd40c5266e9102c8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-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.15-cp311-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 a7ee0f817bd0f7187dea13d95baf6fb54c51dd676593ccb7b3d0f71270170195
MD5 d0196d190765527c54ff4e1ac8a74e60
BLAKE2b-256 0e6c60e47200ee50e472b4cd2e6871cde02b2bf7feca1782f9bd183113b6e0f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 68f63a87f24dd210af37180de873329bf46d5b9548420405f282410ff960f06a
MD5 3305b1a14a621b917b5194d5a50f94df
BLAKE2b-256 f60faf8e9b4ecd013a5602da4911e778261621db19e3e6bb25afd3f964d9f266

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8dba4c824fb5b291fb5ebd7d2f31c703cc9d9a89dc10b9acc3c7e3908e625165
MD5 3d72a25dcd46fedada917d21e192143f
BLAKE2b-256 56ac78d524512ccf9350d8571093b91f6b5aca3037c95344fe462d58290e35b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f1b60722a266bbad4336492b37b9825d20c838c584897600f520ef6956959ae
MD5 c328e5da3779c2a2621289d852684195
BLAKE2b-256 fd164e056ade8efdd0e697bfbf6f67d8f83671401f9f4293c7eb70388a06fd39

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for opendal-0.45.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 adf989577cf127e13f86d0179fb26e673e3036eae0406002c7724dab2c0e4c5e
MD5 9f216e426fa980c0e41e7a9394cc6ea9
BLAKE2b-256 f86b4b47ceed29a8c720b2bfe08045a3830ce08f41909f6775ab19516c46e30b

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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.15-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.15-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 c8bfb16edce3d43d2caf0391af547c581ffdea9d7c145c054bbaba60d064dab4
MD5 5e38c4ebd421d25f44165e719750231e
BLAKE2b-256 379a79fee7f0570f96abf28d3243ce10d81ac6f166396bce321fffc9508eaff6

See more details on using hashes here.

Provenance

The following attestation bundles were made for opendal-0.45.15-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 AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page