Commit Graph

37 Commits

Author SHA1 Message Date
Aditya Manthramurthy
04d1193201
Switch to more performant map data type (#131) 2019-07-24 12:52:18 -07:00
Aditya Manthramurthy
4a807fde56 Add streaming signature for PutObject (#123)
Use streaming signature to avoid reading the body twice in PutObject
requests, where the body can be upto 5GIB.

Note that the body is signed only used when the connection is not
using TLS.
2019-05-16 20:49:38 -07:00
Krishnan Parthasarathi
005c6f8e65 Retry requests that timeout using full-jitter backoff (#119) 2019-05-10 15:41:08 -07:00
ebozduman
af3b75e29e MinIO & min.io replaces Minio & minio.io respectively (#114) 2019-04-13 00:25:25 +05:30
Krishnan Parthasarathi
44bbd66719 Improve initializing ConnectInfo (#101)
- Remove ConnectInfo's Default instance
- Add support for reading from well-known credential files and
  environment variables
2018-06-29 18:28:17 -07:00
Krishnan Parthasarathi
952c0b0342 Add getServerInfo admin API (#91)
- Add Admin API helper functions like buildAdminRequest
2018-05-31 18:06:24 -07:00
Krishnan Parthasarathi
a946dfd305 Make signature V4 independent of S3ReqInfo (#88)
- Rename RequestInfo to S3ReqInfo
2018-05-30 13:50:15 -07:00
Aditya Manthramurthy
d25c7ef1dc Drop dependency on exceptions lib (#87) 2018-05-14 06:48:07 +05:30
Aditya Manthramurthy
522d49452f Remove dependency on text-format lib and fix bucket policy test (#86) 2018-05-11 17:48:34 -07:00
Aditya Manthramurthy
51b3e51d46
Switch to unliftio and lts-11.1 (#83)
- Also add .stylish-haskell.yaml
- Re-implements `limitedMapConcurrently` using STM
- Dependencies clean up in cabal file
- Fix shadow warnings and other build warnings
2018-03-26 14:04:25 -07:00
Harshavardhana
df5cf20fce For secure connection do not compute sha256 (#65) 2017-10-13 14:43:26 -07:00
Aditya Manthramurthy
02170778da Add presigned operations APIs (#56)
This change adds 3 functions to main API: presignedGetObjectURL,
presignedPutObjectURL and presignedHeadObjectURL.

A fourth more generic API is added to `Network.Minio.S3API` -
makePresignedURL.

Additionally, refactors signing code for readability and the ability
to reuse for pre-signing.
2017-09-08 10:39:07 -05:00
Aditya Manthramurthy
e8a75a8fdb Add bucket and object name validation (#45) 2017-03-28 16:27:23 +05:30
Krishnan Parthasarathi
9358d28d3b Fix hlint warnings and suggestions (#44) 2017-03-25 15:56:51 +05:30
Krishnan Parthasarathi
b333ed6345 Make MinioErr flatter and make examples work. (#25) 2017-03-09 16:51:56 +05:30
Krishnan Parthasarathi
9001f81813 Add port to host header for signing. (#24)
* Add port to host header for signing.

* Use endpoint corresponding to region for AWS S3
2017-03-03 21:16:47 +05:30
Krishnan Parthasarathi
7be42dd011 Add copyright header to all source files. (#20) 2017-03-02 16:01:59 +05:30
Krishnan Parthasarathi
abdc9fe320 Use bucket region cache to minimize getLocation requests (#3) 2017-02-25 16:42:23 +05:30
Aditya Manthramurthy
3c92dc92c6 Improve some haddock; improve getObject interface. 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
a12fa8a077 Align imports 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
e2a99530be use Default instance for ConnectInfo 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
82262ee695 Eliminate requestInfo function and use default instances 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
6db483c2bc Fix some warnings 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
8be4f0a06f Add MonadBaseControl IO instance and catch HttpException 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
ca3276cd87 Basic putObject is working:
- This is single PUT action - so only files up to 5GB.
- Buffers in memory because chunked singature is not yet implemented.
- fPutObject is simply wired to putObject (so does not yet work for
  multipart uploads
2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
a7e70b9031 Refactor error handling and fix most warnings 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
c9f6d666db Refactor request builder and Payload type 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
1ad670a328 Fix shadowing warnings 2017-02-13 16:03:42 +05:30
Krishnan Parthasarathi
45d5f9e676 Move region to RequestInfo
Region is a request specific attribute, mostly applies to bucket
operations.
2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
73a88143d5 GetObject s3api and fGetObject api
- Also updates to lts 6.27 (to be able to use sinkFileCautious)
2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
fe1dfe24d6 Reorganize api 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
00e9198e60 Implement getService and getLocation 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
9d6ec0f6e5 more progress 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
fb6bf1a9cb working program - with minio monad 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
07eb59fda5 Add Minio monad and start getService 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
4569348dc2 Signing works! But includes lots of debug stmts. 2017-02-13 16:03:42 +05:30
Aditya Manthramurthy
5ce595bc6f Compiling but without signing working properly yet 2017-02-13 16:03:42 +05:30