diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 241965eb..22f3bc6b 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -167,13 +167,13 @@ jobs: - name: Build run: | $env:VCPKG_ROOT = $env:VCPKG_INSTALLATION_ROOT - cargo build --profile ci --features remote --tests --locked --target ${{ matrix.target }} + cargo build --profile ci --features aws,remote --tests --locked --target ${{ matrix.target }} - name: Run tests # Can only run tests when target matches host if: ${{ matrix.target == 'x86_64-pc-windows-msvc' }} run: | $env:VCPKG_ROOT = $env:VCPKG_INSTALLATION_ROOT - cargo test --profile ci --features remote --locked + cargo test --profile ci --features aws,remote --locked msrv: # Check the minimum supported Rust version diff --git a/nodejs/Cargo.toml b/nodejs/Cargo.toml index 314a6777..efcfe5ab 100644 --- a/nodejs/Cargo.toml +++ b/nodejs/Cargo.toml @@ -36,6 +36,6 @@ aws-lc-rs = "=1.13.0" napi-build = "2.1" [features] -default = ["remote", "lancedb/default"] +default = ["remote", "lancedb/aws", "lancedb/gcs", "lancedb/azure", "lancedb/dynamodb", "lancedb/oss", "lancedb/huggingface"] fp16kernels = ["lancedb/fp16kernels"] remote = ["lancedb/remote"] diff --git a/python/Cargo.toml b/python/Cargo.toml index 6e49be66..556571c9 100644 --- a/python/Cargo.toml +++ b/python/Cargo.toml @@ -38,6 +38,6 @@ pyo3-build-config = { version = "0.25", features = [ ] } [features] -default = ["remote", "lancedb/default"] +default = ["remote", "lancedb/aws", "lancedb/gcs", "lancedb/azure", "lancedb/dynamodb", "lancedb/oss", "lancedb/huggingface"] fp16kernels = ["lancedb/fp16kernels"] remote = ["lancedb/remote"] diff --git a/rust/lancedb/Cargo.toml b/rust/lancedb/Cargo.toml index eae484a7..9b065849 100644 --- a/rust/lancedb/Cargo.toml +++ b/rust/lancedb/Cargo.toml @@ -104,7 +104,7 @@ test-log = "0.2" [features] -default = ["aws", "gcs", "azure", "dynamodb", "oss", "huggingface"] +default = [] aws = ["lance/aws", "lance-io/aws", "lance-namespace-impls/dir-aws"] oss = ["lance/oss", "lance-io/oss", "lance-namespace-impls/dir-oss"] gcs = ["lance/gcp", "lance-io/gcp", "lance-namespace-impls/dir-gcp"] @@ -153,3 +153,6 @@ name = "ivf_pq" [[example]] name = "hybrid_search" required-features = ["sentence-transformers"] + +[package.metadata.docs.rs] +all-features = true diff --git a/rust/lancedb/src/lib.rs b/rust/lancedb/src/lib.rs index b7e9cdf1..2fddaa8a 100644 --- a/rust/lancedb/src/lib.rs +++ b/rust/lancedb/src/lib.rs @@ -25,13 +25,14 @@ //! //! ## Crate Features //! -//! ### Experimental Features -//! -//! These features are not enabled by default. They are experimental or in-development features that -//! are not yet ready to be released. -//! -//! - `remote` - Enable remote client to connect to LanceDB cloud. This is not yet fully implemented -//! and should not be enabled. +//! - `aws` - Enable AWS S3 object store support. +//! - `dynamodb` - Enable DynamoDB manifest store support. +//! - `azure` - Enable Azure Blob Storage object store support. +//! - `gcs` - Enable Google Cloud Storage object store support. +//! - `oss` - Enable Alibaba Cloud OSS object store support. +//! - `remote` - Enable remote client to connect to LanceDB cloud. +//! - `huggingface` - Enable HuggingFace Hub integration for loading datasets from the Hub. +//! - `fp16kernels` - Enable FP16 kernels for faster vector search on CPU. //! //! ### Quick Start //!