| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| [package] |
| name = "opendal-python" |
| publish = false |
| |
| authors = ["Apache OpenDAL <dev@opendal.apache.org>"] |
| edition = "2024" |
| homepage = "https://opendal.apache.org/" |
| license = "Apache-2.0" |
| repository = "https://github.com/apache/opendal" |
| rust-version = "1.85" |
| version = "0.47.0" |
| |
| [features] |
| default = [ |
| "services-azblob", |
| "services-azdls", |
| "services-cos", |
| "services-fs", |
| "services-gcs", |
| "services-ghac", |
| "services-http", |
| "services-ipmfs", |
| "services-memory", |
| "services-obs", |
| "services-oss", |
| "services-s3", |
| "services-webdav", |
| "services-webhdfs", |
| ] |
| |
| # NOTE: this is the feature we used to build pypi wheels. |
| # When enable or disable some features, |
| # Also, you need to update the `enabled_service` function in dev/src/generate/python.rs to match it. |
| services-all = [ |
| 'default', |
| 'services-aliyun-drive', |
| 'services-alluxio', |
| 'services-azfile', |
| 'services-b2', |
| 'services-cacache', |
| 'services-dashmap', |
| 'services-dropbox', |
| 'services-ftp', |
| 'services-gdrive', |
| 'services-gridfs', |
| 'services-huggingface', |
| 'services-ipfs', |
| 'services-koofr', |
| 'services-memcached', |
| 'services-mini-moka', |
| 'services-moka', |
| 'services-mongodb', |
| 'services-mysql', |
| 'services-onedrive', |
| 'services-persy', |
| 'services-postgresql', |
| 'services-redb', |
| 'services-redis', |
| 'services-seafile', |
| 'services-sled', |
| 'services-sqlite', |
| 'services-swift', |
| 'services-upyun', |
| 'services-vercel-artifacts', |
| 'services-yandex-disk', |
| ] |
| |
| # List of feature-flags for all services provided by opendal. |
| services-aliyun-drive = ["opendal/services-aliyun-drive"] |
| services-alluxio = ["opendal/services-alluxio"] |
| services-azblob = ["opendal/services-azblob"] |
| services-azdls = ["opendal/services-azdls"] |
| services-azfile = ["opendal/services-azfile"] |
| services-b2 = ["opendal/services-b2"] |
| services-cacache = ["opendal/services-cacache"] |
| services-cloudflare-kv = [ |
| "opendal/services-cloudflare-kv", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-compfs = [ |
| "opendal/services-compfs", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-cos = ["opendal/services-cos"] |
| services-d1 = ["opendal/services-d1"] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-dashmap = ["opendal/services-dashmap"] |
| services-dbfs = [ |
| "opendal/services-dbfs", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-dropbox = ["opendal/services-dropbox"] |
| services-etcd = [ |
| "opendal/services-etcd", |
| ] # FIXME EXCLUDED: this service needs protoc |
| services-foundationdb = [ |
| "opendal/services-foundationdb", |
| ] # FIXME EXCLUDED: this service needs preinstalled fdb library |
| services-fs = ["opendal/services-fs"] |
| services-ftp = ["opendal/services-ftp"] |
| services-gcs = ["opendal/services-gcs"] |
| services-gdrive = ["opendal/services-gdrive"] |
| services-ghac = ["opendal/services-ghac"] |
| services-github = [ |
| "opendal/services-github", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-gridfs = ["opendal/services-gridfs"] |
| services-hdfs = [ |
| "opendal/services-hdfs", |
| ] # FIXME EXCLUDED: how to support HDFS services in bindings? |
| services-hdfs-native = ["opendal/services-hdfs-native"] |
| services-http = ["opendal/services-http"] |
| services-huggingface = ["opendal/services-huggingface"] |
| services-ipfs = ["opendal/services-ipfs"] |
| services-ipmfs = ["opendal/services-ipmfs"] |
| services-koofr = ["opendal/services-koofr"] |
| services-lakefs = [ |
| "opendal/services-lakefs", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-memcached = ["opendal/services-memcached"] |
| services-memory = ["opendal/services-memory"] |
| services-mini-moka = ["opendal/services-mini-moka"] |
| services-moka = ["opendal/services-moka"] |
| services-mongodb = ["opendal/services-mongodb"] |
| services-monoiofs = [ |
| "opendal/services-monoiofs", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-mysql = ["opendal/services-mysql"] |
| services-obs = ["opendal/services-obs"] |
| services-onedrive = ["opendal/services-onedrive"] |
| services-opfs = [ |
| "opendal/services-opfs", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-oss = ["opendal/services-oss"] |
| services-pcloud = [ |
| "opendal/services-pcloud", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-persy = ["opendal/services-persy"] |
| services-postgresql = ["opendal/services-postgresql"] |
| services-redb = ["opendal/services-redb"] |
| services-redis = ["opendal/services-redis"] |
| services-rocksdb = [ |
| "opendal/services-rocksdb", |
| ] # FIXME EXCLUDED: how to support rocksdb services in bindings? |
| services-s3 = ["opendal/services-s3"] |
| services-seafile = ["opendal/services-seafile"] |
| services-sftp = ["opendal/services-sftp"] |
| services-sled = ["opendal/services-sled"] |
| services-sqlite = ["opendal/services-sqlite"] |
| services-surrealdb = [ |
| "opendal/services-surrealdb", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-swift = ["opendal/services-swift"] |
| services-tikv = [ |
| "opendal/services-tikv", |
| ] # FIXME EXCLUDED: this service needs protoc |
| services-upyun = ["opendal/services-upyun"] |
| services-vercel-artifacts = ["opendal/services-vercel-artifacts"] |
| services-vercel-blob = [ |
| "opendal/services-vercel-blob", |
| ] # FIXME EXCLUDED: Needs tests/ maintenance |
| services-webdav = ["opendal/services-webdav"] |
| services-webhdfs = ["opendal/services-webhdfs"] |
| services-yandex-disk = ["opendal/services-yandex-disk"] |
| |
| # we build cp311-abi3 and cp310 wheels now, move this to pyo3 after we drop cp310 |
| abi3 = ["pyo3/abi3-py311"] |
| |
| # Conditionally include sftp only on non-windows targets |
| [target.'cfg(not(windows))'.features] |
| services-all = ["services-sftp"] |
| |
| # Conditionally include sftp only on non-windows targets |
| [target.'cfg(not(target_arch = "arm"))'.features] |
| services-all = ["services-hdfs-native"] |
| |
| [[bin]] |
| doc = false |
| name = "stub_gen" |
| |
| [lib] |
| crate-type = ["cdylib", "rlib"] |
| doc = false |
| name = "_opendal" |
| |
| [dependencies] |
| bytes = "1.5.0" |
| dict_derive = "0.6.0" |
| futures = "0.3.28" |
| jiff = { version = "0.2.15" } |
| mea = "0.5.1" |
| # this crate won't be published, we always use the local version |
| opendal = { version = ">=0", path = "../../core", features = [ |
| "blocking", |
| "layers-mime-guess", |
| ] } |
| pyo3 = { version = "0.26.0", features = ["generate-import-lib", "jiff-02"] } |
| pyo3-async-runtimes = { version = "0.26.0", features = ["tokio-runtime"] } |
| pyo3-stub-gen = { version = "0.17" } |
| tokio = "1" |
| |
| [profile.release] |
| codegen-units = 1 |
| debug = false |
| lto = "fat" |
| strip = true |