From 4e0635cab35056dc4db4a591385534c64bbb0f7e Mon Sep 17 00:00:00 2001 From: Aditya Manthramurthy Date: Wed, 18 Jan 2017 15:54:53 +0530 Subject: [PATCH] Add support for ghc 8 - build with "STACK_YAML=stack-ghc-8.0.1.yaml stack install" --- src/Network/Minio/Data.hs | 6 +-- src/Network/Minio/S3API.hs | 2 +- src/Network/Minio/XmlGenerator.hs | 2 +- stack-ghc-8.0.1.yaml | 66 +++++++++++++++++++++++++++++++ 4 files changed, 71 insertions(+), 5 deletions(-) create mode 100644 stack-ghc-8.0.1.yaml diff --git a/src/Network/Minio/Data.hs b/src/Network/Minio/Data.hs index 51ea643..a49e873 100644 --- a/src/Network/Minio/Data.hs +++ b/src/Network/Minio/Data.hs @@ -5,7 +5,7 @@ module Network.Minio.Data , MinioConn(..) , Bucket , Object - , Location + , Region , BucketInfo(..) , getPathFromRI , getRegionFromRI @@ -57,7 +57,7 @@ type Object = Text -- | -- Represents a region -- TODO: This could be a Sum Type with all defined regions for AWS. -type Location = Text +type Region = Text -- | -- BucketInfo returned for list buckets call @@ -82,7 +82,7 @@ data RequestInfo = RequestInfo { , riHeaders :: [Header] , riPayload :: Payload , riPayloadHash :: ByteString - , riRegion :: Maybe Location + , riRegion :: Maybe Region } instance Default RequestInfo where diff --git a/src/Network/Minio/S3API.hs b/src/Network/Minio/S3API.hs index 280dd9d..3fdfefb 100644 --- a/src/Network/Minio/S3API.hs +++ b/src/Network/Minio/S3API.hs @@ -49,7 +49,7 @@ getObject bucket object queryParams headers = do , riHeaders = headers} -- | Creates a bucket via a PUT bucket call. -putBucket :: Bucket -> Location -> Minio () +putBucket :: Bucket -> Region -> Minio () putBucket bucket location = do void $ executeRequest $ def { riMethod = HT.methodPut diff --git a/src/Network/Minio/XmlGenerator.hs b/src/Network/Minio/XmlGenerator.hs index 7a69efa..60441fa 100644 --- a/src/Network/Minio/XmlGenerator.hs +++ b/src/Network/Minio/XmlGenerator.hs @@ -11,7 +11,7 @@ import qualified Data.Map as M import Network.Minio.Data -mkCreateBucketConfig :: Location -> ByteString +mkCreateBucketConfig :: Region -> ByteString mkCreateBucketConfig location = LBS.toStrict $ renderLBS def bucketConfig where s3Element n = Element (s3Name n) M.empty diff --git a/stack-ghc-8.0.1.yaml b/stack-ghc-8.0.1.yaml new file mode 100644 index 0000000..a57aa10 --- /dev/null +++ b/stack-ghc-8.0.1.yaml @@ -0,0 +1,66 @@ +# This file was automatically generated by 'stack init' +# +# Some commonly used options have been documented as comments in this file. +# For advanced use and comprehensive documentation of the format, please see: +# http://docs.haskellstack.org/en/stable/yaml_configuration/ + +# Resolver to choose a 'specific' stackage snapshot or a compiler version. +# A snapshot resolver dictates the compiler version and the set of packages +# to be used for project dependencies. For example: +# +# resolver: lts-3.5 +# resolver: nightly-2015-09-21 +# resolver: ghc-7.10.2 +# resolver: ghcjs-0.1.0_ghc-7.10.2 +# resolver: +# name: custom-snapshot +# location: "./custom-snapshot.yaml" +resolver: lts-7.16 + +# User packages to be built. +# Various formats can be used as shown in the example below. +# +# packages: +# - some-directory +# - https://example.com/foo/bar/baz-0.0.2.tar.gz +# - location: +# git: https://github.com/commercialhaskell/stack.git +# commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a +# - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a +# extra-dep: true +# subdirs: +# - auto-update +# - wai +# +# A package marked 'extra-dep: true' will only be built if demanded by a +# non-dependency (i.e. a user package), and its test suites and benchmarks +# will not be run. This is useful for tweaking upstream packages. +packages: +- '.' +# Dependency packages to be pulled from upstream that are not in the resolver +# (e.g., acme-missiles-0.3) +extra-deps: [] + +# Override default flag values for local packages and extra-deps +flags: {} + +# Extra package databases containing global packages +extra-package-dbs: [] + +# Control whether we use the GHC we find on the path +# system-ghc: true +# +# Require a specific version of stack, using version ranges +# require-stack-version: -any # Default +# require-stack-version: ">=1.1" +# +# Override the architecture used by stack, especially useful on Windows +# arch: i386 +# arch: x86_64 +# +# Extra directories used by stack for building +# extra-include-dirs: [/path/to/dir] +# extra-lib-dirs: [/path/to/dir] +# +# Allow a newer minor version of GHC than the snapshot specifies +# compiler-check: newer-minor