Repository navigation
Python Grainlift toolkit v0.3.0
Published to PyPI as grainlift 0.3.0.
Large HTTP requests and results through S3-compatible object storage (AWS S3, Cloudflare R2, MinIO), matching grainlift-server's [external_storage]:
grainlift.ExternalStorageConfig, passed asexternal_storage=toService.app,serveandserve_granian: clients get presigned upload URLs (POST /__upload_url__/init) for requests over the request limit, and result batches over the threshold are stored in the bucket and returned as presigned GET URLs. URLs are signed in-process (SigV4, no boto3); the service fetches only objects in its own bucket. Credentials default toAWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEYand are hidden fromrepr.- Install with
pip install 'grainlift[storage]'. - Development host flags
--storage-endpoint,--storage-bucket,--storage-region,--storage-prefix. - HTTP only; the TCP host is unchanged.
Verified end to end with the native grainlift ADBC driver against a local S3 emulator and Cloudflare R2.