View Source Changelog
All notable changes to this project will be documented in this file.
[1.0.0-rc.2] - 2025-06-24
Added
- Support for multiple cloud storage providers:
- Local filesystem (Volume adapter)
- Google Cloud Storage (GCS adapter)
- Amazon S3 (S3 adapter)
- Cloudflare R2 (via S3 adapter with
provider: :cloudflare
) - DigitalOcean Spaces (via S3 adapter with
provider: :digitalocean
) - Tigris (via S3 adapter with
provider: :tigris
)
- Multi-cloud support with multiple Cloud modules
- Dynamic cloud configuration for runtime-determined storage
- Signed URL support for secure uploads and downloads
- Phoenix LiveView integration for direct-to-cloud uploads
- Development router for local file uploads/downloads
- Telemetry integration for monitoring and metrics
- Comprehensive test suite with live service testing
Changed
- Switched from multiple strategies per cloud to one adapter per cloud approach
- Renamed Strategy modules to Adapter modules
- Replaced external dependencies (gcs_signed_url, google_api_storage, goth, ex_aws) with req
- Renamed
cloudflare_r2
provider tocloudflare
for consistency - Cloud modules now act as supervisors for adapters that need background processes
Fixed
- Router configuration to allow cloud module in location config
- Automatic setting of correct GCS options for uploads
- Warning messages for cloud supervisors with no children
Internal
- Added
validate_config
callback to adapter behavior - Improved Location struct with derived inspect that ignores :config
- Enhanced documentation and README with core concepts