git.iko.soy/typeable/swagger2
on master help sign in
Correct recently introduced warnings
814a86eOleg Grenrus
src/Data/Swagger/Internal/ParamSchema.hs+5−3
@@ -15,6 +15,8 @@
15#if __GLASGOW_HASKELL__ >= 800
15#if __GLASGOW_HASKELL__ >= 800
16-- Generic a is redundant in ToParamSchema a default imple
16-- Generic a is redundant in ToParamSchema a default imple
17{-# OPTIONS_GHC -Wno-redundant-constraints #-}
17{-# OPTIONS_GHC -Wno-redundant-constraints #-}
18+-- For TypeErrors
19+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}
18#endif
20#endif
19#include "overlapping-compat.h"
21#include "overlapping-compat.h"
20module Data.Swagger.Internal.ParamSchema where
22module Data.Swagger.Internal.ParamSchema where
@@ -207,9 +209,9 @@ instance ToParamSchema TL.Text where
207#else
209#else
208type family ToParamSchemaByteStringError bs where
210type family ToParamSchemaByteStringError bs where
209 ToParamSchemaByteStringError bs = TypeError
211 ToParamSchemaByteStringError bs = TypeError
210− ( Text "Impossible to have an instance " :<>: ShowType (ToParamSchema bs) :<>: Text "."
212+ ( 'Text "Impossible to have an instance " :<>: ShowType (ToParamSchema bs) :<>: Text "."
211− :$$: Text "Please, use a newtype wrapper around " :<>: ShowType bs :<>: Text " instead."
213+ :$$: 'Text "Please, use a newtype wrapper around " :<>: ShowType bs :<>: Text " instead."
212− :$$: Text "Consider using byteParamSchema or binaryParamSchema templates." )
214+ :$$: 'Text "Consider using byteParamSchema or binaryParamSchema templates." )
213
215
214instance ToParamSchemaByteStringError BS.ByteString => ToParamSchema BS.ByteString where toParamSchema = error "impossible"
216instance ToParamSchemaByteStringError BS.ByteString => ToParamSchema BS.ByteString where toParamSchema = error "impossible"
215instance ToParamSchemaByteStringError BSL.ByteString => ToParamSchema BSL.ByteString where toParamSchema = error "impossible"
217instance ToParamSchemaByteStringError BSL.ByteString => ToParamSchema BSL.ByteString where toParamSchema = error "impossible"
src/Data/Swagger/Internal/Schema.hs+2
@@ -17,6 +17,8 @@
17#if __GLASGOW_HASKELL__ >= 800
17#if __GLASGOW_HASKELL__ >= 800
18-- Few generics related redundant constraints
18-- Few generics related redundant constraints
19{-# OPTIONS_GHC -Wno-redundant-constraints #-}
19{-# OPTIONS_GHC -Wno-redundant-constraints #-}
20+-- For TypeErrors
21+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}
20#endif
22#endif
21#include "overlapping-compat.h"
23#include "overlapping-compat.h"
22module Data.Swagger.Internal.Schema where
24module Data.Swagger.Internal.Schema where
stack-lts-2.yaml+5
@@ -9,9 +9,14 @@ extra-deps:
9- generics-sop-0.2.1.0
9- generics-sop-0.2.1.0
10- insert-ordered-containers-0.1.0.1
10- insert-ordered-containers-0.1.0.1
11- primitive-0.6.1.0
11- primitive-0.6.1.0
12+- QuickCheck-2.8.2
12- tagged-0.8.4
13- tagged-0.8.4
13- unordered-containers-0.2.7.0
14- unordered-containers-0.2.7.0
14resolver: lts-2.22
15resolver: lts-2.22
15flags:
16flags:
16 aeson:
17 aeson:
17 old-locale: true
18 old-locale: true
19+ QuickCheck:
20+ base3: false
21+ base4: true
22+ base4point8: false
swagger2.cabal+1−1
@@ -77,7 +77,7 @@ test-suite spec
77 , insert-ordered-containers
77 , insert-ordered-containers
78 , HUnit
78 , HUnit
79 , mtl
79 , mtl
80− , QuickCheck
80+ , QuickCheck >=2.8.2
81 , swagger2
81 , swagger2
82 , text
82 , text
83 , time
83 , time
test/Data/Swagger/ParamSchemaSpec.hs+1−1
@@ -18,7 +18,7 @@ import SpecCommon
18import Test.Hspec
18import Test.Hspec
19
19
20checkToParamSchema :: ToParamSchema a => Proxy a -> Value -> Spec
20checkToParamSchema :: ToParamSchema a => Proxy a -> Value -> Spec
21−checkToParamSchema proxy js = (toParamSchema proxy :: ParamSchema (SwaggerKindNormal Param)) <=> js
21+checkToParamSchema proxy js = (toParamSchema proxy :: ParamSchema ('SwaggerKindNormal Param)) <=> js
22
22
23spec :: Spec
23spec :: Spec
24spec = do
24spec = do
test/Data/Swagger/Schema/ValidationSpec.hs+1−19
@@ -1,6 +1,7 @@
1{-# LANGUAGE CPP #-}
1{-# LANGUAGE CPP #-}
2{-# LANGUAGE DeriveGeneric #-}
2{-# LANGUAGE DeriveGeneric #-}
3{-# LANGUAGE PackageImports #-}
3{-# LANGUAGE PackageImports #-}
4+{-# OPTIONS_GHC -fno-warn-orphans #-}
4module Data.Swagger.Schema.ValidationSpec where
5module Data.Swagger.Schema.ValidationSpec where
5
6
6import Control.Applicative
7import Control.Applicative
@@ -8,29 +9,22 @@ import Data.Aeson
8import Data.Aeson.Types
9import Data.Aeson.Types
9import Data.Int
10import Data.Int
10import Data.IntMap (IntMap)
11import Data.IntMap (IntMap)
11−import qualified Data.IntMap as IntMap
12−import Data.IntSet (IntSet)
13import Data.Hashable (Hashable)
12import Data.Hashable (Hashable)
14import "unordered-containers" Data.HashSet (HashSet)
13import "unordered-containers" Data.HashSet (HashSet)
15import qualified "unordered-containers" Data.HashSet as HashSet
14import qualified "unordered-containers" Data.HashSet as HashSet
16import Data.HashMap.Strict (HashMap)
15import Data.HashMap.Strict (HashMap)
17import qualified Data.HashMap.Strict as HashMap
16import qualified Data.HashMap.Strict as HashMap
18import Data.Map (Map)
17import Data.Map (Map)
19−import qualified Data.Map as Map
20import Data.Proxy
18import Data.Proxy
21import Data.Time
19import Data.Time
22import qualified Data.Text as T
20import qualified Data.Text as T
23import qualified Data.Text.Lazy as TL
21import qualified Data.Text.Lazy as TL
24import Data.Set (Set)
22import Data.Set (Set)
25−import qualified Data.Set as Set
26import Data.Word
23import Data.Word
27import GHC.Generics
24import GHC.Generics
28
25
29import Data.Swagger
26import Data.Swagger
30−import Data.Swagger.Declare
31−import Data.Swagger.Schema.Validation
32
27
33−import SpecCommon
34import Test.Hspec
28import Test.Hspec
35import Test.Hspec.QuickCheck
29import Test.Hspec.QuickCheck
36import Test.QuickCheck
30import Test.QuickCheck
@@ -168,18 +162,6 @@ instance Arbitrary Light where
168
162
169-- Arbitrary instances for common types
163-- Arbitrary instances for common types
170
164
171−#if MIN_VERSION_QuickCheck(2,8,2)
172−#else
173−instance (Ord k, Arbitrary k, Arbitrary v) => Arbitrary (Map k v) where
174− arbitrary = Map.fromList <$> arbitrary
175−
176−instance Arbitrary a => Arbitrary (IntMap a) where
177− arbitrary = IntMap.fromList <$> arbitrary
178−
179−instance (Ord a, Arbitrary a) => Arbitrary (Set a) where
180− arbitrary = Set.fromList <$> arbitrary
181−#endif
182−
183instance (Eq k, Hashable k, Arbitrary k, Arbitrary v) => Arbitrary (HashMap k v) where
165instance (Eq k, Hashable k, Arbitrary k, Arbitrary v) => Arbitrary (HashMap k v) where
184 arbitrary = HashMap.fromList <$> arbitrary
166 arbitrary = HashMap.fromList <$> arbitrary
185
167
test/Data/Swagger/SchemaSpec.hs−2
@@ -11,11 +11,9 @@ import Control.Lens ((^.))
11import Data.Aeson
11import Data.Aeson
12import Data.Aeson.QQ
12import Data.Aeson.QQ
13import Data.Char
13import Data.Char
14−import qualified Data.HashMap.Strict as HashMap
15import qualified Data.HashMap.Strict.InsOrd as InsOrdHashMap
14import qualified Data.HashMap.Strict.InsOrd as InsOrdHashMap
16import Data.Proxy
15import Data.Proxy
17import Data.Set (Set)
16import Data.Set (Set)
18−import qualified Data.Set as Set
19import qualified Data.Text as Text
17import qualified Data.Text as Text
20import GHC.Generics
18import GHC.Generics
21
19