Aditya Manthramurthy
903acae66a
feat: allow multiple trust certs in cert file ( #102 )
...
The `.ssl_cert_file()` option now can read files with multiple
certificate to trust. This is useful when using a single client instance
to access many minio servers.
2024-10-28 10:51:13 -07:00
Yao Zongyou
eae650296b
feat: add cargo features for tls options ( #61 )
...
Adds features to switch native-tls, rustls-tls or disable tls at all
2024-10-25 12:09:42 -07:00
vajexal
2ce4fefbc3
Respect content_type prop ( #100 )
2024-10-25 11:59:47 -07:00
Bala FA
b254b2f7ae
SignV4: trim leading/trailing spaces in header value ( #99 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2024-09-12 09:23:41 -07:00
Aditya Manthramurthy
b19513c90f
Unexport unnecessary list functions ( #97 )
...
Unexports `list_objects_v1`, `list_objects_v2` and
`list_object_versions` and associated request/response types.
These are not necessary as the higher level `list_objects()` can be used
instead for equivalent functionality.
2024-06-18 19:54:01 -07:00
Aditya Manthramurthy
1d917a8b7a
Rename some exposed types ( #96 )
2024-06-18 13:55:01 -07:00
Aditya Manthramurthy
b0d31e1126
Apply many clippy fixes ( #95 )
2024-06-18 12:25:26 -07:00
Aditya Manthramurthy
c80e4c42a1
Update http and hyper deps ( #94 )
2024-06-17 15:18:44 -07:00
Aditya Manthramurthy
6f2dd62691
Size should be platform independent and 64 bit. ( #93 )
2024-06-17 12:42:12 -07:00
Shireesh Anjal
6e1af9166f
Make request_parameters optional ( #91 )
...
Some events e.g. s3:Replication:OperationCompletedReplication send
'null' value in request_parameters and the deserialization can fail in
such cases ('deault' doesn't help here)
Marking this field as optional will ensure that such events can also be
deserialized without any error.
2024-06-05 16:30:35 -07:00
Aditya Manthramurthy
af8193aa95
Add metadata and other options for CreateMultipart ( #90 )
...
- Add validation for user-metadata keys.
- Ensure that options are passed to both single part PutObject and
Multipart upload when using the PutObjectContent higher level API.
2024-05-29 18:43:34 -07:00
Bala FA
18c5707a4a
fix range calculation in compose_object API ( #87 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2024-05-29 12:52:33 -07:00
Aditya Manthramurthy
43af36441a
fix: missing URL encoding for object names ( #86 )
...
URL encoding for S3 API requires that we do not encode '/' in addition
to the standard characters (`_-~.` and alphanumerics).
Also fixes a bug in error response parsing (bucket name was not parsed
correctly).
Also adds another put-object example accepting CLI args.
2024-04-26 10:06:27 -07:00
Aditya Manthramurthy
d5a648f03c
Add builder style remove_object(s) APIs ( #85 )
...
- remove older APIs
2024-04-12 18:21:32 -07:00
Aditya Manthramurthy
773ad9133f
Return size info in put/get APIs ( #82 )
...
Also:
- fix some constraints to allow ObjectContent to be sent across async
tasks.
- use new Size enum instead of Option for specifying object content
sizes
- add tests for part size calculation and validations
2024-04-10 07:51:42 -07:00
Kyle Davis
1a36097bb8
Add send and sync traits to dyn SSE ( #83 )
2024-04-09 14:02:28 -07:00
Aditya Manthramurthy
6d8031306e
Add file read/write ability to ObjectContent ( #81 )
2024-04-05 19:39:45 -07:00
Aditya Manthramurthy
220887f171
Fix missing module import ( #80 )
2024-04-02 18:29:52 -07:00
OlalalaO
de434ed179
Fix download file error ( #69 )
...
Fixed the error where the path does not exist when downloading files with paths like 'xxx/xxx/xxx/xxx.xx'.
2024-04-02 18:15:40 -07:00
Aditya Manthramurthy
e1542939b3
Clippy fixes ( #79 )
2024-04-03 06:45:19 +05:30
Aditya Manthramurthy
54b671ef4c
Add new put and get APIs for objects ( #78 )
...
- put_object_content -> streaming object uploads
- put_object_from_file -> upload file
- put_object, create_multipart_uload, abort_multipart_upload,
upload_part, complete_multipart_upload -> S3 APIs for single and
multipart uploads
- get_object -> streaming object downloads
2024-04-03 06:39:54 +05:30
Aditya Manthramurthy
3f160cb6c0
Parse and add tags to list objects output type ( #77 )
2024-04-03 06:36:53 +05:30
Aditya Manthramurthy
c672e7528b
Fix list objects xml parsing bug and improve perf. ( #59 )
...
For list-object-versions there was a bug that would return delete
markers after all versions of an object. The server response contains
the order of versions and delete markers according to recency and the
list objects client call should preserve this. This is fixed in this
change.
XML parsing was using the `take_child` call, that mutates a vector
removing an element in it. For a response containing N items, using
take_child on item, causes the XML parsing cost to be O(N^2) (so 1
million operations for a 1000 item list) - this change makes the parsing
cost linear.
2024-04-03 06:33:37 +05:30
Aditya Manthramurthy
35954da61d
Add builders for bucket methods: ( #76 )
...
- list buckets
- get bucket versioning
2024-04-03 06:29:40 +05:30
Aditya Manthramurthy
6a34d4c677
Add builder for ListenBucketNotification ( #75 )
...
- Also update the types used in NotificationRecords
2024-04-03 06:25:38 +05:30
Aditya Manthramurthy
fc20535f1d
Add builder style for list_objects ( #74 )
...
- Also add `include_user_metadata` option for list object versions
2024-04-03 06:09:40 +05:30
Henk-Jan Lebbink
75ea23aaf1
fix deprecated lifetime; update example file-uploader ( #71 )
...
* fix: deprecated elided_lifetimes_in_associated_constant
* fix warnings
* update: example file-file-uploader
2024-03-15 09:24:44 -07:00
Aditya Manthramurthy
8fb211ae0e
Add streaming APIs for list objects ( #54 )
2023-10-05 09:46:44 +05:30
Aditya Manthramurthy
17a6dead9c
Add streaming support to listen_bucket_notification() API ( #55 )
2023-10-03 22:37:52 +05:30
Aditya Manthramurthy
c63d3f9350
Add doc for list_objects API ( #53 )
2023-09-29 21:52:38 +05:30
Aditya Manthramurthy
8ecabea0d2
fix: Set user agent always ( #52 )
v0.1.0
2023-09-27 21:34:06 +05:30
Aditya Manthramurthy
e9aea2ada6
Add builder style constructor for Client ( #50 )
2023-09-27 06:52:37 +05:30
Aditya Manthramurthy
4958c01f4c
Add FromStr instance to BaseURL ( #51 )
2023-09-27 06:48:07 +05:30
Aditya Manthramurthy
e5f6b16051
Add file-uploader example ( #49 )
...
Also add some basic fields to Cargo.toml to prepare for initial release.
2023-09-26 10:43:05 -07:00
Aditya Manthramurthy
4676ae8a57
Remove lifetime parameter from client ( #48 )
...
This change lets the Client struct take ownership of the Provider trait
object so that we are remove the lifetime parameter from the Client.
This change simplifies usage of the Client object. Without this it is
difficult to pass the Client object to a thread.
2023-09-26 06:41:48 +05:30
Bala FA
526b2a81ab
Add generic AWS S3 domain support ( #39 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2023-09-26 05:58:32 +05:30
Bala FA
1f5ccb3113
fix get_presigned_object_url() API to use host header value ( #47 )
...
Fixes #46
Signed-off-by: Bala.FA <bala@minio.io>
2023-09-26 05:27:36 +05:30
Bala FA
28e7fee8fa
Add documentation and few enhancements ( #45 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2023-09-26 05:16:11 +05:30
Bala FA
aee702f337
Reuse reqwest::Client connection pool ( #44 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2023-09-07 06:21:01 +05:30
Bala FA
bbc7945eb8
Simplify code using clippy ( #38 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2023-09-06 07:52:31 +05:30
Bala FA
f4cadad6ef
list_objects(): fix user metadata as per MinIO server ( #30 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2023-06-04 14:22:11 -07:00
Bala FA
67d92a3427
Add more APIs ( #25 )
...
* {set,get,delete}_bucket_notification
* {set,get,delete}_bucket_policy
* {set,get,delete}_bucket_replication
* {set,get,delete}_bucket_tags
* {set,get,delete}_object_lock_config
* {set,get,delete}_object_tags
* {set,get}_bucket_versioning
* {set,get}_object_retention
* get_presigned_object_url
* get_presigned_post_form_data
* {upload,download}_object
Signed-off-by: Bala.FA <bala@minio.io>
2022-11-30 12:25:36 -08:00
Bala FA
5fea81d68d
Add bucket encryption/lifecycle and object legal-hold APIs. ( #24 )
...
Below APIs are added
* DeleteBucketEncryption()
* GetBucketEncryption()
* SetBucketEncryption()
* DisableObjectLegalHold()
* EnableObjectLegalHold()
* IsObjectLegalHoldEnabled()
* DeleteBucketLifecycle()
* GetBucketLifecycle()
* SetBucketLifecycle()
Signed-off-by: Bala.FA <bala@minio.io>
2022-09-28 06:12:09 +05:30
Bala FA
49452a0b73
list_objects(): fix parsing user metadata as per MinIO server ( #23 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2022-09-23 21:38:06 -07:00
Harshavardhana
4da529a13f
add docs build 'deploy-docs.sh' ( #22 )
2022-09-04 23:53:54 -07:00
Bala FA
c5f8f61bdf
Add compose_object() API ( #20 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2022-09-04 20:11:02 -07:00
Bala FA
c21dda1492
Add listen_bucket_notification() API ( #15 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2022-08-31 08:20:33 -07:00
Harshavardhana
f88c9dd919
add SSL_CERT_FILE support, add into tests ( #18 )
2022-08-24 20:02:23 -07:00
Bala FA
b62b39e7c9
Accept list of items in list_objects() callback. ( #16 )
...
Signed-off-by: Bala.FA <bala@minio.io>
2022-08-24 11:49:28 -07:00
Harshavardhana
1888666d4f
address build issues and also use builder class for Client ( #17 )
2022-08-22 22:30:06 -07:00