# S3QL Query Language inspired by SQL for S3. ## Usage TODO ## Local development For local development `rust`, `cargo`, `python`, `pip` and `docker` are required. To setup a local S3 with `localstsack` you can execute `make setup` and to start a S3 with `localstack` you can execute `make s3`. * S3 will be at http://localhost:4566 ## TODO: - [ ] more tests - [ ] example usage - [ ] docs - [x] auth (S3CLient can have auth by using directly `rusoto_s3::S3Client` or function `s3_client_with` with feature `auth`) ### Buckets: - [x] Create Bucket - `create_s3_bucket` - [x] Drop Bucket - `drop_s3_bucket` - [x] Has Bucket - `has_s3_bucket` - [x] Show Buckets - `show_s3_buckets` ### Transactions: - [x] Insert Object - `insert_s3_object` - [x] Update Object Metadata - `update_s3_object_metadata` - [x] Update Object Body - `update_s3_object_body` ### Direct Read: - [x] Read Object - `read_s3_object` - [x] Read Object Body - `read_s3_object_body` - [x] Has Object - `has_s3_object` - [x] Show Objects in Bucket - `show_s3_objects` ### Query - [x] Select object content (AWS and localstack-pro ONLY) - [ ] All of Query Object in bucket - [ ] Conditionals https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference-conditional.html - [ ] Cast https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference-conversion.html - [ ] Date Functions https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference-date.html - [ ] String Functions https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference-string.html