apache / apache/arrow-rs-object-store

Integration tests for CryptoProvider and DigestContext

Open
#760 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
322
Forks
212
Avg merge
5d 2h
Merged PRs (30d)
10

Description

**Is your feature request related to a problem or challenge? Please describe what you are trying to do.**
@goffrie introduced a pluggable crypto API (original authored by @tustvold) in this PR:
- https://github.com/apache/arrow-rs-object-store/pull/707

Specifically, I am referring to the contents of src/client/crypto.rs and the `CryptoProvider` and `DigestContext` traits

The traits are tested, in the sense that there are default providers used, but we don't have any integration tests that show either how to implement these traits externally nor show that you can successfully do so and use the object_store apis

**Describe the solution you'd like**
Ideally as separate PRs
1. An overview of pluggable crypto in the lib.rs documentation
2. An doc comment example showing how to implement and use a Crypto provider
3. Perhaps an integration test showing how to implement a Cyrpto provider and use it to make actual requests

**Describe alternatives you've considered**

**Additional context**
- related to https://github.com/apache/arrow-rs-object-store/issues/759

Contributor guide

Open the contributing guide

Research direction

Start with src/client/crypto.rs and the CryptoProvider and DigestContext traits, then read the existing default-provider coverage and lib.rs documentation. Add an integration test that implements the traits externally and uses the object_store APIs for actual requests; done means the example compiles and the requests succeed.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
security, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.