git.iko.soy/typeable/swagger2
on master help sign in
Correct recently introduced warnings
commit814a86e0498f74d90e8c36f304987ae376fecacf authorOleg Grenrus <oleg.grenrus@iki.fi> dateSun 2 Oct 2016, 09:04 (10 years ago) parentb3a2338
7 files changed+15−26
src/Data/Swagger/Internal/ParamSchema.hs+5−3 src/Data/Swagger/Internal/Schema.hs+2 stack-lts-2.yaml+5 swagger2.cabal+1−1 test/Data/Swagger/ParamSchemaSpec.hs+1−1 test/Data/Swagger/Schema/ValidationSpec.hs+1−19 test/Data/Swagger/SchemaSpec.hs−2
src/Data/Swagger/Internal/ParamSchema.hs+5−3
@@ -15,6 +15,8 @@
1515#if __GLASGOW_HASKELL__ >= 800
1616-- Generic a is redundant in ToParamSchema a default imple
1717{-# OPTIONS_GHC -Wno-redundant-constraints #-}
18+-- For TypeErrors
19+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}
1820#endif
1921#include "overlapping-compat.h"
2022module Data.Swagger.Internal.ParamSchema where
@@ -207,9 +209,9 @@ instance ToParamSchema TL.Text where
207209#else
208210type family ToParamSchemaByteStringError bs where
209211 ToParamSchemaByteStringError bs = TypeError
210− ( Text "Impossible to have an instance " :<>: ShowType (ToParamSchema bs) :<>: Text "."
211− :$$: Text "Please, use a newtype wrapper around " :<>: ShowType bs :<>: Text " instead."
212− :$$: Text "Consider using byteParamSchema or binaryParamSchema templates." )
212+ ( 'Text "Impossible to have an instance " :<>: ShowType (ToParamSchema bs) :<>: Text "."
213+ :$$: 'Text "Please, use a newtype wrapper around " :<>: ShowType bs :<>: Text " instead."
214+ :$$: 'Text "Consider using byteParamSchema or binaryParamSchema templates." )
213215
214216instance ToParamSchemaByteStringError BS.ByteString => ToParamSchema BS.ByteString where toParamSchema = error "impossible"
215217instance ToParamSchemaByteStringError BSL.ByteString => ToParamSchema BSL.ByteString where toParamSchema = error "impossible"
src/Data/Swagger/Internal/Schema.hs+2
@@ -17,6 +17,8 @@
1717#if __GLASGOW_HASKELL__ >= 800
1818-- Few generics related redundant constraints
1919{-# OPTIONS_GHC -Wno-redundant-constraints #-}
20+-- For TypeErrors
21+{-# OPTIONS_GHC -Wno-unticked-promoted-constructors #-}
2022#endif
2123#include "overlapping-compat.h"
2224module Data.Swagger.Internal.Schema where
stack-lts-2.yaml+5
@@ -9,9 +9,14 @@ extra-deps:
99- generics-sop-0.2.1.0
1010- insert-ordered-containers-0.1.0.1
1111- primitive-0.6.1.0
12+- QuickCheck-2.8.2
1213- tagged-0.8.4
1314- unordered-containers-0.2.7.0
1415resolver: lts-2.22
1516flags:
1617 aeson:
1718 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
7777 , insert-ordered-containers
7878 , HUnit
7979 , mtl
80− , QuickCheck
80+ , QuickCheck >=2.8.2
8181 , swagger2
8282 , text
8383 , time
test/Data/Swagger/ParamSchemaSpec.hs+1−1
@@ -18,7 +18,7 @@ import SpecCommon
1818import Test.Hspec
1919
2020checkToParamSchema :: 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
2222
2323spec :: Spec
2424spec = do
test/Data/Swagger/Schema/ValidationSpec.hs+1−19
@@ -1,6 +1,7 @@
11{-# LANGUAGE CPP #-}
22{-# LANGUAGE DeriveGeneric #-}
33{-# LANGUAGE PackageImports #-}
4+{-# OPTIONS_GHC -fno-warn-orphans #-}
45module Data.Swagger.Schema.ValidationSpec where
56
67import Control.Applicative
@@ -8,29 +9,22 @@ import Data.Aeson
89import Data.Aeson.Types
910import Data.Int
1011import Data.IntMap (IntMap)
11−import qualified Data.IntMap as IntMap
12−import Data.IntSet (IntSet)
1312import Data.Hashable (Hashable)
1413import "unordered-containers" Data.HashSet (HashSet)
1514import qualified "unordered-containers" Data.HashSet as HashSet
1615import Data.HashMap.Strict (HashMap)
1716import qualified Data.HashMap.Strict as HashMap
1817import Data.Map (Map)
19−import qualified Data.Map as Map
2018import Data.Proxy
2119import Data.Time
2220import qualified Data.Text as T
2321import qualified Data.Text.Lazy as TL
2422import Data.Set (Set)
25−import qualified Data.Set as Set
2623import Data.Word
2724import GHC.Generics
2825
2926import Data.Swagger
30−import Data.Swagger.Declare
31−import Data.Swagger.Schema.Validation
3227
33−import SpecCommon
3428import Test.Hspec
3529import Test.Hspec.QuickCheck
3630import Test.QuickCheck
@@ -168,18 +162,6 @@ instance Arbitrary Light where
168162
169163-- Arbitrary instances for common types
170164
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−
183165instance (Eq k, Hashable k, Arbitrary k, Arbitrary v) => Arbitrary (HashMap k v) where
184166 arbitrary = HashMap.fromList <$> arbitrary
185167
test/Data/Swagger/SchemaSpec.hs−2
@@ -11,11 +11,9 @@ import Control.Lens ((^.))
1111import Data.Aeson
1212import Data.Aeson.QQ
1313import Data.Char
14−import qualified Data.HashMap.Strict as HashMap
1514import qualified Data.HashMap.Strict.InsOrd as InsOrdHashMap
1615import Data.Proxy
1716import Data.Set (Set)
18−import qualified Data.Set as Set
1917import qualified Data.Text as Text
2018import GHC.Generics
2119